/* Donation layout only. Colors, typography, cards, inputs and buttons come from GROW's shared styles. */
.tg-donation-layout { display:grid; grid-template-columns:248px minmax(0,1fr); gap:24px; align-items:start; }
.tg-donation-side { position:sticky; top:calc(var(--tg-head-h,72px) + 24px); }
.tg-donation-content { min-width:0; }
.tg-donation-content #app { display:grid; gap:16px; }
.tg-donation-content .tg-card { margin:0; }
.tg-donation-content .tg-purpose { border-top:2px solid var(--tg-gold); }
.tg-purpose-lead { font-size:1rem; }
.tg-pathways { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; margin:24px 0; }
.tg-pathways>div { border-top:1px solid var(--tg-line); padding-top:16px; }
.tg-pathways h3 { margin-bottom:10px; }
.tg-pathways p { font-size:.875rem; margin:0; }
.tg-donation-content .tg-stats { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin:20px 0; }
.tg-donation-content .tg-stat { display:flex; flex-direction:column; gap:8px; padding:16px; }
.tg-stat-label { font-size:.875rem; color:var(--tg-text-2); }
.tg-stat-value { font-variant-numeric:tabular-nums; }
.tg-donation-content .tg-recognition { list-style:none; display:flex; flex-wrap:wrap; gap:8px; margin:16px 0 0; padding:0; }
.tg-recognition li { padding:8px 12px; border:1px solid var(--tg-line); border-radius:var(--tg-r-sm); color:var(--tg-gold-bright); background:var(--tg-gold-wash); }
.tg-donation-content .tg-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(200px,1fr)); gap:16px; }
.tg-field { display:flex; flex-direction:column; gap:8px; }
.tg-field label { font-size:.875rem; font-weight:600; }
.tg-input,.tg-select { width:100%; }
.tg-hint { font-size:.875rem; line-height:1.5; }
.tg-field-error,.tg-msg-error { color:var(--tg-bad); }
.tg-msg-ok { color:var(--tg-ok); }.tg-msg-warn { color:var(--tg-warn); }
.tg-input-error { outline:2px solid var(--tg-bad); }
.tg-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:20px; }
.tg-campaign { display:flex; gap:12px; align-items:center; flex-wrap:wrap; }
.tg-campaign select { width:auto; flex:1; }
.tg-progress { display:block; width:100%; height:10px; accent-color:var(--tg-gold); margin:16px 0; }
.tg-spends { min-width:1000px; }.tg-donors { min-width:550px; }
.tg-card:has(.tg-table) { overflow-x:auto; }
.tg-num { text-align:right!important; font-variant-numeric:tabular-nums; }
.tg-form-card form>.tg-field { margin-top:16px; }
@media(max-width:900px) { .tg-donation-layout { grid-template-columns:1fr; }.tg-donation-side { position:static; display:block; }.tg-donation-side .tg-side-nav { display:flex; flex-direction:row; flex-wrap:wrap; gap:4px; }.tg-donation-side h2 { margin-top:8px; } }
@media(max-width:600px) { .tg-pathways { grid-template-columns:1fr; gap:16px; }.tg-donation-content .tg-stats { grid-template-columns:1fr; } }
