.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--font-display);font-weight:600;font-size:16px;line-height:1;min-height:48px;padding:0 24px;border-radius:var(--r-md);border:1.5px solid transparent;cursor:pointer;text-decoration:none;white-space:nowrap;transition:transform .15s ease,box-shadow .15s ease,background-color .15s ease,border-color .15s ease}.btn:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--navy) 25%,transparent)}.btn:active{transform:translateY(1px)}.btn[disabled],.btn.is-disabled{opacity:.45;pointer-events:none;box-shadow:none}.btn-primary{background:hsl(var(--coral-cta));color:var(--white);box-shadow:0 2px 8px color-mix(in srgb,var(--coral) 35%,transparent)}.btn-primary:hover{background:hsl(var(--coral-cta) / .92);transform:translateY(-1px);box-shadow:0 6px 18px color-mix(in srgb,var(--coral) 40%,transparent)}.btn-primary:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--coral) 35%,transparent)}.btn-secondary{background:transparent;color:var(--navy);border-color:color-mix(in srgb,var(--navy) 35%,transparent)}.btn-secondary:hover{border-color:var(--navy);background:var(--navy-soft);transform:translateY(-1px)}.btn-lg{min-height:56px;padding:0 32px;font-size:17px;border-radius:var(--r-lg)}.btn-block{width:100%}.field{display:flex;flex-direction:column;gap:7px}.field-label{font-family:var(--font-display);font-size:14px;font-weight:600;color:var(--ink)}.input{font-family:var(--font-body);font-size:16px;color:var(--ink);background:var(--white);border:1.5px solid rgba(45,48,71,.16);border-radius:var(--r-md);min-height:48px;padding:10px 16px;width:100%;transition:border-color .15s ease,box-shadow .15s ease}.input::-moz-placeholder{color:var(--ink-faint)}.input::placeholder{color:var(--ink-faint)}.input:hover{border-color:#2d30474d}.input:focus{outline:none;border-color:var(--teal);box-shadow:0 0 0 3px color-mix(in srgb,var(--teal) 18%,transparent)}.select{font-family:var(--font-body);font-size:16px;color:var(--ink);background-color:var(--white);border:1.5px solid rgba(45,48,71,.16);border-radius:var(--r-md);min-height:48px;padding:10px 42px 10px 16px;width:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%235A5E78' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;transition:border-color .15s ease,box-shadow .15s ease}.select:hover{border-color:#2d30474d}.select:focus{outline:none;border-color:var(--teal);box-shadow:0 0 0 3px color-mix(in srgb,var(--teal) 18%,transparent)}.pill{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;font-family:var(--font-display);font-size:12.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:5px 13px;border-radius:var(--r-pill);line-height:1.4}.pill-save{background:var(--teal-soft);color:color-mix(in srgb,var(--cat-save) 80%,var(--navy))}.pill-fund{background:var(--coral-soft);color:color-mix(in srgb,var(--cat-fund) 80%,var(--navy))}.pill-budget{background:var(--amber-soft);color:color-mix(in srgb,var(--cat-budget) 62%,var(--navy))}.pill-finance{background:var(--purple-soft);color:color-mix(in srgb,var(--cat-finance) 72%,var(--navy))}.filter-pill{font-family:var(--font-display);font-size:14px;font-weight:600;background:var(--white);color:var(--ink-soft);border:1.5px solid var(--line);cursor:pointer;min-height:40px;padding:0 18px;border-radius:var(--r-pill);transition:all .15s ease}.filter-pill:hover{border-color:#2d30474d;color:var(--ink)}.filter-pill:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--navy) 22%,transparent)}.filter-pill.is-active{color:var(--white);border-color:transparent}.filter-pill.is-active.f-all{background:var(--navy)}.filter-pill.is-active.f-save{background:var(--teal)}.filter-pill.is-active.f-fund{background:var(--coral)}.filter-pill.is-active.f-budget{background:var(--amber);color:var(--navy)}.filter-pill.is-active.f-finance{background:var(--purple)}.card{background:var(--white);border-radius:var(--r-xl);box-shadow:var(--shadow-sm);border:1px solid var(--line-soft)}.card-hover{transition:transform .18s ease,box-shadow .18s ease}.card-hover:hover{transform:translateY(-3px);box-shadow:var(--shadow-lift)}.ph{position:relative;overflow:hidden;display:grid;place-items:center;border-radius:inherit}.ph:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(-45deg,rgba(255,255,255,.07) 0 10px,transparent 10px 22px)}.ph .ph-label{position:relative;font-family:var(--font-mono);font-size:11.5px;letter-spacing:.04em;color:#ffffffeb;background:#2d304759;padding:5px 12px;border-radius:var(--r-pill);backdrop-filter:blur(3px);text-align:center;max-width:85%}.ph-sunset{background:linear-gradient(135deg,#ef9f27,#e8593c 60%,#b4452f)}.ph-ocean{background:linear-gradient(135deg,#1d9e75,#157a62 55%,#2d3047)}.ph-dusk{background:linear-gradient(135deg,#7f77dd,#5a55a8 55%,#2d3047)}.ph-dawn{background:linear-gradient(135deg,#ef9f27,#dd8556 45%,#7f77dd)}.blob{position:absolute;border-radius:50%;filter:blur(70px);pointer-events:none}.blob-amber{background:color-mix(in srgb,var(--amber) 18%,transparent)}.blob-coral{background:color-mix(in srgb,var(--coral) 16%,transparent)}.accordion{border-bottom:1px solid var(--line)}.accordion summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;font-family:var(--font-display);font-size:17px;font-weight:600;color:var(--ink);padding:20px 4px}.accordion summary::-webkit-details-marker{display:none}.accordion summary:after{content:"+";font-size:22px;font-weight:400;color:var(--coral);transition:transform .2s ease;line-height:1;flex:none}.accordion[open] summary:after{transform:rotate(45deg)}.accordion .accordion-body{padding:0 4px 20px;color:var(--ink-soft);max-width:65ch}.tabs{display:inline-flex;gap:4px;background:var(--navy-soft);padding:4px;border-radius:var(--r-pill)}.tab{font-family:var(--font-display);font-size:14px;font-weight:600;color:var(--ink-soft);background:transparent;border:none;cursor:pointer;min-height:38px;padding:0 18px;border-radius:var(--r-pill);transition:background .15s ease,color .15s ease}.tab:hover{color:var(--ink)}.tab.is-active{background:var(--white);color:var(--ink);box-shadow:var(--shadow-sm)}.avatar{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:50%;font-family:var(--font-display);font-weight:700;font-size:15px;color:var(--white);flex:none}.avatar-sm{width:32px;height:32px;font-size:13px}.tf-bar{position:relative;width:100%;height:10px;border-radius:var(--r-pill);background:#2d304714;overflow:hidden}.tf-bar--sm{height:6px}.tf-bar__fill{height:100%;min-width:6px;border-radius:var(--r-pill);background:var(--teal);transition:width .9s cubic-bezier(.22,1,.36,1)}@media (prefers-reduced-motion: reduce){.tf-bar__fill{transition:none}}tf-gauge{display:inline-block;line-height:0}.stack-2{display:flex;flex-direction:column;gap:8px}.wordmark[data-astro-cid-i5zbimw4]{display:inline-flex;align-items:center;gap:10px}.wordmark__text[data-astro-cid-i5zbimw4]{font-family:var(--font-display);font-weight:700;letter-spacing:-.02em;line-height:1}.footer[data-astro-cid-zhy2qehj]{background:var(--navy);padding:64px 64px 36px}.footer__grid[data-astro-cid-zhy2qehj]{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:48px}.footer__blurb[data-astro-cid-zhy2qehj]{color:#fff9;margin-top:16px;max-width:30ch}.footer__col[data-astro-cid-zhy2qehj]{display:flex;flex-direction:column;gap:10px}.footer__heading[data-astro-cid-zhy2qehj]{font-family:var(--font-display);font-weight:700;font-size:14px;color:#fff;margin-bottom:6px}.footer__link[data-astro-cid-zhy2qehj]{font-size:14.5px;color:#ffffffa6;text-decoration:none}.footer__link[data-astro-cid-zhy2qehj]:hover{color:#fff}.footer__bottom[data-astro-cid-zhy2qehj]{display:flex;justify-content:space-between;align-items:center;gap:16px;border-top:1px solid rgba(255,255,255,.12);margin-top:48px;padding-top:24px}.footer__copy[data-astro-cid-zhy2qehj]{color:#ffffff73}.footer__socials[data-astro-cid-zhy2qehj]{display:flex;gap:10px}.footer__chip[data-astro-cid-zhy2qehj]{width:34px;height:34px;border-radius:50%;background:#ffffff1a;display:grid;place-items:center;font-family:var(--font-display);font-weight:700;font-size:12px;color:#ffffffb3;text-decoration:none}.footer__chip[data-astro-cid-zhy2qehj]:hover{background:#ffffff2e;color:#fff}@media (max-width: 900px){.footer[data-astro-cid-zhy2qehj]{padding:48px 24px 32px}.footer__grid[data-astro-cid-zhy2qehj]{grid-template-columns:1fr 1fr;gap:32px}}@media (max-width: 520px){.footer__grid[data-astro-cid-zhy2qehj]{grid-template-columns:1fr}.footer__bottom[data-astro-cid-zhy2qehj]{flex-direction:column;align-items:flex-start;gap:18px}}
