[hidden]{display:none!important}.tool-page{padding-block:20px 72px;max-width:800px}.tool-crumbs{font-size:14px;color:var(--muted);margin-bottom:20px;display:flex;flex-wrap:wrap;align-items:center;gap:6px}.tool-crumbs a{color:var(--sage);font-weight:600}.tool-crumbs a:hover{color:var(--pink-dark)}.tool-crumbs span[aria-hidden]{color:var(--muted);opacity:.7}.tool-head{margin-bottom:26px}.tool-kind{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--sage);background:var(--soft-sage);padding:6px 13px;border-radius:999px;margin-bottom:14px}.tool-kind svg{width:15px;height:15px}.tool-head h1{font-family:var(--serif);font-size:clamp(29px,4.6vw,44px);line-height:1.12;color:var(--heading);margin:0 0 14px;letter-spacing:-.01em}.tool-lead{font-size:clamp(17px,2vw,19px);line-height:1.62;color:var(--body);margin:0;max-width:62ch}.tool-card{background:var(--surface);border-radius:24px;box-shadow:var(--shadow-md);padding:clamp(20px,3.4vw,32px);position:relative;overflow:hidden}.tool-card:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,var(--pink) 0%,#f7a8c8 50%,var(--sage-light) 100%)}.t-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.t-field{display:flex;flex-direction:column;gap:7px;min-width:0}.t-field--wide{grid-column:1 / -1}.t-field>label,.t-label{font-size:13.5px;font-weight:800;color:var(--sage);letter-spacing:.01em}.t-hint{font-size:12.5px;color:var(--muted);line-height:1.4;font-weight:500}.t-field input,.t-field select{font-family:var(--sans);font-size:16px;color:var(--ink);padding:13px 15px;border-radius:13px;border:1px solid var(--border);background:#fff;width:100%;transition:border-color .16s ease,box-shadow .16s ease;-webkit-appearance:none;appearance:none}.t-field select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%239c988c' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 15px center;padding-right:40px}.t-field input:focus,.t-field select:focus{outline:none;border-color:var(--pink);box-shadow:0 0 0 3px #ff14931f}.t-field input::placeholder{color:#c4c0b5}.t-seg{display:flex;gap:8px;flex-wrap:wrap}.t-seg input{position:absolute;opacity:0;pointer-events:none}.t-seg label{flex:1 1 auto;min-width:92px;text-align:center;cursor:pointer;font-size:14.5px;font-weight:700;color:var(--body);padding:12px 14px;border-radius:13px;border:1px solid var(--border);background:#fff;transition:all .16s ease}.t-seg label:hover{border-color:var(--sage-light)}.t-seg input:checked+label{background:var(--soft-pink);border-color:var(--pink);color:var(--pink-dark)}.t-seg input:focus-visible+label{box-shadow:0 0 0 3px #ff149329}.t-actions{margin-top:22px}.t-err{color:var(--pink-dark);font-size:14px;font-weight:700;margin:14px 0 0;padding:11px 14px;background:var(--soft-pink);border-radius:11px}.t-results{margin-top:28px}.t-results[hidden]{display:none}@keyframes t-reveal{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.t-reveal{animation:t-reveal .38s cubic-bezier(.2,.7,.3,1) both}.t-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:13px}.t-stat{background:var(--bg);border-radius:17px;padding:19px 16px;text-align:center;border:1px solid transparent}.t-stat--hl{background:linear-gradient(160deg,#fbe7ee,#f5efe6);border-color:var(--pink)}.t-stat-label{display:block;font-size:12.5px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;line-height:1.3}.t-stat strong{display:block;font-family:var(--serif);font-weight:500;font-size:clamp(26px,4vw,33px);color:var(--heading);line-height:1.05;margin:8px 0 5px}.t-stat-sub{display:block;font-size:12.5px;color:var(--body);line-height:1.4}.t-headline{text-align:center;background:linear-gradient(160deg,#fbe7ee,#f5efe6);border:1px solid var(--pink);border-radius:20px;padding:28px 22px;margin-bottom:14px}.t-headline-label{font-size:12.5px;font-weight:800;color:var(--pink-dark);text-transform:uppercase;letter-spacing:.06em}.t-headline strong{display:block;font-family:var(--serif);font-weight:500;font-size:clamp(34px,7vw,54px);color:var(--heading);line-height:1.04;margin:10px 0 8px}.t-headline p{margin:0;font-size:15.5px;line-height:1.55;color:var(--body);max-width:46ch;margin-inline:auto}.t-meter{margin-top:6px}.t-meter-track{height:11px;border-radius:999px;background:var(--cream);overflow:hidden;position:relative}.t-meter-fill{height:100%;border-radius:999px;width:0;background:linear-gradient(90deg,var(--pink) 0%,#f78fb8 100%);transition:width .75s cubic-bezier(.2,.8,.3,1)}.t-meter-scale{display:flex;justify-content:space-between;font-size:12px;color:var(--muted);font-weight:600;margin-top:7px}.t-bars{display:grid;gap:13px;margin-top:20px}.t-bar-row{display:grid;gap:6px}.t-bar-top{display:flex;justify-content:space-between;align-items:baseline;gap:10px;font-size:14.5px}.t-bar-name{font-weight:700;color:var(--heading)}.t-bar-val{font-weight:800;color:var(--sage);font-variant-numeric:tabular-nums}.t-bar-track{height:9px;border-radius:999px;background:var(--cream);overflow:hidden}.t-bar-fill{height:100%;border-radius:999px;width:0;background:var(--sage-light);transition:width .7s cubic-bezier(.2,.8,.3,1)}.t-bar-row--weak .t-bar-fill{background:linear-gradient(90deg,var(--pink) 0%,#f78fb8 100%)}.t-bar-row--weak .t-bar-val{color:var(--pink-dark)}.t-timeline{display:grid;gap:2px;margin-top:20px}.t-tl-row{display:grid;grid-template-columns:92px 1fr auto;align-items:center;gap:12px;padding:11px 13px;border-radius:12px;font-size:14.5px}.t-tl-row:nth-child(odd){background:var(--bg)}.t-tl-when{font-weight:800;color:var(--sage);font-size:13px}.t-tl-what{color:var(--body);line-height:1.4}.t-tl-num{font-weight:800;color:var(--heading);font-variant-numeric:tabular-nums;white-space:nowrap}.t-tl-row--now{background:var(--soft-pink)!important}.t-tl-row--goal{background:var(--soft-sage)!important}.t-portions{display:grid;gap:11px;margin-top:18px}.t-portion{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;background:var(--bg);border-radius:15px;padding:15px 17px}.t-portion-ico{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:var(--surface);box-shadow:var(--shadow-sm);font-size:20px}.t-portion-name{display:block;font-weight:800;color:var(--heading);font-size:15px;line-height:1.35}.t-portion-desc{display:block;font-size:13px;color:var(--body);line-height:1.4;margin-top:3px}.t-portion-qty{font-family:var(--serif);font-size:25px;color:var(--pink-dark);font-weight:500;white-space:nowrap}.q-shell{position:relative}.q-progress{margin-bottom:22px}.q-progress-top{display:flex;justify-content:space-between;align-items:baseline;font-size:13px;font-weight:700;color:var(--muted);margin-bottom:8px}.q-progress-track{height:6px;border-radius:999px;background:var(--cream);overflow:hidden}.q-progress-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--pink) 0%,#f78fb8 100%);width:0;transition:width .32s cubic-bezier(.2,.8,.3,1)}.q-question{font-family:var(--serif);font-weight:500;font-size:clamp(21px,3.2vw,27px);line-height:1.28;color:var(--heading);margin:0 0 20px}.q-opts{display:grid;gap:10px}.q-opt{display:flex;align-items:center;gap:13px;width:100%;text-align:left;cursor:pointer;font-family:var(--sans);font-size:16px;font-weight:600;line-height:1.45;color:var(--body);background:#fff;border:1px solid var(--border);border-radius:15px;padding:16px 18px;transition:border-color .15s ease,background .15s ease,transform .12s ease}.q-opt:hover{border-color:var(--pink);background:#fffafc;transform:translate(2px)}.q-opt:focus-visible{outline:none;box-shadow:0 0 0 3px #ff149329}.q-opt-dot{flex:none;width:21px;height:21px;border-radius:50%;border:2px solid var(--border);background:#fff;transition:all .15s ease}.q-opt:hover .q-opt-dot{border-color:var(--pink)}.q-opt[aria-pressed=true]{border-color:var(--pink);background:var(--soft-pink)}.q-opt[aria-pressed=true] .q-opt-dot{border-color:var(--pink);background:var(--pink);box-shadow:inset 0 0 0 3px #fff}.q-nav{display:flex;align-items:center;gap:12px;margin-top:22px}.q-back{background:none;border:none;cursor:pointer;padding:8px 4px;font-family:var(--sans);font-size:14.5px;font-weight:700;color:var(--muted);display:inline-flex;align-items:center;gap:6px}.q-back:hover{color:var(--sage)}.q-back[hidden]{display:none}.q-result-tag{display:inline-block;font-size:12.5px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--pink-dark);background:var(--soft-pink);padding:6px 13px;border-radius:999px;margin-bottom:14px}.q-result h3{font-family:var(--serif);font-weight:500;font-size:clamp(26px,4.6vw,36px);line-height:1.16;color:var(--heading);margin:0 0 14px}.q-result-body p{font-size:16.5px;line-height:1.68;color:var(--body);margin:0 0 15px}.q-result-body p:last-child{margin-bottom:0}.q-result-body strong{color:var(--heading)}.q-benchmark{display:flex;gap:13px;align-items:flex-start;background:var(--soft-sage);border-radius:16px;padding:17px 19px;margin-top:18px}.q-benchmark-num{font-family:var(--serif);font-size:33px;line-height:1;color:var(--sage);font-weight:500;flex:none}.q-benchmark p{margin:0;font-size:14.5px;line-height:1.5;color:var(--body)}.q-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.q-restart{background:none;border:none;cursor:pointer;font-family:var(--sans);font-size:14.5px;font-weight:700;color:var(--muted);padding:11px 4px;text-decoration:underline;text-underline-offset:3px}.q-restart:hover{color:var(--sage)}.t-alert{display:flex;gap:13px;align-items:flex-start;background:#fff6f9;border:1px solid var(--pink);border-radius:16px;padding:17px 19px;margin-top:18px}.t-alert svg{flex:none;width:21px;height:21px;color:var(--pink-dark);margin-top:2px}.t-alert p{margin:0 0 8px;font-size:14.5px;line-height:1.55;color:var(--body)}.t-alert p:last-child{margin-bottom:0}.t-alert strong{color:var(--heading)}.t-alert a{color:var(--pink-dark);font-weight:700}.t-cta{margin-top:26px;padding-top:24px;border-top:1px solid var(--border-soft);text-align:center}.t-cta p{font-size:16px;line-height:1.6;color:var(--body);margin:0 0 17px;max-width:48ch;margin-inline:auto}.t-cta-note{display:block;font-size:13px;color:var(--muted);margin-top:11px}.t-note{margin-top:22px;background:var(--bg);border-radius:15px;padding:17px 19px;border-left:3px solid var(--sage-light)}.t-note h3{font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--sage);margin:0 0 8px}.t-note p{font-size:14.5px;line-height:1.6;color:var(--body);margin:0 0 9px}.t-note p:last-child{margin-bottom:0}.t-note a{color:var(--sage);font-weight:700;text-decoration:underline;text-underline-offset:2px}.t-note a:hover{color:var(--pink-dark)}.t-sources{list-style:none;padding:0;margin:10px 0 0;display:grid;gap:6px}.t-sources li{font-size:13.5px;line-height:1.5;color:var(--muted);padding-left:16px;position:relative}.t-sources li:before{content:"";position:absolute;left:0;top:8px;width:5px;height:5px;border-radius:50%;background:var(--sage-light)}.t-sources a{color:var(--sage);font-weight:600}.t-disclaimer{margin-top:14px;display:flex;gap:12px;align-items:flex-start;background:var(--soft-sage);border-radius:15px;padding:16px 18px}.t-disclaimer svg{flex:none;width:19px;height:19px;color:var(--sage);margin-top:2px}.t-disclaimer p{margin:0;font-size:14px;line-height:1.58;color:var(--body)}.t-disclaimer strong{color:var(--heading)}.t-prose{margin-top:52px}.t-prose h2{font-family:var(--serif);font-weight:500;font-size:clamp(23px,3.2vw,31px);line-height:1.22;color:var(--heading);margin:34px 0 14px}.t-prose h2:first-child{margin-top:0}.t-prose p{font-size:17px;line-height:1.72;color:var(--body);margin:0 0 17px}.t-prose ul{margin:0 0 17px;padding-left:22px}.t-prose li{font-size:17px;line-height:1.7;color:var(--body);margin-bottom:8px}.t-prose a{color:var(--pink-dark);font-weight:600;text-decoration:underline;text-underline-offset:2px}.t-prose strong{color:var(--heading);font-weight:700}.t-faq{margin-top:46px}.t-faq h2{font-family:var(--serif);font-weight:500;font-size:clamp(23px,3.2vw,31px);color:var(--heading);margin:0 0 10px}.t-faq-item{border-top:1px solid var(--border-soft)}.t-faq-item:last-child{border-bottom:1px solid var(--border-soft)}.t-faq-item summary{cursor:pointer;font-weight:700;color:var(--heading);font-size:17px;padding:17px 34px 17px 0;list-style:none;position:relative;line-height:1.45}.t-faq-item summary::-webkit-details-marker{display:none}.t-faq-item summary:after{content:"+";position:absolute;right:4px;top:15px;color:var(--pink-dark);font-weight:700;font-size:21px;line-height:1}.t-faq-item[open] summary:after{content:"−"}.t-faq-item p{font-size:16px;line-height:1.68;color:var(--body);margin:0 0 17px}.t-faq-item a{color:var(--pink-dark);font-weight:600}.tool-more{margin-top:52px}.tool-more h2{font-family:var(--serif);font-weight:500;font-size:clamp(21px,2.8vw,27px);color:var(--heading);margin:0 0 16px}.tool-cards{display:grid;gap:13px;grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}.tool-card-link{display:flex;flex-direction:column;gap:9px;background:var(--surface);border:1px solid var(--border-soft);border-radius:18px;padding:19px 20px;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.tool-card-link:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--pink)}.tool-card-ico{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:var(--soft-sage);color:var(--sage)}.tool-card-link:hover .tool-card-ico{background:var(--soft-pink);color:var(--pink-dark)}.tool-card-ico svg{width:20px;height:20px}.tool-card-name{font-weight:800;color:var(--heading);font-size:16px;line-height:1.3}.tool-card-blurb{font-size:14px;line-height:1.5;color:var(--body)}.hub-page{padding-block:20px 72px}.hub-head{max-width:720px;margin-bottom:42px}.hub-head h1{font-family:var(--serif);font-weight:500;font-size:clamp(32px,5.4vw,52px);line-height:1.08;color:var(--heading);margin:0 0 16px;letter-spacing:-.015em}.hub-lead{font-size:clamp(17px,2.1vw,20px);line-height:1.6;color:var(--body);margin:0}.hub-group{margin-bottom:46px}.hub-group-head{margin-bottom:18px}.hub-group h2{font-family:var(--serif);font-weight:500;font-size:clamp(22px,3vw,30px);color:var(--heading);margin:0 0 6px}.hub-group-intro{font-size:15.5px;line-height:1.55;color:var(--muted);margin:0;max-width:60ch}.hub-grid{display:grid;gap:15px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.hub-card{display:flex;flex-direction:column;gap:11px;background:var(--surface);border:1px solid var(--border-soft);border-radius:20px;padding:24px;transition:transform .17s ease,box-shadow .17s ease,border-color .17s ease;position:relative;overflow:hidden}.hub-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);border-color:var(--pink)}.hub-card-top{display:flex;align-items:center;gap:12px}.hub-card-ico{width:44px;height:44px;border-radius:13px;flex:none;display:grid;place-items:center;background:var(--soft-sage);color:var(--sage);transition:background .17s ease,color .17s ease}.hub-card:hover .hub-card-ico{background:var(--soft-pink);color:var(--pink-dark)}.hub-card-ico svg{width:22px;height:22px}.hub-card-kind{font-size:11.5px;font-weight:800;text-transform:uppercase;letter-spacing:.07em;color:var(--muted)}.hub-card h3{font-size:17.5px;font-weight:800;line-height:1.32;color:var(--heading);margin:0}.hub-card p{font-size:14.5px;line-height:1.55;color:var(--body);margin:0;flex:1}.hub-card-go{font-size:14px;font-weight:800;color:var(--pink-dark);display:inline-flex;align-items:center;gap:6px}.hub-card-go svg{transition:transform .17s ease}.hub-card:hover .hub-card-go svg{transform:translate(4px)}.hub-outro{margin-top:12px;background:var(--surface);border-radius:22px;padding:clamp(24px,4vw,40px);box-shadow:var(--shadow-sm);text-align:center}.hub-outro h2{font-family:var(--serif);font-weight:500;font-size:clamp(23px,3.2vw,32px);color:var(--heading);margin:0 0 12px}.hub-outro p{font-size:16.5px;line-height:1.65;color:var(--body);margin:0 auto 20px;max-width:54ch}@media(max-width:640px){.t-grid{grid-template-columns:1fr}.t-tl-row{grid-template-columns:76px 1fr;row-gap:3px}.t-tl-num{grid-column:2;text-align:left}.t-portion{grid-template-columns:auto 1fr;row-gap:4px}.t-portion-qty{grid-column:2}.q-benchmark{flex-direction:column;gap:8px}.t-seg label{min-width:0;flex-basis:calc(50% - 4px)}}@media(prefers-reduced-motion:reduce){.t-reveal,.t-meter-fill,.t-bar-fill,.q-progress-fill,.hub-card,.tool-card-link,.q-opt{animation:none!important;transition:none!important}}
