:root{--teal: #14423a;--teal-dark: #0e2f29;--gold: #d69e3a;--gold-dark: #b07a28;--bg: #f4f1ea;--card: #ffffff;--text: #1a1a1a;--text-muted: #6b6b66;--border: #e4e1d8;--danger: #b4432f}*{box-sizing:border-box}body{margin:0;font-family:Poppins,-apple-system,Segoe UI,Helvetica,Arial,sans-serif;background:var(--bg);color:var(--text)}.split-shell{display:flex;min-height:100vh}.brand-panel{flex:1;background:var(--teal);color:#f3efe6;display:flex;flex-direction:column;justify-content:center;padding:48px}.brand-panel .logo-badge{width:44px;height:44px;border-radius:50%;background:var(--gold);color:var(--teal-dark);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:18px;margin-bottom:20px}.brand-panel .brand-logo{max-height:48px;max-width:220px;width:auto;height:auto;align-self:flex-start;object-fit:contain;margin-bottom:20px}.brand-panel h1{font-size:28px;font-weight:600;margin:0 0 8px}.brand-panel p{color:#cfe3dc;font-size:14.5px;max-width:320px}.form-panel{flex:1;background:#fff;display:flex;align-items:center;justify-content:center;padding:32px}.form-card{width:100%;max-width:380px}.form-card h2{font-size:20px;font-weight:600;margin:0 0 6px}.form-card .sub{font-size:13.5px;color:var(--text-muted);margin:0 0 24px}label{display:block;font-size:13px;font-weight:500;margin-bottom:6px}.icon{width:16px;height:16px;flex-shrink:0;vertical-align:-3px}.icon-lg{width:22px;height:22px}.nav-icon{display:inline-flex;justify-content:center;width:18px;flex-shrink:0}.chevron .icon{color:var(--text-muted)}.spin{animation:icon-spin .9s linear infinite}@keyframes icon-spin{to{transform:rotate(360deg)}}.loading-state{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-muted);padding:4px 0}.pill.danger{background:#fbedea;color:var(--danger)}.pill.neutral{background:#f1f0ec;color:var(--text-muted)}.card.danger-zone{border-color:#eac6be}.card.danger-zone h2{color:var(--danger)}.caret{display:inline-flex;color:var(--text-muted);transition:transform .15s}.caret .icon{width:14px;height:14px}input[type=text],input[type=email],input[type=password],input[type=tel],input[type=number],input[type=url],input[type=search],input[type=date],input[type=datetime-local],input[type=month],select,textarea{width:100%;padding:11px 14px;font-size:14px;font-family:inherit;color:var(--text);background:#fff;border:1px solid var(--border);border-radius:8px;outline:none;margin-bottom:16px}textarea{resize:vertical;min-height:64px}select{cursor:pointer}input:focus,select:focus,textarea:focus{border-color:var(--teal)}input:disabled,select:disabled,textarea:disabled{opacity:.65;cursor:not-allowed}input[type=checkbox],input[type=radio]{accent-color:var(--teal);width:16px;height:16px;margin:0;flex-shrink:0;vertical-align:middle}input[type=file]{display:block;font-size:13px;font-family:inherit;margin:0}input[type=color]{width:40px;height:36px;padding:2px;border:1px solid var(--border);border-radius:8px;background:#fff;cursor:pointer;vertical-align:middle}input.inline,select.inline,textarea.inline{width:auto;margin-bottom:0}.compact input,.compact select,.compact textarea,input.compact,select.compact{padding:9px 12px;font-size:13.5px}.compact label{font-size:12px;color:var(--text-muted);margin-bottom:4px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 14px}.form-grid.cols-3{grid-template-columns:repeat(3,1fr)}.form-grid .span-2{grid-column:span 2}.form-grid .span-3{grid-column:1 / -1}.form-grid input,.form-grid select,.form-grid textarea{margin-bottom:0}.form-row{display:flex;gap:12px}.form-row>*{flex:1;min-width:0}.form-section{margin:4px 0 16px;padding-top:12px;border-top:1px solid var(--border)}.form-section.lg{margin:20px 0 0;padding-top:16px}.form-section-title{display:block;font-size:13px;font-weight:600;margin:0 0 2px}.form-section.first{border-top:none;padding-top:0;margin-top:0}.form-section .form-section-title+.form-grid{margin-top:10px}.form-section>.sub{margin:0 0 10px}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.field-hint{font-size:12.5px;color:var(--text-muted);margin:-10px 0 16px;line-height:1.45}.form-grid .field-hint{margin:4px 0 0}.form-card-body{max-width:640px}.logo-row{display:flex;align-items:center;gap:12px;margin-bottom:6px}.logo-preview{height:40px;max-width:140px;object-fit:contain;border:1px solid var(--border);border-radius:6px;padding:4px;background:#fff}.logo-placeholder{width:40px;height:40px;border-radius:6px;border:1px dashed var(--border);display:flex;align-items:center;justify-content:center;font-size:11px;color:var(--text-muted);flex-shrink:0}.form-section .field-hint,.logo-row+.field-hint{margin:4px 0 12px}.form-section .form-grid .field-hint{margin:4px 0 0}.form-grid>.field-hint:not(.span-2){align-self:end;margin-bottom:4px}.color-field{display:flex;align-items:center;gap:8px}.color-field input[type=text]{margin-bottom:0}.consent-row{display:flex;align-items:flex-start;gap:8px;margin-bottom:12px}.consent-row input[type=checkbox]{margin-top:2px}.check-label,.consent-row label{font-weight:400;margin:0;cursor:pointer}button.primary{width:100%;padding:12px;border-radius:8px;border:none;background:var(--gold);color:var(--teal-dark);font-family:inherit;font-size:14.5px;font-weight:600;cursor:pointer}button.primary:hover{background:var(--gold-dark);color:#fff}button.primary:disabled{opacity:.6;cursor:not-allowed}a.primary-link{border-radius:8px;background:var(--gold);color:var(--teal-dark);font-weight:600}a.primary-link:hover{background:var(--gold-dark);color:#fff}a.secondary-link{border-radius:8px;border:1px solid var(--border);background:#fff;color:var(--teal);font-weight:600}a.secondary-link:hover{border-color:var(--teal)}button.secondary{padding:12px;border-radius:8px;border:1px solid var(--border);background:#fff;color:var(--teal);font-family:inherit;font-size:14.5px;font-weight:600;cursor:pointer}button.secondary:hover{border-color:var(--teal)}button.secondary:disabled{opacity:.6;cursor:not-allowed}button.danger{padding:12px;border-radius:8px;border:none;background:var(--danger);color:#fff;font-family:inherit;font-size:14.5px;font-weight:600;cursor:pointer}button.danger:hover{background:#963624}button.danger:disabled{opacity:.6;cursor:not-allowed}button.btn-inline,a.btn-inline{width:auto;padding:9px 16px;font-size:13.5px;display:inline-flex;align-items:center;gap:6px;text-decoration:none}button.danger-link{background:none;border:none;padding:0;font-family:inherit;font-size:12.5px;font-weight:500;color:var(--danger);cursor:pointer}button.danger-link:hover{text-decoration:underline}button.danger-link:disabled{opacity:.6;cursor:default}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}button.link-button{background:none;border:none;color:var(--teal);font-family:inherit;font-size:13px;text-decoration:underline;cursor:pointer;padding:0}.tenant-option{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;border:1px solid var(--border);border-radius:10px;margin-bottom:10px;cursor:pointer;background:#fff}.tenant-option:hover{border-color:var(--teal)}.tenant-option .name{font-size:14px;font-weight:600}.tenant-option .role{font-size:12px;color:var(--text-muted)}.badge{font-size:10.5px;font-weight:600;padding:2px 8px;border-radius:100px;background:#e6f0ec;color:var(--teal)}.error-banner{background:#fbeceb;color:var(--danger);border:1px solid #f0c9c4;border-radius:8px;padding:10px 14px;font-size:13px;margin-bottom:16px}.info-banner{background:#fbf3e4;color:var(--gold-dark);border:1px solid #f0dfba;border-radius:8px;padding:10px 14px;font-size:13px;margin-bottom:16px}.success-banner{background:#e6f0ec;color:var(--teal);border:1px solid #bfd9cd;border-radius:8px;padding:10px 14px;font-size:13px;margin-bottom:16px}.campaign-progress-track{width:100%;height:8px;border-radius:100px;background:#ffffff40;overflow:hidden;margin-top:10px}.campaign-progress-fill{height:100%;background:var(--gold, #d69e3a);border-radius:100px;transition:width .3s ease}.amount-presets{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:16px}.amount-preset{padding:10px 0;border-radius:8px;border:1px solid var(--border);background:#fff;font-family:inherit;font-size:14px;font-weight:600;cursor:pointer;color:var(--text)}.amount-preset:hover{border-color:var(--teal)}.amount-preset.selected{border-color:var(--teal);background:var(--teal);color:#fff}.tokenizer-frame-wrap{border:1px solid var(--border);border-radius:8px;margin-bottom:16px;overflow:hidden;background:#fff}.tokenizer-frame-wrap iframe{display:block;width:100%;height:48px;border:none}.freq-toggle{display:flex;background:#f0eee6;border-radius:10px;padding:4px;margin-bottom:18px}.freq-toggle button{flex:1;border:none;background:transparent;padding:9px 0;font-family:inherit;font-size:13px;font-weight:500;color:var(--text-muted);border-radius:8px;cursor:pointer}.freq-toggle button.active{background:var(--teal);color:#fff}.freq-pills{display:flex;gap:8px;margin:0 0 18px}.freq-pill{flex:1;text-align:center;padding:8px 0;border:1px solid var(--border);border-radius:8px;font-size:12.5px;cursor:pointer}.freq-pill.selected{border-color:var(--teal);background:#f0f6f3;color:var(--teal);font-weight:500}.saved-card-row{display:flex;align-items:center;gap:12px;border:1.5px solid var(--border);border-radius:10px;padding:11px 14px;margin-bottom:8px;cursor:pointer;background:#fff}.saved-card-row.selected{border-color:var(--teal);background:#f7fbf9}.saved-card-row input[type=radio]{flex-shrink:0;accent-color:var(--teal)}.card-brand-badge{flex-shrink:0;width:38px;height:26px;border-radius:4px;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;letter-spacing:.3px;color:#fff}.card-brand-badge.visa{background:#1a56a8}.card-brand-badge.mastercard{background:#2b2b2b}.card-brand-badge.amex{background:#0a6fbb}.card-brand-badge.discover{background:#b4571f}.card-brand-badge.unknown{background:#8a8a86}.saved-card-info{flex:1;font-size:13.5px}.saved-card-info .exp{color:var(--text-muted);font-size:12px}.wallet-verify-box{border:1px dashed var(--border);border-radius:10px;padding:12px 14px;margin:-6px 0 16px;font-size:12.5px;color:var(--text-muted)}.wallet-verify-box input{margin-bottom:8px}.wallet-verify-box .row{display:flex;gap:8px}.cc-card{width:100%;max-width:320px;height:172px;margin:0 auto 18px;perspective:1000px}.cc-card-inner{position:relative;width:100%;height:100%;transition:transform .5s;transform-style:preserve-3d}.cc-card.flipped .cc-card-inner{transform:rotateY(180deg)}.cc-face{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:14px;backface-visibility:hidden;-webkit-backface-visibility:hidden;padding:18px 20px;color:#fff;background:linear-gradient(135deg,var(--teal),var(--teal-dark));box-shadow:0 10px 24px #0000002e;display:flex;flex-direction:column;justify-content:space-between}.cc-face.cc-back{transform:rotateY(180deg);justify-content:flex-start;padding-top:22px}.cc-face.brand-visa{background:linear-gradient(135deg,#2064b8,#0d2f5c)}.cc-face.brand-mastercard{background:linear-gradient(135deg,#3a3a3a,#101010)}.cc-face.brand-amex{background:linear-gradient(135deg,#1080cf,#043b63)}.cc-face.brand-discover{background:linear-gradient(135deg,#c1631f,#6e330f)}.cc-top-row{display:flex;justify-content:space-between;align-items:flex-start}.cc-chip{width:38px;height:28px;border-radius:5px;background:linear-gradient(135deg,#e8d48a,#c7a94f)}.cc-brand-label{font-size:15px;font-weight:700;letter-spacing:.5px}.cc-number{font-size:18px;letter-spacing:2.5px;font-family:Menlo,Consolas,monospace}.cc-bottom-row{display:flex;justify-content:space-between;align-items:flex-end}.cc-bottom-row .cc-label{opacity:.7;font-size:8.5px;text-transform:uppercase;display:block;margin-bottom:2px;letter-spacing:.5px}.cc-bottom-row .cc-value{font-size:13px;letter-spacing:1px}.cc-magstripe{height:34px;background:#111;margin:4px -20px 16px}.cc-cvv-strip{background:#fff;color:#1a1a1a;text-align:right;padding:8px 12px;margin:0 -20px;font-family:Menlo,Consolas,monospace;font-size:14px;letter-spacing:2px}.cc-back-hint{font-size:10px;opacity:.7;margin-top:10px}.card-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:4px}.card-fields .full{grid-column:1 / -1}.portal-topbar{background:var(--teal);color:#f3efe6;padding:14px 24px;display:flex;align-items:center;justify-content:space-between}.portal-topbar-left{display:flex;align-items:center;gap:10px}.portal-topbar-left .logo{width:32px;height:32px;border-radius:50%;background:var(--gold);color:var(--teal-dark);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:13px;overflow:hidden}.portal-topbar-left .logo img{width:100%;height:100%;object-fit:cover}.portal-topbar-left span.org-name{font-weight:600;font-size:14.5px}.portal-topbar-right{display:flex;align-items:center;gap:14px;font-size:13px}.portal-avatar{width:30px;height:30px;border-radius:50%;background:#235349;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600}.portal-topbar-right a{color:#cfe3dc;text-decoration:none;cursor:pointer}.portal-logout{background:none;border:none;padding:0;font:inherit;font-size:13px;color:#cfe3dc;cursor:pointer}.portal-logout:hover{text-decoration:underline}.portal-shell{display:flex;max-width:980px;margin:0 auto;padding:28px 20px 60px;gap:28px;align-items:flex-start}.portal-sidebar{flex:0 0 220px;position:sticky;top:20px}.portal-sidebar a.nav-item{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:8px;font-size:13.5px;font-weight:500;color:var(--text-muted);cursor:pointer;margin-bottom:2px;text-decoration:none}.portal-sidebar a.nav-item:hover{background:#ece8dd}.portal-sidebar a.nav-item.active{background:var(--teal);color:#fff}.portal-content{flex:1;min-width:0}.portal-give-split{display:flex;gap:24px;align-items:flex-start}.portal-give-split>.portal-card:first-child{flex:1;min-width:0;margin-bottom:0}.give-panel{flex:0 0 380px;max-width:380px;margin-bottom:0}@media (max-width: 1024px){.portal-give-split{flex-direction:column}.give-panel{flex:1 1 auto;max-width:none;width:100%}}.portal-card{background:var(--card);border-radius:14px;border:1px solid var(--border);padding:22px 24px;margin-bottom:16px}.portal-card h2{font-size:16px;font-weight:600;margin:0 0 4px}.portal-card .sub{font-size:13px;color:var(--text-muted);margin:0 0 16px}.portal-stat-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-bottom:16px}.portal-stat-card{background:#f7f5ef;border-radius:12px;padding:16px}.portal-stat-card .label{font-size:12px;color:var(--text-muted);margin-bottom:4px}.portal-stat-card .value{font-size:21px;font-weight:600;color:var(--teal)}.portal-quick-actions{display:flex;gap:10px;flex-wrap:wrap}.portal-quick-actions a{padding:9px 16px;border-radius:8px;border:1px solid var(--border);background:#fff;font-family:inherit;font-size:13px;font-weight:500;cursor:pointer;color:var(--teal);text-decoration:none;display:inline-block}.portal-quick-actions a.primary{background:var(--gold);border-color:var(--gold);color:var(--teal-dark)}table.portal-history{width:100%;border-collapse:collapse;font-size:13px}table.portal-history th{text-align:left;font-size:11.5px;text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted);padding:8px 6px;border-bottom:1px solid var(--border)}table.portal-history td{padding:10px 6px;border-bottom:1px solid var(--border)}table.portal-history tr:last-child td{border-bottom:none}.portal-pill{font-size:11px;font-weight:600;padding:3px 9px;border-radius:100px}.portal-pill.settled{background:#e6f0ec;color:var(--teal)}.portal-pill.failed{background:#fbeceb;color:var(--danger)}.portal-pref-row{display:flex;justify-content:space-between;align-items:center;padding:16px 0;border-bottom:1px solid var(--border);gap:16px}.portal-pref-row:last-child{border-bottom:none}.portal-pref-row .pref-title{font-size:14px;font-weight:500}.portal-pref-row .pref-desc{font-size:12.5px;color:var(--text-muted);margin-top:2px}.portal-pref-status{font-size:12px;margin-top:4px}.portal-pref-status.in{color:var(--teal)}.portal-pref-status.out{color:var(--text-muted)}.portal-switch{position:relative;display:inline-block;width:42px;height:24px;flex-shrink:0}.portal-switch input{opacity:0;width:0;height:0}.portal-slider{position:absolute;cursor:pointer;top:0;right:0;bottom:0;left:0;background:#d8d4c8;border-radius:24px;transition:.15s}.portal-slider:before{content:"";position:absolute;height:18px;width:18px;left:3px;bottom:3px;background:#fff;border-radius:50%;transition:.15s}.portal-switch input:checked+.portal-slider{background:var(--teal)}.portal-switch input:checked+.portal-slider:before{transform:translate(18px)}.portal-switch input:disabled+.portal-slider{opacity:.6;cursor:not-allowed}.portal-consent-disclosure{margin-top:18px;padding-top:16px;border-top:1px solid var(--border);font-size:11.5px;color:var(--text-muted);line-height:1.5}.portal-consent-disclosure p{margin:0 0 8px}.portal-consent-disclosure p:last-child{margin-bottom:0}.portal-consent-disclosure a{color:var(--teal)}.portal-plan-card{border:1px solid var(--border);border-radius:12px;padding:18px;display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.portal-plan-amount{font-size:24px;font-weight:600;color:var(--teal)}.portal-plan-amount span{font-size:13px;font-weight:400;color:var(--text-muted)}.portal-plan-meta{font-size:12.5px;color:var(--text-muted);margin-top:4px}.portal-status-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#3b8c6e;margin-right:5px}.portal-btn-row{display:flex;gap:8px;margin-top:14px;flex-wrap:wrap}.portal-btn-danger{padding:8px 14px;border-radius:8px;border:1px solid #eac6be;background:#fff;font-family:inherit;font-size:12.5px;font-weight:500;cursor:pointer;color:var(--danger)}.portal-btn-danger:disabled{opacity:.6;cursor:not-allowed}.scheduled-gift-row{border:1px solid var(--border);border-radius:12px;padding:16px 18px;display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.scheduled-gift-amount{font-size:19px;font-weight:600;color:var(--teal)}.scheduled-gift-meta{font-size:12.5px;color:var(--text-muted);margin-top:3px}.scheduled-gift-note{font-size:12.5px;color:var(--text-muted);margin-top:3px;font-style:italic}.status-pill{display:inline-block;padding:2px 9px;border-radius:20px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.status-pill.scheduled,.status-pill.charged{background:#eaf2ee;color:#3b8c6e}.status-pill.failed{background:#fbeceb;color:var(--danger)}.status-pill.canceled{background:#f1f0ec;color:var(--text-muted)}.payment-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:flex;align-items:center;justify-content:center;background:#0e2f298c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:po-fade-in .18s ease-out}.payment-overlay-card{background:var(--card);border-radius:16px;padding:32px 40px 26px;min-width:260px;display:flex;flex-direction:column;align-items:center;box-shadow:0 20px 50px #00000040}.payment-overlay-svg{width:140px;height:119px;overflow:visible}.payment-overlay-label{margin:14px 0 0;font-size:14.5px;font-weight:500;color:var(--teal-dark);text-align:center}.payment-overlay-dots{display:flex;gap:7px;margin-top:14px}.po-dot{width:7px;height:7px;border-radius:50%;background:var(--border);transition:background .25s ease}.po-dot-filled{background:var(--gold)}.po-hand{transform-origin:94px 96px;animation:po-hand-bob 1.8s ease-in-out infinite}.po-hand-settled{animation:none;transform:translateY(-2px) rotate(0)}.po-palm,.po-thumb,.po-index{fill:#e7c88a;stroke:#b07a28;stroke-width:2.5}.po-ring{fill:none;stroke:var(--gold);stroke-width:3;opacity:.55;animation:po-ring-pulse 1.8s ease-in-out infinite}.po-ball{fill:var(--teal);transition:fill .2s ease}.po-ball-done{fill:var(--teal-dark)}.po-check{stroke:#fff;stroke-dasharray:26;stroke-dashoffset:26;transition:stroke-dashoffset .4s ease .15s}.po-check-drawn{stroke-dashoffset:0}@keyframes po-fade-in{0%{opacity:0}to{opacity:1}}@keyframes po-hand-bob{0%,to{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-5px) rotate(2deg)}}@keyframes po-ring-pulse{0%,to{r:24;opacity:.35}50%{r:29;opacity:.7}}.staff-page{min-height:100vh;background:var(--bg)}.topbar{background:var(--teal);color:#f3efe6;padding:14px 24px;display:flex;align-items:center;justify-content:space-between}.staff-page.platform .topbar{background:var(--teal-dark)}.topbar-left{display:flex;align-items:center;gap:12px;font-size:14.5px;flex-wrap:wrap}.topbar-left .logo{width:30px;height:30px;border-radius:50%}.topbar-left b{font-weight:600}.topbar-left .org-sep,.topbar-left .crumb-sep{color:#6e9187}.topbar-left .org-name{color:#cfe3dc}.topbar-left .org-logo{width:22px;height:22px;border-radius:50%;object-fit:cover;background:#fff;border:1px solid rgba(255,255,255,.25)}.topbar-left a.crumb{color:#cfe3dc;text-decoration:none}.topbar-left a.crumb:hover{text-decoration:underline}.topbar-left .crumb-current{color:#f3efe6;font-weight:500}.platform-badge,.readonly-badge{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;padding:3px 8px;border-radius:100px}.platform-badge{background:var(--gold);color:var(--teal-dark)}.readonly-badge{background:#ffffff1f;color:#cfe3dc}.topbar-right{display:flex;align-items:center;gap:14px;font-size:13px}.topbar-right a{color:#cfe3dc;text-decoration:none;cursor:pointer}.topbar-right .role-select{width:auto;margin-bottom:0;font-size:12.5px;font-family:inherit;padding:6px 10px;border:1px solid #2c5c51;border-radius:8px;background:#0e2f29;color:#f3efe6}.avatar{width:30px;height:30px;border-radius:50%;background:#235349;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600}.shell{margin:0 auto;padding:24px 20px 60px}.shell.with-nav{display:flex;gap:24px;align-items:flex-start}nav.sidebar{flex:0 0 200px;position:sticky;top:20px}nav.sidebar a.nav-item{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:8px;font-size:13.5px;font-weight:500;color:var(--text-muted);cursor:pointer;margin-bottom:2px;text-decoration:none}nav.sidebar a.nav-item:hover{background:#ece8dd}nav.sidebar a.nav-item.active{background:var(--teal);color:#fff}.staff-page.platform nav.sidebar a.nav-item.active{background:var(--teal-dark)}.role-note{margin-top:18px;padding:12px 14px;border-radius:10px;background:#edeae0;font-size:11.5px;color:var(--text-muted);line-height:1.5}.role-note b{color:var(--text)}main.content{flex:1;min-width:0}.page-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.page-head h1{font-size:20px;font-weight:600;margin:0}.month-select{width:auto;margin-bottom:0;padding:7px 12px;font-size:13px}.card{background:var(--card);border-radius:14px;border:1px solid var(--border);padding:22px 24px;margin-bottom:16px}.card h2{font-size:16px;font-weight:600;margin:0 0 4px}.card .sub{font-size:13px;color:var(--text-muted);margin:0 0 16px}.muted{color:var(--text-muted)}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:16px}.stat-card{background:#f7f5ef;border-radius:12px;padding:16px}.stat-card .label{font-size:12px;color:var(--text-muted);margin-bottom:4px}.stat-card .value{font-size:21px;font-weight:600;color:var(--teal)}.stat-card .value.danger{color:var(--danger)}.stat-card .delta{font-size:11.5px;margin-top:4px;display:flex;align-items:center;gap:4px}.stat-card .delta .icon{width:14px;height:14px}.stat-card .delta.up{color:#2f7d52}.stat-card .delta.down{color:var(--danger)}table.tally{width:100%;border-collapse:collapse;font-size:13px}table.tally th{text-align:left;font-size:11.5px;text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted);padding:8px 6px;border-bottom:1px solid var(--border)}table.tally td{padding:12px 6px;border-bottom:1px solid var(--border);vertical-align:middle}table.tally tr:last-child td{border-bottom:none}.pill{font-size:10.5px;font-weight:600;padding:2px 8px;border-radius:100px}.pill.active{background:#e6f0ec;color:var(--teal)}.pill.pending{background:#fbf3e4;color:var(--gold-dark)}.quick-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:4px}.quick-actions a,.quick-actions button{padding:9px 16px;border-radius:8px;border:1px solid var(--border);background:#fff;font-family:inherit;font-size:13px;font-weight:500;cursor:pointer;color:var(--teal);text-decoration:none;display:inline-flex;align-items:center;gap:6px}.quick-actions a.primary{background:var(--gold);border-color:var(--gold);color:var(--teal-dark)}.quick-actions button:disabled{opacity:.5;cursor:default}.send-row{display:flex;gap:10px;align-items:center;margin-top:6px}.send-row button{padding:11px 18px;border-radius:8px;border:none;background:var(--gold);color:var(--teal-dark);font-family:inherit;font-size:13.5px;font-weight:600;cursor:pointer}.send-row button:hover:not(:disabled){background:var(--gold-dark);color:#fff}.send-row button:disabled{opacity:.55;cursor:not-allowed}.dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;background:#0e2f2973;animation:dialog-fade .15s ease-out}.dialog{position:fixed;z-index:71;top:50%;left:50%;transform:translate(-50%,-50%);width:calc(100vw - 32px);max-width:440px;max-height:calc(100vh - 48px);overflow-y:auto;background:var(--card);border-radius:14px;padding:24px 26px 20px;box-shadow:0 20px 50px #00000038;animation:dialog-rise .15s ease-out}.dialog.wide{max-width:600px}.dialog:focus{outline:none}.dialog-title{font-size:17px;font-weight:600;margin:0 28px 6px 0}.dialog-body{font-size:13.5px;color:var(--text-muted);line-height:1.5;margin:0 0 18px}.dialog-body p{margin:0 0 8px}.dialog-field{margin-bottom:4px}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:8px}.dialog-close{position:absolute;top:16px;right:16px;display:inline-flex;padding:4px;border:none;border-radius:6px;background:none;color:var(--text-muted);cursor:pointer}.dialog-close:hover{background:#f1efe8;color:var(--text)}@keyframes dialog-fade{0%{opacity:0}to{opacity:1}}@keyframes dialog-rise{0%{opacity:0;transform:translate(-50%,-48%)}to{opacity:1;transform:translate(-50%,-50%)}}.detail-head{display:flex;align-items:center;gap:14px;margin-bottom:18px}.detail-logo{width:48px;height:48px;border-radius:12px;object-fit:contain;background:#fff;border:1px solid var(--border);flex-shrink:0}.detail-logo.initials{display:flex;align-items:center;justify-content:center;background:var(--gold-dark);border:none;color:#fff;font-weight:700;font-size:15px}.detail-head h1{font-size:20px;font-weight:600;margin:0;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.detail-logo.account-initial{background:var(--teal);border-radius:50%}.detail-head .meta{font-size:12.5px;color:var(--text-muted);margin-top:3px}.detail-columns{display:grid;grid-template-columns:1fr 1fr;gap:0 16px;align-items:start}.card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:4px}.card-head .sub{margin-bottom:12px}.card-head-actions{display:flex;gap:8px;flex-shrink:0}.section-card.editing{border-color:var(--teal);box-shadow:0 0 0 3px #14423a14}dl.kv{display:grid;grid-template-columns:minmax(120px,40%) 1fr;gap:10px 14px;margin:4px 0 0;font-size:13.5px}dl.kv dt{color:var(--text-muted)}dl.kv dd{margin:0;min-width:0;overflow-wrap:anywhere}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}input.mono{font-size:13px;color:var(--teal)}.swatches{display:flex;gap:6px}.swatch{width:22px;height:22px;border-radius:6px;border:1px solid var(--border);display:inline-block}.copy-row{display:flex;gap:8px;align-items:center}.copy-row input{margin-bottom:0;flex:1;min-width:0}.fee-grid{display:grid;grid-template-columns:110px 1fr 1fr;gap:8px 10px;align-items:center;margin:4px 0 8px;font-size:13px}.fee-grid label,.fee-grid input{margin:0}.field-hint.flush{margin:0 0 14px}table.tally .action-col{text-align:right;white-space:nowrap}table.tally .action-col button+button{margin-left:14px}.account-trigger{display:inline-flex;align-items:center;gap:4px;padding:2px 4px 2px 2px;border:none;border-radius:100px;background:none;color:#cfe3dc;cursor:pointer}.account-trigger:hover,.account-trigger[data-state=open]{background:#ffffff1a}.account-trigger:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.account-trigger .avatar{color:#f3efe6}.menu{z-index:60;min-width:220px;background:var(--card);border:1px solid var(--border);border-radius:10px;padding:6px;box-shadow:0 12px 32px #00000024;animation:dialog-fade .12s ease-out}.menu-header{padding:8px 10px 10px}.menu-name{font-size:13.5px;font-weight:600}.menu-email{font-size:12.5px;color:var(--text-muted);overflow-wrap:anywhere}.menu-tenant{font-size:11.5px;color:var(--text-muted);margin-top:4px}.menu-separator{height:1px;background:var(--border);margin:2px 0 4px}.menu-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:6px;font-size:13.5px;color:var(--text);cursor:pointer;outline:none}.menu-item[data-highlighted]{background:#f1efe8}.menu-item .icon{color:var(--text-muted)}.pill-picker{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}.pill-picker .pick{padding:8px 14px;border:1px solid var(--border);border-radius:100px;font-size:12.5px;cursor:pointer;background:#fff}.pill-picker .pick.selected{border-color:var(--teal);background:var(--teal);color:#fff}.composer-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:22px;align-items:start}.audience-fixed{padding:10px 13px;font-size:13.5px;border:1px solid var(--border);border-radius:8px;background:#f7f5ef;margin-bottom:14px}.audience-fields{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:10px}.audience-field label{font-size:11.5px;font-weight:500;color:var(--text-muted);margin-bottom:4px}.audience-field input[type=number]{padding:8px 10px;font-size:13px;margin-bottom:0}.audience-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.audience-count{font-size:12.5px;color:var(--text-muted)}.campaign-card{border:1px solid var(--border);border-radius:10px;padding:14px 16px;margin-bottom:12px;background:#fff}.campaign-card .campaign-name{font-weight:600;margin-bottom:2px}.campaign-card .campaign-description{font-size:13px;color:var(--text-muted);margin:0 0 8px}.campaign-card .campaign-progress-track{background:#ece8dd}.campaign-footer{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:8px;flex-wrap:wrap}.campaign-raised{font-size:13px;color:var(--text-muted)}.campaign-card.on-brand{background:#ffffff0f;border-color:#ffffff2e;max-width:360px;margin-top:8px}.campaign-card.on-brand .campaign-description,.campaign-card.on-brand .campaign-raised{color:#cfe3dc}.campaign-card.on-brand .campaign-progress-track{background:#ffffff40}a.btn-block{display:flex;justify-content:center;align-items:center;width:100%;padding:12px;font-size:14.5px;text-decoration:none}input.otp-input{flex:1;min-width:140px;font-size:17px;letter-spacing:.1em;margin-bottom:0}.action-col{text-align:right}.chart-bar .bar-count{position:absolute;top:-20px;left:0;right:0;text-align:center;font-size:11.5px;font-weight:600;color:var(--teal, #14423A)}.chart-bar{width:100%;max-width:52px;background:var(--teal, #14423A);border-radius:6px 6px 0 0;position:relative}.chart-bar-col{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%}.chart-bar-label{font-size:11px;color:var(--text-muted, #6B6B66);margin-top:8px;text-align:center}.chart-wrap{display:flex;align-items:flex-end;gap:14px;height:160px;padding:10px 4px 0}.export-btn{font-size:13px;font-family:inherit;font-weight:500;padding:7px 14px;border:1px solid var(--border, #E4E1D8);border-radius:8px;background:#fff;color:var(--teal, #14423A);cursor:pointer}.export-btn:disabled{opacity:.6;cursor:default}.export-btn:hover{background:#f7f5ef}.link-box{font-size:13px;font-family:monospace;background:#f7f5ef;border-radius:8px;padding:10px 12px;word-break:break-all;color:var(--teal, #14423A)}.link-danger{background:none;border:none;color:var(--danger, #B4432F);font-family:inherit;font-size:12.5px;font-weight:500;cursor:pointer;padding:0}.link-danger:disabled{opacity:.6;cursor:default}.method-bar .seg.ach{background:#6b4e9e}.method-bar .seg.approved{background:#2f7d52}.method-bar .seg.declined{background:var(--danger, #B4432F)}.method-bar .seg.onetime{background:var(--gold, #D69E3A)}.method-bar .seg.recurring{background:var(--teal, #14423A)}.method-bar{display:flex;width:100%;height:14px;border-radius:7px;overflow:hidden;margin-bottom:16px}.qr-preview{width:96px;height:96px;border-radius:8px;border:1px solid var(--border, #E4E1D8);flex-shrink:0}.rollup-col{text-align:center}table.method-legend .method-name{display:flex;align-items:center}table.method-legend .num-col{text-align:right;color:var(--text-muted, #6B6B66)}table.method-legend .pct-col{text-align:right;width:60px;font-weight:600;color:var(--text, #1A1A1A)}table.method-legend .swatch{width:10px;height:10px;border-radius:2px;display:inline-block;margin-right:8px}table.method-legend .swatch.ach{background:#6b4e9e}table.method-legend .swatch.approved{background:#2f7d52}table.method-legend .swatch.declined{background:var(--danger, #B4432F)}table.method-legend .swatch.onetime{background:var(--gold, #D69E3A)}table.method-legend .swatch.recurring{background:var(--teal, #14423A)}table.method-legend td{padding:8px 6px;border-bottom:1px solid var(--border, #E4E1D8)}table.method-legend tr:last-child td{border-bottom:none}table.method-legend{width:100%;border-collapse:collapse;font-size:13px}tr.isv-row .chevron{color:var(--text-muted, #6B6B66);font-size:12px}tr.isv-row .isv-logo{width:26px;height:26px;border-radius:7px;background:var(--gold-dark, #B07A28);color:#fff;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}tr.isv-row .isv-name{display:flex;align-items:center;gap:8px;font-weight:500}tr.isv-row{cursor:pointer}tr.isv-row:hover{background:#faf8f2}@media (max-width: 1024px){.stat-grid{grid-template-columns:repeat(2,1fr)}.detail-columns{grid-template-columns:1fr}}@media (max-width: 768px){.topbar{padding:10px 16px;flex-wrap:wrap;gap:8px}.topbar-right{flex-wrap:wrap;gap:10px}.shell{padding:16px 14px 48px}.shell.with-nav{flex-direction:column;gap:14px;align-items:stretch}nav.sidebar{position:sticky;top:0;z-index:5;flex:none;display:flex;gap:4px;overflow-x:auto;margin:0 -14px;padding:8px 14px;background:var(--bg);border-bottom:1px solid var(--border);scrollbar-width:none}nav.sidebar::-webkit-scrollbar{display:none}nav.sidebar a.nav-item{white-space:nowrap;margin-bottom:0;padding:8px 12px}nav.sidebar .role-note{display:none}.card{padding:18px 16px;overflow-x:auto}.page-head{flex-wrap:wrap;gap:10px}.card-head{flex-wrap:wrap}.composer-grid{grid-template-columns:1fr}.split-shell{flex-direction:column}.brand-panel{flex:none;padding:24px 20px}.brand-panel p{display:none}.form-panel{padding:24px 16px 40px;align-items:flex-start}.portal-topbar{padding:12px 16px;flex-wrap:wrap;gap:8px}.portal-shell{flex-direction:column;padding:16px 14px 48px;gap:14px}.portal-sidebar{position:sticky;top:0;z-index:5;flex:none;display:flex;gap:4px;overflow-x:auto;margin:0 -14px;padding:8px 14px;background:var(--bg);border-bottom:1px solid var(--border);scrollbar-width:none}.portal-sidebar::-webkit-scrollbar{display:none}.portal-sidebar a.nav-item{white-space:nowrap;margin-bottom:0}.portal-card{padding:18px 16px;overflow-x:auto}}@media (max-width: 520px){.stat-grid,.portal-stat-grid,.form-grid,.form-grid.cols-3{grid-template-columns:1fr}.form-grid .span-2,.form-grid .span-3{grid-column:auto}.form-row{flex-direction:column;gap:0}.audience-fields{grid-template-columns:1fr}.amount-presets{grid-template-columns:repeat(2,1fr)}dl.kv{grid-template-columns:1fr;gap:2px}dl.kv dd{margin-bottom:10px}.form-actions{flex-direction:column-reverse}.form-actions>*{width:100%;justify-content:center}.copy-row{flex-direction:column;align-items:stretch}.dialog{padding:20px 18px 16px}.portal-plan-card,.scheduled-gift-row{flex-direction:column;align-items:flex-start}}
