:root{--lvl-low-bg:#e3f2ec;--lvl-low-ink:#116353;--lvl-mod-bg:#f2a65a33;--lvl-mod-ink:#96591b;--lvl-high-bg:#c44a2e21;--lvl-high-ink:#b3492b}@media (prefers-color-scheme:dark){:root{--lvl-low-bg:#2ba88e2e;--lvl-low-ink:#5fc9b0;--lvl-mod-bg:#f2a65a29;--lvl-mod-ink:#f2a65a;--lvl-high-bg:#e07a5f29;--lvl-high-ink:#e58a6f}}.tool-page{max-width:var(--page-max);padding:clamp(16px, 3vw, 40px) var(--page-gutter) clamp(72px, 9vw, 120px);margin:0 auto}.crumbs{color:var(--ink-3);margin-bottom:clamp(20px,3vw,32px);font-size:.9rem}.crumbs a{color:var(--ink-2);text-decoration:none}.crumbs a:hover{color:var(--primary)}.eyebrow{font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase;color:var(--primary);background:var(--primary-soft);border-radius:999px;margin-bottom:16px;padding:5px 14px;font-size:.8rem;font-weight:800;display:inline-block}.tool-head{max-width:720px;margin-bottom:clamp(32px,5vw,52px)}.tool-head h1{margin-bottom:16px;font-size:clamp(2.1rem,4vw,3.1rem);font-weight:800;line-height:1.08}.tool-head .sub{margin-bottom:0}.tool-section{margin-top:clamp(56px,8vw,88px)}.tool-section>h2{margin-bottom:18px;font-size:clamp(1.5rem,2.6vw,2rem);font-weight:800}.tool-section>.sub{margin-bottom:26px}.tool-grid{grid-template-columns:repeat(2,1fr);gap:22px;display:grid}.tool-grid.trio{grid-template-columns:repeat(3,1fr)}.tool-card{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-card);color:var(--ink);border-radius:24px;padding:28px;text-decoration:none;transition:transform .25s cubic-bezier(.16,1,.3,1),box-shadow .25s;display:block}.tool-card:hover{transform:translateY(-3px)}.tool-card:active{transform:translateY(0)scale(.99)}.tool-icon{background:var(--primary-soft);width:46px;height:46px;color:var(--primary);border-radius:14px;place-items:center;margin-bottom:16px;display:grid}.tool-icon svg{width:22px;height:22px}.tool-card h2,.tool-card h3{margin-bottom:8px;font-size:1.18rem;font-weight:800}.tool-card p{color:var(--ink-2);margin-bottom:14px;font-size:.98rem}.tool-card .go{font-family:var(--font-display);color:var(--primary);font-size:.95rem;font-weight:700}.tool-cta{background:var(--primary-soft);border-radius:24px;align-items:center;gap:clamp(18px,3vw,32px);margin-bottom:clamp(32px,5vw,52px);padding:clamp(24px,4vw,36px);display:flex}.tool-cta img{flex:none;width:clamp(84px,9vw,110px);height:auto}.tool-cta .tool-cta-title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--ink);margin-bottom:8px;font-size:clamp(1.3rem,2.2vw,1.7rem);font-weight:800;line-height:1.2}.tool-cta p{color:var(--ink-2);max-width:44em;margin-bottom:16px}.faq details{background:var(--surface);border:1px solid var(--border);border-radius:18px;margin-bottom:12px;padding:18px 22px}.faq summary{font-family:var(--font-display);cursor:pointer;justify-content:space-between;align-items:center;gap:12px;font-size:1.05rem;font-weight:700;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";color:var(--primary);flex:none;font-size:1.3rem;font-weight:700}.faq details[open] summary:after{content:"–"}.faq details p{color:var(--ink-2);max-width:60em;padding-top:12px}.faq details p+p{padding-top:8px}.tool-note{color:var(--ink-3);max-width:52em;margin-top:26px;font-size:.85rem}.toolbar{z-index:5;background:var(--bg);margin-bottom:6px;padding:14px 0;position:sticky;top:0}.search{width:100%;font:inherit;color:var(--ink);background:var(--surface);border:1.5px solid var(--border);box-shadow:var(--shadow-card);border-radius:999px;padding:.85em 1.4em;font-size:1.05rem}.search:focus{outline:3px solid var(--primary);outline-offset:2px}.search::placeholder{color:var(--ink-3)}.chips{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.chip{font-family:var(--font-display);color:var(--ink-2);background:var(--surface);border:1.5px solid var(--border);cursor:pointer;border-radius:999px;padding:.45em 1em;font-size:.9rem;font-weight:700;transition:transform .2s cubic-bezier(.16,1,.3,1)}.chip:active{transform:scale(.96)}.chip[aria-pressed=true]{background:var(--primary);border-color:var(--primary);color:var(--primary-ink)}.count{color:var(--ink-3);margin-top:12px;font-size:.9rem}.legend{color:var(--ink-2);flex-wrap:wrap;align-items:center;gap:10px 18px;margin:18px 0 8px;font-size:.92rem;display:flex}.food-cats h2{margin:clamp(32px,5vw,44px) 0 16px;font-size:1.35rem;font-weight:800}.food-list{grid-template-columns:repeat(2,1fr);gap:14px;list-style:none;display:grid}.food{background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:16px 18px}.food-row{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.food b{font-family:var(--font-display);font-size:1.02rem;font-weight:700}.lvl{font-family:var(--font-display);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;border-radius:999px;flex:none;padding:3px 11px;font-size:.76rem;font-weight:800}.lvl-low{background:var(--lvl-low-bg);color:var(--lvl-low-ink)}.lvl-moderate{background:var(--lvl-mod-bg);color:var(--lvl-mod-ink)}.lvl-high{background:var(--lvl-high-bg);color:var(--lvl-high-ink)}.grp{color:var(--ink-3);margin-top:2px;font-size:.84rem;display:block}.food-note{color:var(--ink-2);margin-top:8px;font-size:.92rem}.empty{background:var(--accent-soft);color:var(--ink-2);border-radius:18px;margin-top:24px;padding:24px}.quiz-shell{max-width:640px}.q-progress{background:var(--primary-soft);border-radius:999px;height:8px;margin-bottom:26px;overflow:hidden}.q-progress i{background:var(--primary);border-radius:999px;width:0%;height:100%;transition:width .4s cubic-bezier(.16,1,.3,1);display:block}.q-card{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-card);border-radius:24px;margin-bottom:18px;padding:clamp(24px,4vw,34px)}.q-step{font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);margin-bottom:10px;font-size:.82rem;font-weight:800}.q-title{outline:none;margin-bottom:6px;font-size:1.35rem;font-weight:800}.q-hint{color:var(--ink-3);margin-bottom:18px;font-size:.92rem}.q-opts{gap:10px;margin-top:18px;display:grid}.q-opt{font:inherit;text-align:left;color:var(--ink);background:var(--bg);border:1.5px solid var(--border);cursor:pointer;border-radius:16px;padding:14px 18px;font-size:1rem;transition:transform .2s cubic-bezier(.16,1,.3,1),border-color .2s,background .2s}.q-opt:hover{border-color:var(--primary)}.q-opt:active{transform:scale(.985)}.q-opt.picked{background:var(--primary-soft);border-color:var(--primary);font-weight:600}.q-back{font:inherit;color:var(--ink-3);cursor:pointer;background:0 0;border:none;padding:4px 2px;font-size:.95rem;font-weight:600}.q-back:hover{color:var(--primary)}.quiz-results h2{margin-bottom:10px;font-size:clamp(1.6rem,3vw,2.2rem);font-weight:800}.result-card{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-card);border-radius:24px;margin-top:18px;padding:clamp(22px,3.5vw,30px)}.result-card.first{border:2px solid var(--primary)}.result-rank{font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;background:var(--primary);color:var(--primary-ink);border-radius:999px;margin-bottom:12px;padding:4px 12px;font-size:.78rem;font-weight:800;display:inline-block}.result-card.later .result-rank{background:var(--accent-soft);color:var(--lvl-mod-ink)}.result-card h3{margin-bottom:6px;font-size:1.3rem;font-weight:800}.result-card .result-what{color:var(--ink-2);margin-bottom:14px}.result-why{color:var(--ink-2);background:var(--bg);border-radius:14px;margin-bottom:16px;padding:12px 16px;font-size:.95rem}.result-why b{font-family:var(--font-display)}.plan-list{gap:10px;list-style:none;display:grid}.plan-list li{color:var(--ink-2);padding-left:26px;position:relative}.plan-list li:before{content:"✓";color:var(--primary);font-weight:800;position:absolute;top:0;left:0}.result-links{margin-top:16px;font-size:.95rem}.quiz-honest{background:var(--accent-soft);border-radius:24px;margin-top:26px;padding:clamp(22px,3.5vw,30px)}.quiz-honest h3{margin-bottom:8px;font-size:1.15rem;font-weight:800}.quiz-honest p{color:var(--ink-2)}.swap-grid{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.swap-cats h2{margin:clamp(32px,5vw,44px) 0 16px;font-size:1.35rem;font-weight:800}.swap-card{background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:20px 22px}.swap-card h3{margin-bottom:4px;font-size:1.05rem;font-weight:700}.swap-card h3 .lvl{vertical-align:middle;margin-left:8px}.swap-why{color:var(--ink-3);margin-bottom:12px;font-size:.88rem}.swap-chips{flex-wrap:wrap;gap:8px;display:flex}.schip{background:var(--primary-soft);color:var(--lvl-low-ink);border-radius:999px;padding:5px 13px;font-size:.9rem;font-weight:600}.swap-tip{color:var(--ink-2);margin-top:12px;font-size:.92rem}.swap-tip b{font-family:var(--font-display)}.diary-actions{flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:10px;display:flex}.diary-steps{counter-reset:step;gap:12px;max-width:640px;margin:22px 0;list-style:none;display:grid}.diary-steps li{color:var(--ink-2);padding-left:42px;position:relative}.diary-steps li:before{counter-increment:step;content:counter(step);background:var(--primary-soft);width:28px;height:28px;color:var(--primary);font-family:var(--font-display);border-radius:999px;place-items:center;font-size:.9rem;font-weight:800;display:grid;position:absolute;top:0;left:0}.diary-legend{background:var(--surface);border:1px solid var(--border);color:var(--ink-2);border-radius:18px;margin:26px 0;padding:18px 22px;font-size:.95rem}.diary-legend b{font-family:var(--font-display)}.day{break-inside:avoid;margin-top:26px}.day h3{margin-bottom:10px;font-size:1.15rem;font-weight:800}.day-date{color:var(--ink-3);font-size:.92rem;font-weight:600}.day table{border-collapse:collapse;background:var(--surface);border:1px solid var(--border);border-radius:18px;width:100%;font-size:.92rem;overflow:hidden}.day th,.day td{border:1px solid var(--border);text-align:left;vertical-align:top;padding:10px 12px}.day thead th{font-family:var(--font-display);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3);background:var(--bg);font-size:.8rem;font-weight:800}.day tbody th{color:var(--ink-2);white-space:nowrap;width:14%;font-weight:700}.day td.ate{width:40%;height:52px}.day td.feel{width:22%;color:var(--ink-2);white-space:nowrap}.day td.feel span{display:block}.day tr.extras td{color:var(--ink-3);font-size:.88rem}@media print{.diary{color:#000;background:#fff;font-size:12px}.diary .nav,.diary footer,.diary .crumbs,.diary .eyebrow,.diary .diary-actions,.diary .diary-steps,.diary .tool-cta,.diary .faq,.diary .tool-section,.diary .tool-note,.diary .tool-head .sub{display:none!important}.diary .tool-page{max-width:none;padding:0}.diary .tool-head{margin-bottom:8px}.diary .tool-head h1{color:#000;margin-bottom:0;font-size:18px}.diary .diary-legend{color:#000;border:1px solid #000;border-radius:0;margin:8px 0;padding:8px 10px;font-size:10px}.diary .day{margin-top:10px}.diary .day h3{color:#000;margin-bottom:4px;font-size:12px}.diary .day-date{color:#000}.diary .day table{box-shadow:none;border-color:#000;border-radius:0;font-size:10px}.diary .day th,.diary .day td{color:#000;background:#fff;border-color:#000;padding:5px 7px}.diary .day td.ate{height:38px}}@media (max-width:900px){.tool-grid,.tool-grid.trio,.swap-grid,.food-list{grid-template-columns:1fr}.tool-cta{text-align:center;flex-direction:column;align-items:center}}
