/* Contributions and payment workspaces; Budget & Forecasts retains its design. */
body .finance-studio{margin-top:25px;min-width:0}
body .fs-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));position:relative;overflow:hidden;background:#fff;border:1px solid #e4deea;border-radius:18px;padding:23px 24px;margin-bottom:23px}
body .fs-metrics:before{content:'';height:3px;position:absolute;inset:0 0 auto;background:linear-gradient(90deg,#ed007e,#ff7900,#00af9d,#9822d4)}
body .fs-metrics>div{padding:0 20px;border-left:1px solid #eee7f1;min-width:0}body .fs-metrics>div:first-child{padding-left:0;border:0}
body .fs-metrics span{display:block;font-size:9px;line-height:1.6}body .fs-metrics strong{display:block;font-size:25px;font-weight:500;letter-spacing:-.045em;margin:10px 0;line-height:1.2;overflow-wrap:anywhere}body .fs-metrics small{display:block;font-size:8px;line-height:1.7}
body .fs-support-summary{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:25px 29px;background:linear-gradient(115deg,#fff1f8,#fff8ef 55%,#edf9f6);border:1px solid #ebdce7;border-radius:18px;margin-bottom:20px}
body .fs-support-summary .eyebrow{font-size:8px;letter-spacing:.12em}body .fs-support-summary h2{font-size:24px;line-height:1.25;letter-spacing:-.04em;margin:11px 0}body .fs-support-summary p{font-size:11px;line-height:1.7;margin:9px 0 16px}
body .fs-support-key{display:flex;flex-wrap:wrap;gap:15px}body .fs-support-key>span{display:flex;align-items:center;gap:6px;font-size:9px}body .fs-support-key i{width:6px;height:6px;border-radius:50%;background:#ed007e;flex:none}body .fs-support-key span:nth-child(2) i{background:#d6d0df}
body .fs-support-ring{width:116px;height:116px;flex:none;border-radius:50%;display:grid;place-items:center;padding:7px;background:conic-gradient(from -90deg,#ed007e 0%,#ff7900 calc(var(--support-progress)/2),#00af9d var(--support-progress),#e5dfe8 var(--support-progress))}
body .fs-support-ring>div{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:50%;background:#fff}body .fs-support-ring strong{font-size:34px;letter-spacing:-.05em;line-height:1;font-weight:500}body .fs-support-ring strong small{font-size:15px;margin-left:2px}body .fs-support-ring span{font-size:7px;line-height:1.5;margin-top:7px}
body .fs-sponsor-toolbar{display:flex;align-items:center;gap:20px;flex-wrap:wrap;padding:18px 20px;background:#fff;border:1px solid #e7dfec;border-radius:14px;margin:20px 0 28px}
body .fs-sponsor-toolbar>.field{max-width:280px;min-width:0;flex:1;margin:0;font-size:9px}body .fs-sponsor-toolbar select{width:100%;font-size:11px;padding:11px;border:1px solid #e3d9e9;border-radius:9px;background:#faf8fc;margin-top:7px}
body .fs-private-toggle{display:flex;align-items:center;gap:8px;font-size:10px;line-height:1.5;margin-top:16px}body .fs-private-toggle input{width:16px;height:16px;accent-color:#008b80;flex:none}body .fs-sponsor-toolbar>.button{font-size:10px;padding:10px 14px;margin:16px 0 0 auto;border:1px solid #e3d9e9;background:#fff}
body .fs-section-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:29px 0 21px}body .fs-section-heading .eyebrow{font-size:8px;letter-spacing:.1em}body .fs-section-heading h2{font-size:24px;letter-spacing:-.04em;margin:8px 0 0;line-height:1.25}body .fs-section-heading>span{font-size:10px;line-height:1.5}body .fs-section-heading>.button{font-size:10px;border:1px solid #e2d7e8;background:#fff;padding:11px 14px}
body .fs-record-toolbar{display:flex;justify-content:space-between;gap:15px;align-items:center;flex-wrap:wrap;margin-bottom:22px}
body .fs-filters{display:flex;gap:6px;flex-wrap:wrap}body .fs-filters button{padding:9px 13px;border:1px solid #e1d7e7;border-radius:20px;background:#fff;font-size:10px;min-height:34px}body .fs-filters button[aria-pressed=true]{background:linear-gradient(110deg,#ffe0ef,#ffe9d7);border-color:#e9bdd4}
body .fs-record-toolbar input[type=search]{min-width:0;width:100%;max-width:290px;border:1px solid #e3d9e9;background:#fff;border-radius:11px;font-size:12px;padding:12px 14px}
body .fs-contribution-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}
body .fs-contribution{background:#fff;border:1px solid #e5dce9;border-radius:18px;padding:23px;position:relative;overflow:hidden;min-width:0;display:flex;flex-direction:column}
body .fs-contribution:before{content:'';height:3px;position:absolute;inset:0 0 auto;background:linear-gradient(90deg,#ed007e,#ff9fc9)}
body .fs-contribution.in-kind:before{background:linear-gradient(90deg,#00af9d,#a0e9da)}
body .fs-contribution-top{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:15px}
body .fs-kind{font-size:8px;text-transform:uppercase;letter-spacing:.05em;line-height:1.5;display:inline-block}
body .fs-status{font-size:8px;padding:5px 8px;border-radius:6px;border:1px solid #e5daed;background:#f5effb;line-height:1.3;white-space:nowrap}body .fs-status.late{background:#ffe8ee;border-color:#f1cbd9}body .fs-status.settled{background:#e3f5ec;border-color:#cce7d9}
body .fs-contribution>h3{font-size:20px;line-height:1.3;letter-spacing:-.035em;margin:0 0 17px;overflow-wrap:anywhere}
body .fs-sponsor{display:flex;gap:10px;align-items:center;margin-bottom:22px}body .fs-sponsor>span{width:31px;height:31px;border-radius:10px;display:grid;place-items:center;font-size:10px;font-weight:600;background:linear-gradient(130deg,#f8d5e8,#e5d3f6);border:1px solid #e8d7ed;flex:none}body .fs-sponsor>div{min-width:0}body .fs-sponsor strong{font-size:11px;line-height:1.5;font-weight:500;display:block;overflow-wrap:anywhere}body .fs-sponsor small{display:block;font-size:8px;margin-top:4px}
body .fs-contribution-value{border-top:1px solid #eee7f1;padding-top:20px;margin-top:auto}body .fs-contribution-value>strong{font-size:29px;font-weight:500;letter-spacing:-.05em;display:block;line-height:1.2}body .fs-contribution-value>span{display:block;font-size:9px;margin:8px 0 20px}
body .fs-received-label{display:flex;justify-content:space-between;gap:10px;font-size:9px;margin-bottom:9px;line-height:1.5}
body .fs-progress{height:4px;border-radius:5px;background:#eee8f3;overflow:hidden}body .fs-progress>i{display:block;height:100%;border-radius:5px;background:linear-gradient(90deg,#ed007e,#ff7900,#00af9d)}
body .fs-contribution-meta{display:flex;justify-content:space-between;gap:12px;font-size:8px;line-height:1.7;margin:13px 0}
body .fs-sponsored-item{font-size:10px;padding:11px 12px;background:#f8f5fb;border:1px solid #eee5f3;border-radius:9px;margin:0 0 12px;line-height:1.7;overflow-wrap:anywhere}
body .fs-value-note{font-size:9px;line-height:1.8;margin:8px 0 12px}
body .fs-card-actions{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}body .fs-card-actions .button{font-size:10px;padding:10px 13px;min-height:36px;border:1px solid #e4d9eb;background:#fff}
body .fs-contribution>.fs-card-actions .button{flex:1}
body .fs-record-details{border-top:1px solid #eee6f2;margin-top:12px;padding-top:11px;font-size:10px}
body .fs-record-details>summary{cursor:pointer;font-size:9px;font-weight:500;line-height:1.7;width:fit-content;min-height:25px}body .fs-record-details p{font-size:10px;line-height:1.8;overflow-wrap:anywhere}body .fs-record-details .message-attachment .text-link{font-size:10px}
body .fs-record-details .message-attachment img{max-height:160px;width:auto;max-width:100%;object-fit:contain}
body .fs-next-payment{display:flex;align-items:center;gap:20px;background:linear-gradient(110deg,#fff0f7,#fff8ee 60%,#f0faf7);border:1px solid #e9dbe6;border-radius:17px;padding:24px;margin:22px 0 30px}
body .fs-payment-date{width:47px;flex:none;text-align:center;border:1px solid #e7d3df;background:#fff2f8;border-radius:10px;overflow:hidden;align-self:flex-start}
body .fs-payment-date>span{font-size:8px;text-transform:uppercase;letter-spacing:.08em;display:block;padding:5px;border-bottom:1px solid #eadbe5}body .fs-payment-date>strong{font-size:23px;display:block;font-weight:500;letter-spacing:-.04em;padding:6px 0 7px;line-height:1}
body .fs-next-payment>.fs-payment-date{align-self:center}body .fs-next-payment>div:nth-child(2){flex:1;min-width:0}body .fs-next-payment .eyebrow{font-size:8px}body .fs-next-payment h2{font-size:20px;line-height:1.3;letter-spacing:-.03em;margin:9px 0;overflow-wrap:anywhere}body .fs-next-payment p{font-size:10px;line-height:1.6;margin:0}body .fs-next-amount{font-size:25px;font-weight:500;letter-spacing:-.04em;white-space:nowrap}body .fs-next-payment>.button{font-size:10px;border:1px solid #e4d9e9;background:#fff;padding:10px 14px;white-space:nowrap}
body .fs-payment-list{display:flex;flex-direction:column;gap:12px}
body .fs-obligation{display:grid;grid-template-columns:48px minmax(0,1fr) 140px 150px;gap:18px;align-items:center;background:#fff;border:1px solid #e6ddeb;border-radius:15px;padding:23px;min-width:0}
body .fs-obligation.late{border-color:#edbdd0;background:linear-gradient(100deg,#fff9fb,#fff)}
body .fs-obligation-main{min-width:0}body .fs-obligation-tags{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:10px}body .fs-obligation-main h3{font-size:15px;font-weight:600;line-height:1.5;letter-spacing:-.02em;margin:0 0 8px;overflow-wrap:anywhere}body .fs-obligation-main>p{font-size:10px;line-height:1.7;margin:0 0 10px;overflow-wrap:anywhere}
body .fs-obligation-progress{display:flex;gap:11px;align-items:center;flex-wrap:wrap;margin-top:13px}body .fs-obligation-progress>.fs-progress{width:90px;height:3px}body .fs-obligation-progress>span{font-size:8px;line-height:1.5}
body .fs-obligation-amount{text-align:right}body .fs-obligation-amount>strong{display:block;font-size:22px;font-weight:500;letter-spacing:-.04em;line-height:1.3;overflow-wrap:anywhere}body .fs-obligation-amount>small{font-size:9px;display:block;margin-top:7px}
body .fs-obligation-actions{display:flex;flex-direction:column;gap:8px;align-items:stretch}body .fs-obligation-actions .button{font-size:9px;padding:10px 12px;min-height:36px;border:1px solid #e2d7e7;background:#fff}
body .fs-obligation.is-settled .fs-payment-date{background:#eaf8f1;border-color:#cfe5d8}body .fs-obligation.is-cancelled{background:#f8f6fa}body .fs-obligation.is-cancelled .fs-progress>i{background:#c5b9ce}
body .fs-contribution.is-cancelled{background:#f9f7fb}body .fs-contribution.is-cancelled:before{background:#d1c6d9}
body .fs-ledger{background:#fff;border:1px solid #e3dbe9;border-radius:19px;padding:27px;margin-top:32px}
body .fs-ledger>.fs-section-heading{margin:0 0 15px}body .fs-ledger-caption{font-size:11px;line-height:1.8;margin:0 0 20px}body .fs-ledger>.fs-filters{margin-bottom:23px}
body .fs-ledger-list{display:flex;flex-direction:column;max-height:850px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#cbbad4 transparent}
body .fs-ledger-entry{display:grid;grid-template-columns:minmax(0,1fr) 135px 150px;gap:20px;padding:22px 0;border-top:1px solid #eee6f2;align-items:start;min-width:0}body .fs-ledger-entry:first-child{border-top:0;padding-top:0}
body .fs-ledger-record{min-width:0}body .fs-ledger-record h3{font-size:14px;line-height:1.5;font-weight:500;letter-spacing:-.015em;margin:0 0 8px;overflow-wrap:anywhere}body .fs-ledger-record p{font-size:10px;line-height:1.7;margin:0 0 7px;overflow-wrap:anywhere}body .fs-ledger-record>small{font-size:8px;line-height:1.7;overflow-wrap:anywhere;display:block}
body .fs-ledger-amount{text-align:right}body .fs-ledger-amount strong{font-size:20px;font-weight:500;letter-spacing:-.035em;display:block;line-height:1.3;overflow-wrap:anywhere}body .fs-ledger-amount small{font-size:9px;margin-top:7px;display:block}
body .fs-ledger-actions{min-width:0;text-align:right}body .fs-ledger-actions>.button{font-size:9px;padding:10px 12px;border:1px solid #e1d6e7;background:#fff;width:100%;min-height:35px}body .fs-ledger-actions .fs-record-details{text-align:left;font-size:9px}body .fs-ledger-actions .fs-record-details summary{font-size:9px;white-space:normal}body .fs-ledger-actions .fs-card-actions{flex-direction:column}body .fs-ledger-actions .fs-card-actions .button{font-size:9px;padding:9px}
body .fs-ledger-entry.is-voided{background:#faf8fc}body .fs-ledger-entry.is-voided .fs-ledger-amount strong{text-decoration:line-through;text-decoration-color:#bcaac7}
body .fs-empty{padding:42px 23px;text-align:center;background:#fff;border:1px dashed #dfd5e8;border-radius:15px;grid-column:1/-1}body .fs-empty h3{font-size:21px;margin:0 0 12px}body .fs-empty p{font-size:11px;margin:0;line-height:1.8}
body .fs-checkout-note{margin-top:22px;padding:20px;border:1px solid #e6dfea;border-radius:14px;background:#f8f6fb}body .fs-checkout-note>strong{font-size:11px;font-weight:500}body .fs-checkout-note p{font-size:10px;line-height:1.8;margin:8px 0 0}
body .finance-studio .checkout-handoff{padding:15px;border:1px solid #e2d7e8;background:#faf7fc;border-radius:11px;margin-top:14px}body .finance-studio .checkout-handoff>span{font-size:9px}body .finance-studio .checkout-handoff .button{font-size:10px;background:#fff;border:1px solid #dfd1e7;padding:10px 12px}body .finance-studio .checkout-handoff small{font-size:9px;line-height:1.8}
@media(max-width:1200px){body .fs-metrics{padding:22px 20px}body .fs-metrics>div{padding:0 14px}body .fs-metrics strong{font-size:22px}body .fs-obligation{grid-template-columns:45px minmax(0,1fr) 130px;gap:15px;padding:20px}body .fs-obligation-actions{grid-column:2/4;flex-direction:row;justify-content:flex-end}body .fs-obligation-actions .button{min-width:130px}body .fs-ledger-entry{grid-template-columns:minmax(0,1fr) 110px 130px;gap:15px}body .fs-next-payment{flex-wrap:wrap}body .fs-next-payment>div:nth-child(2){flex-basis:40%}}
@media(max-width:900px){body .fs-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:23px 0}body .fs-metrics>div:nth-child(3){border:0;padding-left:0}body .fs-support-summary h2{font-size:22px}body .fs-record-toolbar input[type=search]{max-width:none}body .fs-contribution-grid{grid-template-columns:1fr}body .fs-ledger-entry{grid-template-columns:minmax(0,1fr) 135px}body .fs-ledger-actions{grid-column:1/-1;display:flex;align-items:flex-start;justify-content:flex-end;gap:15px;text-align:left}body .fs-ledger-actions>.button{width:auto;flex:none}body .fs-ledger-actions .fs-record-details{border:0;margin:0;padding:5px 0}}
@media(max-width:600px){body .fs-metrics{padding:21px 17px;gap:22px 0;border-radius:17px}body .fs-metrics>div{padding:0 13px}body .fs-metrics strong{font-size:23px;margin:9px 0}body .fs-metrics span{font-size:9px}body .fs-metrics small{font-size:8px}body .fs-support-summary{padding:23px 20px;gap:15px;align-items:flex-start}body .fs-support-summary h2{font-size:20px}body .fs-support-summary p{font-size:10px}body .fs-support-summary .eyebrow{font-size:7px}body .fs-support-ring{width:85px;height:85px;padding:5px}body .fs-support-ring strong{font-size:27px}body .fs-support-ring span{font-size:6px;max-width:65px;text-align:center;margin-top:4px}body .fs-support-key{gap:8px}body .fs-support-key>span{font-size:8px;line-height:1.5}body .fs-sponsor-toolbar{padding:18px;gap:14px;align-items:stretch}body .fs-sponsor-toolbar>.field{flex-basis:100%;max-width:none}body .fs-sponsor-toolbar select{font-size:16px}body .fs-private-toggle{margin:0;font-size:10px;min-height:36px}body .fs-private-toggle input{width:20px;height:20px}body .fs-sponsor-toolbar>.button{margin:0;min-height:40px;font-size:11px;width:100%}body .fs-section-heading{flex-wrap:wrap;align-items:flex-start;gap:13px}body .fs-section-heading h2{font-size:22px}body .fs-section-heading>.button{min-height:40px;font-size:11px}body .fs-record-toolbar{gap:12px}body .fs-filters{flex-wrap:nowrap;overflow-x:auto;max-width:100%;padding-bottom:7px;overscroll-behavior-x:contain}body .fs-filters button{min-height:40px;flex:none;white-space:nowrap;font-size:10px}body .fs-record-toolbar input[type=search]{font-size:16px;max-width:none}body .fs-contribution{padding:23px 20px}body .fs-contribution>h3{font-size:20px}body .fs-contribution-value>strong{font-size:29px}body .fs-contribution-meta{flex-wrap:wrap;gap:7px}body .fs-received-label{font-size:8px}body .fs-card-actions .button{min-height:40px;font-size:11px;white-space:normal}body .fs-record-details>summary{font-size:10px;min-height:36px;padding:5px 0}body .fs-next-payment{padding:20px;gap:15px}body .fs-next-payment>div:nth-child(2){flex-basis:65%}body .fs-next-payment h2{font-size:17px}body .fs-next-amount{font-size:25px;margin-left:62px}body .fs-next-payment>.button{font-size:11px;min-height:40px;margin-left:auto}body .fs-obligation{grid-template-columns:40px minmax(0,1fr);gap:13px;padding:20px 17px}body .fs-payment-date{width:40px}body .fs-payment-date>strong{font-size:22px}body .fs-obligation-main h3{font-size:14px}body .fs-obligation-amount{grid-column:2;text-align:left;display:flex;align-items:center;gap:10px}body .fs-obligation-amount>strong{font-size:23px}body .fs-obligation-amount>small{margin:0;font-size:9px}body .fs-obligation-actions{grid-column:1/-1;justify-content:flex-start;margin-top:3px;flex-wrap:wrap}body .fs-obligation-actions .button{min-height:40px;flex:1;font-size:10px;min-width:0;white-space:normal}body .fs-obligation-progress{gap:8px}body .fs-obligation-progress>span{font-size:8px}body .fs-obligation-progress>.fs-progress{width:65px}body .fs-ledger{padding:23px 18px}body .fs-ledger-entry{grid-template-columns:minmax(0,1fr) 95px;gap:12px}body .fs-ledger-record h3{font-size:12px}body .fs-ledger-amount strong{font-size:17px}body .fs-ledger-amount small{font-size:8px}body .fs-ledger-actions{justify-content:flex-start;flex-wrap:wrap;gap:12px}body .fs-ledger-actions>.button{min-height:40px;font-size:10px}body .fs-ledger-actions .fs-record-details summary{font-size:10px;padding:7px 0;min-height:36px}body .finance-studio .checkout-handoff .button{min-height:40px}}
