/* Grouped settings with bank management that expands inside the current screen. */
.settings-page{padding-bottom:18px}
.settings-page .settings-profile{gap:12px;padding:17px 15px;margin-bottom:22px;border-radius:18px;background:#fcfcfd;border-color:#e7e7eb}
.settings-page .settings-profile>.tile{width:42px;height:42px;flex-basis:42px;border-radius:50%;background:#e5f3e9;color:#23934e}
.settings-page .settings-profile-copy h2{font-size:15px;line-height:1.5;letter-spacing:-.3px}
.settings-page .settings-profile-copy p{font-size:11px;line-height:1.6;color:#75757e;margin-top:3px}
.settings-profile-copy{min-width:0;flex:1}
.settings-profile-copy p{overflow-wrap:anywhere}
.settings-avatar{display:grid;place-items:center;flex:0 0 48px;width:48px;height:48px;border-radius:50%;overflow:hidden;background:#e5f3e9;color:#23934e;touch-action:manipulation}
.settings-avatar img{display:block;width:100%;height:100%;object-fit:cover}
.settings-profile-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0;flex-wrap:wrap}
.settings-profile-heading h2{min-width:0;overflow-wrap:anywhere}
.settings-photo-link{display:inline-flex;align-items:center;justify-content:flex-end;min-height:36px;margin:-7px -6px -7px 0;padding:7px 6px;border-radius:8px;font-size:11px;font-weight:600;color:var(--brand-accent);white-space:nowrap;touch-action:manipulation}
.settings-photo-link:focus-visible{outline:2px solid var(--brand-accent);outline-offset:2px}
.profile-photo-editor{display:grid;justify-items:center;gap:14px;padding:12px 0 24px;min-width:0}
.profile-photo-preview{display:grid;place-items:center;width:112px;height:112px;overflow:hidden;border-radius:50%;background:#e5f3e9;color:#23934e}
.profile-photo-preview img{display:block;width:100%;height:100%;object-fit:cover}
.profile-photo-note{margin:0;font-size:13px;line-height:1.6;text-align:center;color:#777780}
.profile-photo-choose{position:relative;display:flex;align-items:center;justify-content:center;width:100%;min-height:48px;padding:12px 18px;background:var(--brand-surface);color:var(--brand-accent);border-radius:99px;font-size:14px;font-weight:650;cursor:pointer;overflow:hidden}
.profile-photo-choose input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
.profile-photo-choose:focus-within{outline:3px solid #3d7ded;outline-offset:3px}
.profile-photo-choose:has(input:disabled){opacity:.55;cursor:wait}
.profile-photo-remove{min-height:44px;padding:8px 16px;font-size:13px;font-weight:600;color:#b3343f}
.profile-photo-status{min-height:21px;margin:0;text-align:center;font-size:12px;line-height:1.7;color:#777780;overflow-wrap:anywhere}
.settings-group{margin-top:24px;min-width:0}
.settings-group>h2{font-size:11px;font-weight:600;color:#797980;letter-spacing:.25px;padding:0 12px;margin:0 0 9px}
.settings-group-rows,.settings-danger{background:#fcfcfd;border:1px solid #e6e6ea;border-radius:16px;overflow:hidden;min-width:0}
.settings-row{display:flex;align-items:center;gap:13px;width:100%;min-width:0;min-height:58px;padding:15px;text-align:left;background:transparent;color:#252529;touch-action:manipulation}
.settings-row+.settings-row{position:relative}
.settings-row+.settings-row::before{content:"";position:absolute;top:0;left:48px;right:15px;height:1px;background:#eaeaec}
.settings-row-icon{display:grid;place-items:center;flex:0 0 22px;width:22px;height:24px;color:#5a5a63}
.settings-row-icon>svg{display:block}
.settings-row-copy{display:block;flex:1;min-width:0}
.settings-row-title{display:block;font-size:13px;font-weight:600;line-height:1.6;overflow-wrap:anywhere}
.settings-row-detail{display:block;font-size:10px;font-weight:400;line-height:1.6;color:#84848c;margin-top:2px;overflow-wrap:anywhere}
.settings-row-chevron{display:grid;place-items:center;flex:0 0 15px;color:#919198}
.settings-row:focus-visible{outline:3px solid #3d7ded;outline-offset:-4px;border-radius:12px}
.settings-banks{min-width:0;background:#fcfcfd;border:1px solid #e6e6ea;border-radius:16px;overflow:hidden}
.settings-banks>.settings-group-rows{background:transparent;border:0;border-radius:0}
.settings-banks-toggle{min-height:72px;gap:11px}
.settings-bank-count{display:grid;place-items:center;min-width:25px;height:25px;padding:0 7px;border-radius:50px;background:#ededf0;color:#66666f;font-size:11px;font-weight:600;font-variant-numeric:tabular-nums;flex:none}
.settings-banks-toggle .settings-row-chevron{transition:transform 220ms cubic-bezier(.2,.8,.2,1)}
.settings-banks-toggle[aria-expanded=true] .settings-row-chevron{transform:rotate(90deg)}
.settings-bank-panel{min-width:0;padding:0;border-top:1px solid #e6e6ea;animation:settings-panel-in 260ms cubic-bezier(.2,.8,.2,1) both;transform-origin:top center}
.settings-bank-panel[hidden]{display:none!important}
.settings-page .settings-bank-panel .bank-connections,.settings-page .settings-bank-panel .bank-manual-accounts{margin:0;padding:0;border:0}
.settings-bank-panel .bank-section-heading{padding:4px 15px;margin:0;background:#f7f7f9}
.settings-page .settings-bank-panel .bank-manual-accounts{border-top:1px solid #e6e6ea}
.settings-bank-panel .bank-section-heading h3{font-size:11px;font-weight:600;color:#777780}
.settings-bank-panel .bank-connections-refresh{font-size:10px}
.settings-bank-panel .bank-connections-note{padding:8px 15px;margin:0}
.settings-bank-panel .bank-connections>.form-error{padding:8px 15px;margin:0}
.settings-bank-panel .bank-connections .bank-connection-card,.settings-bank-panel .bank-manual-accounts .bank-connection-card{margin:0;border:0;border-radius:0;box-shadow:none;background:transparent}
.settings-bank-panel .bank-connection-card+.bank-connection-card{border-top:1px solid #e6e6ea}
.settings-bank-panel .bank-connections-empty{border:0;border-radius:0;background:transparent}
.settings-bank-actions{margin:14px -4px 0}
.settings-row:disabled{cursor:default}
.settings-row-icon>.bank-spinner{width:18px;height:18px}
.settings-page .settings-bank-panel .bank-progress{margin:12px 15px 15px}
.settings-danger{margin-top:24px;background:transparent;border-color:#eadcde}
.settings-row-danger,.settings-row-danger .settings-row-icon{color:#b3343f}
.settings-danger .settings-row-chevron{color:#b97a80}
.settings-status{font-size:11px;line-height:1.8;color:#76767f;padding:0 4px;margin:0 0 18px;overflow-wrap:anywhere}
.settings-verify{width:100%;margin-bottom:18px}
@keyframes settings-panel-in{from{opacity:.4;transform:translateY(-7px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:360px){.settings-row{gap:10px;padding:14px 12px}.settings-row-title{font-size:12px}.settings-row-detail{font-size:10px}.settings-page .settings-profile{padding:15px 13px}.settings-bank-panel{padding-inline:0}.settings-bank-actions{margin-inline:0}.settings-bank-count{min-width:23px;height:23px;font-size:10px}}
@media(prefers-reduced-motion:reduce){.settings-bank-panel{animation:none}.settings-banks-toggle .settings-row-chevron{transition:none}}
