/* Budget Coach floating widget — cream/ink/gold, matches tools.css tokens */
.mpc-launch{position:fixed;right:18px;bottom:18px;z-index:9998;display:flex;align-items:center;gap:8px;
  background:#16140F;color:#F1ECDE;border:0;border-radius:999px;padding:12px 18px;font:inherit;font-weight:600;
  font-size:.9rem;cursor:pointer;box-shadow:0 6px 22px rgba(0,0,0,.22)}
.mpc-launch .dot{width:8px;height:8px;border-radius:50%;background:var(--gold,#B8923E)}
.mpc-panel{position:fixed;right:18px;bottom:74px;z-index:9999;width:min(380px,calc(100vw - 24px));
  max-height:min(620px,calc(100vh - 96px));display:none;flex-direction:column;overflow:hidden;
  background:var(--warm-white,#FFFDF8);border:1px solid var(--hair,#e4ddcd);border-radius:14px;
  box-shadow:0 14px 44px rgba(0,0,0,.24)}
.mpc-panel.open{display:flex}
.mpc-head{background:#16140F;color:#F1ECDE;padding:14px 16px;display:flex;justify-content:space-between;align-items:center}
.mpc-head b{font-family:var(--font-head,Georgia,serif);font-weight:600;font-size:1rem}
.mpc-head .gold{color:var(--gold,#B8923E)}
.mpc-x{background:0;border:0;color:#F1ECDE;font-size:1.2rem;cursor:pointer;line-height:1}
.mpc-body{padding:14px 16px;overflow-y:auto;flex:1}
.mpc-msg{margin:0 0 12px;font-size:.9rem;line-height:1.5;white-space:pre-wrap}
.mpc-msg.coach{color:var(--ink,#16140F)}
.mpc-msg.user{color:var(--muted,#6b5e44);text-align:right}
.mpc-field{display:block;margin:0 0 10px}
.mpc-field span{display:block;font-size:.78rem;font-weight:600;color:var(--ink,#16140F);margin-bottom:4px}
.mpc-field input,.mpc-field select{width:100%;box-sizing:border-box;border:1px solid var(--ink,#16140F);
  background:#fff;border-radius:6px;padding:9px 11px;font:inherit;font-size:.88rem}
.mpc-foot{padding:12px 16px;border-top:1px solid var(--hair,#e4ddcd)}
.mpc-btn{width:100%;background:var(--gold,#B8923E);color:#16140F;border:0;border-radius:7px;padding:11px 14px;
  font:inherit;font-weight:700;font-size:.9rem;cursor:pointer}
.mpc-btn:disabled{opacity:.6;cursor:default}
.mpc-note{font-size:.72rem;color:var(--muted,#6b5e44);margin:8px 2px 0}
.mpc-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
@media (max-width:480px){.mpc-panel{right:8px;left:8px;width:auto}}
