/* Financial Fitness presentation. Original standalone demo remains available. */
.embedded { color:#29283f; background:#fcf9f7; font-family:var(--site-body-font,'DM Sans',sans-serif); }
.embedded body { background:#fcf9f7; }
.embedded main { max-width:none; padding:0; }
.embedded .intro { display:none; }
.embedded .workspace { grid-template-columns:260px minmax(0,1fr); gap:32px; }
.embedded .personal-panel { padding:24px 22px; border:1px solid #e5dcd9; border-radius:8px; background:#f6f0ec; }
.embedded .personal-panel>.eyebrow { color:#756572; letter-spacing:1.4px; font-size:10px; }
.embedded .personal-panel h2 { font:400 28px/1.15 Georgia,serif; letter-spacing:-.7px; }
.embedded .panel-intro { color:#615b68; font-size:13px; line-height:1.7; margin:12px 0 24px; }
.embedded .personal-panel label { color:#454052; font-size:13px; }
.embedded .personal-panel fieldset { border-color:#dfd4d5; }
.embedded .personal-panel legend { color:#454052; font-size:13px; line-height:1.5; }
.embedded .personal-panel legend span { color:#756b77; font-size:11px; }
.embedded .personal-panel input,.embedded textarea { background:#fcf9f7; border-color:#d6cad0; border-radius:5px; color:#29283f; }
.embedded .field-help,.embedded .session-notice { color:#756b77; font-size:11px; line-height:1.65; }
.embedded input:focus,.embedded textarea:focus { outline-color:#84788d; }
.embedded button:focus-visible { outline-color:#d99289; }
.embedded .board { background:#29283f; background-image:none; border:0; border-radius:8px; box-shadow:none; padding:26px 26px 0; }
.embedded .board-top { color:#c6dfdb; font-size:10px; letter-spacing:1.6px; padding-bottom:28px; }
.embedded .instruction { color:#c5bdcc; font-size:12px; }
.embedded .column { padding-right:22px; }
.embedded .column+.column { padding-left:22px; border-color:#ffffff20; }
.embedded .column-heading { gap:12px; flex-wrap:wrap; }
.embedded .column-heading .eyebrow { color:#c5bdcc; font-size:10px; letter-spacing:1px; }
.embedded .column-heading h2 { font:400 27px/1.15 Georgia,serif; letter-spacing:-.4px; color:#fcf9f7; }
.embedded h2 span { color:#c5bdcc; }
.embedded .total { font-family:inherit; font-size:19px; font-weight:500; color:#fcf9f7; }
.embedded .notes { min-height:276px; gap:20px 16px; }
.embedded .note { background:#e9b9ad; color:#49333d; border-radius:3px; min-height:116px; padding:22px 16px 18px; box-shadow:0 4px 9px #17152426; transform:rotate(calc(var(--tilt) * .45)); }
.embedded .note::before { background:#fcf9f747; height:15px; top:-6px; box-shadow:none; }
.embedded .expense .note:nth-child(2n) { background:#dfaa9e; }
.embedded .income .note { background:#c6dfdb; color:#293f3f; }
.embedded .income .note:nth-child(2n) { background:#dbe9e5; }
.embedded .note:hover { transform:translateY(-3px); box-shadow:0 8px 14px #17152440; }
.embedded .note-label { font-size:13px; }
.embedded .note-amount { font-family:inherit; font-size:25px; font-weight:600; letter-spacing:-.8px; }
.embedded .note-amount small { font-family:inherit; font-size:12px; }
.embedded .add { color:#e0dae5; border-color:#ffffff38; border-radius:5px; font-size:12px; min-height:40px; }
.embedded .add:hover { background:#ffffff10; }
.embedded .balance { border-color:#ffffff24; padding-block:24px; }
.embedded .balance .eyebrow { color:#c5bdcc; font-size:10px; }
.embedded .balance-value { color:#c6dfdb; font-family:inherit; font-size:34px; font-weight:500; }
.embedded .balance-track span { background:#c6dfdb; }
.embedded .balance-right p { color:#c5bdcc; font-size:12px; }
.embedded .balance.negative .balance-value { color:#f0b8ad; }
.embedded .balance.negative .balance-track span { background:#f0b8ad; }
.embedded .position { background:#f6f0ec; border:1px solid #e5dcd9; border-radius:8px; padding:26px; margin-top:24px; }
.embedded .position-heading .eyebrow { color:#756572; font-size:10px; letter-spacing:1.2px; }
.embedded .position-heading h2 { color:#29283f; font:400 28px/1.2 Georgia,serif; letter-spacing:-.5px; }
.embedded .position-heading>span { color:#756b77; font-size:11px; }
.embedded .position-note { background:#e6dbd1; color:#534047; border-radius:4px; transform:none; box-shadow:none; padding:18px 14px; }
.embedded .position-note.assets { background:#d8e5e0; color:#314944; transform:none; }
.embedded .position-note.debts { background:#e8d4d2; color:#5e414b; transform:none; }
.embedded .position-note:hover { box-shadow:inset 0 0 0 1px #57495d55; }
.embedded .position-note span { font-size:12px; }
.embedded .position-note strong { font-family:inherit; font-size:22px; font-weight:600; }
.embedded .net-summary { border-color:#dcd0d5; }
.embedded .net-summary span { color:#756b77; font-size:12px; }
.embedded .net-summary strong { color:#29283f; font-weight:600; }
.embedded .goal-note { background:#f6f0ec; border-color:#d99289; border-radius:0 6px 6px 0; }
.embedded .goal-note .eyebrow { color:#756572; }
.embedded footer { padding:18px 0; }
.embedded footer p,.embedded footer button { color:#756b77; font-size:12px; }
.embedded dialog { background:#fcf9f7; color:#29283f; border:1px solid #e5dcd9; border-radius:10px; }
.embedded dialog::backdrop { background:#29283fb3; backdrop-filter:blur(3px); }
.embedded .dialog-header h2 { font:400 30px/1.2 Georgia,serif; }
.embedded .save { background:#29283f; color:#fcf9f7; }
.embedded .close { color:#57495d; }
.embedded #delete { color:#8e484b; }
.integrated dialog { position:fixed; inset:auto 0 auto; margin:0 auto; overflow:auto; }
@media(max-width:1100px) {
  .embedded .workspace { grid-template-columns:230px minmax(0,1fr); gap:24px; }
  .embedded .board { padding:22px 20px 0; }
  .embedded .column { padding-right:16px; }
  .embedded .column+.column { padding-left:16px; }
  .embedded .note { padding:20px 12px 16px; }
  .embedded .note-amount { font-size:22px; }
  .embedded .column-heading h2 { font-size:25px; }
}
@media(max-width:900px) {
  .embedded .workspace { grid-template-columns:1fr; gap:28px; }
  .embedded .personal-panel { padding:24px; }
  .embedded .personal-panel legend span { display:block; margin-left:0; }
}
@media(max-width:620px) {
  .embedded .personal-panel { padding:22px 20px; }
  .embedded .board { padding:24px 18px 0; }
  .embedded .column { padding:0 0 24px; }
  .embedded .column+.column { padding:24px 0; }
  .embedded .notes { min-height:0; gap:20px 14px; }
  .embedded .note { min-height:110px; padding:20px 12px 16px; }
  .embedded .position { padding:22px 20px; }
  .embedded .position-note { gap:12px; }
  .embedded .position-note strong { font-size:20px; }
  .embedded .column-heading { flex-wrap:wrap; }
}
