/* v136 — Dashboard only: screenshot-matched rotating shortcuts, compact Goals panel and
   isolated Savings Goal dialog. Account cards, nav, notifications and inner pages untouched. */
#tab-home.active {
  height: auto; max-height: none; overflow: hidden; overscroll-behavior: none;
  padding-bottom: calc(86px + env(safe-area-inset-bottom, 0px));
}
#tab-home .dashboard-actions {
  position: relative; display: block; height: 154px; margin: 12px -16px 0;
  overflow: hidden; perspective: 800px; touch-action: pan-y;
  outline: none;
}
#tab-home .dashboard-actions .dashboard-action-card {
  position: absolute; top: 50%; left: 50%; width: 112px; min-height: 120px;
  padding: 10px 6px 9px; border-radius: 22px;
  transition: transform .13s ease-out, opacity .13s ease-out, box-shadow .13s ease-out;
  transform-origin: center; backface-visibility: hidden;
  box-shadow: 0 7px 14px rgba(25,53,34,.12);
  cursor: pointer; will-change: transform;
}
#tab-home .dashboard-actions .dashboard-action-card.sg-wheel-center {
  border-color: rgba(64,137,91,.65); box-shadow: 0 9px 20px rgba(25,53,34,.13), inset 0 0 0 .6px rgba(64,137,91,.20);
}
#tab-home .dashboard-actions .dashboard-action-icon {width:51px;height:51px;border-radius:15px}
#tab-home .dashboard-actions .dashboard-action-icon svg {width:30px;height:30px}
#tab-home .dashboard-actions .dashboard-action-label {font-size:12px;line-height:1.14;margin-top:7px}
#tab-home .dashboard-actions .dashboard-badge {top:-5px;right:4px}
#tab-home .dashboard-wheel-dots {display:flex;justify-content:center;align-items:center;gap:10px;height:15px;margin:0 0 6px}
#tab-home .dashboard-wheel-dots button {width:7px;height:7px;border-radius:100%;border:0;padding:0;background:#d1ddd2;cursor:pointer}
#tab-home .dashboard-wheel-dots button[aria-current="true"] {background:#40895b;transform:scale(1.28)}
/* Match supplied screenshot: one featured savings-goal card, no redundant shortcut. */
#tab-home .sg-dashboard-panel {margin:4px 0 0;padding:12px;border-radius:23px;box-shadow:0 7px 20px rgba(18,44,28,.10);background:rgba(248,245,238,.90);border:1px solid rgba(224,232,221,.55)}
#tab-home .sg-dashboard-head {margin-bottom:9px;display:flex;align-items:center;justify-content:space-between;gap:5px}
#tab-home .sg-dashboard-heading {display:flex;align-items:center;gap:9px;min-width:0}
#tab-home .sg-dashboard-target-icon {display:grid;place-items:center;flex-shrink:0;width:42px;height:42px;border-radius:13px;background:#e6f1e9;color:#40895b;font-size:30px;font-weight:700}
#tab-home .sg-dashboard-head h2 {font-size:22px;line-height:1.1;font-family:var(--serif);font-weight:700;white-space:nowrap}
#tab-home .sg-dashboard-head button {font-size:13px}
#tab-home .sg-dashboard-hero {display:block;min-height:0;padding:10px;background:#fff;border-radius:18px}
#tab-home .sg-dashboard-content {display:block;width:100%;font-size:13px;color:#17291d}
#tab-home .sg-feature {display:grid;grid-template-columns:81px minmax(0,1fr);gap:12px;align-items:start}
#tab-home .sg-feature-art {width:81px;height:92px;border-radius:15px;background:linear-gradient(155deg,#cce6d5,#edf2dc);display:grid;place-items:center;font-size:41px;line-height:1}
#tab-home .sg-feature-type {font-size:9px;letter-spacing:.12em;color:#40895b;font-weight:800;text-transform:uppercase}
#tab-home .sg-feature-name {display:block;margin-top:4px;font-size:19px;font-weight:800;line-height:1.05;color:#14261b;overflow-wrap:anywhere}
#tab-home .sg-feature-progress {margin-top:9px;height:9px;background:#e0ebe3;border-radius:9px;overflow:hidden}
#tab-home .sg-feature-progress>i {display:block;height:100%;background:#40895b;border-radius:9px}
#tab-home .sg-feature-stats {display:flex;justify-content:space-between;align-items:baseline;gap:5px;margin-top:7px;color:#65766b;font-size:11px}
#tab-home .sg-feature-stats strong {color:#15251b;font-size:15px;font-weight:800}
#tab-home .sg-feature-stats em {color:#40895b;font-size:14px;font-style:normal;font-weight:750}
#tab-home .sg-feature-bottom {display:flex;gap:8px;align-items:center;justify-content:space-between;margin-top:9px;padding:5px 7px;border-radius:12px;background:#eef5ee}
#tab-home .sg-feature-bottom small {color:#405e4b;font-size:11px;line-height:1.3;font-weight:650;min-width:0}
#tab-home .sg-feature-bottom button {flex:none;border:0;border-radius:11px;background:#40895b;color:#fff;font-size:12px;font-weight:800;padding:10px 12px}
#tab-home .sg-feature-edit {border:0;background:none;padding:0;text-align:left;color:inherit;width:100%}
#tab-home .sg-feature-empty {display:flex;justify-content:space-between;align-items:center;gap:10px;padding:11px 8px}
#tab-home .sg-feature-empty strong {font-size:16px;display:block}
#tab-home .sg-feature-empty small {display:block;color:#65766b;font-size:12px;line-height:1.4;margin-top:5px}
#tab-home .sg-feature-empty button {border:0;background:#40895b;color:#fff;border-radius:12px;padding:11px;font-size:12px;font-weight:800;white-space:nowrap}
/* At the short 853pt viewport compact only new page sections; do not resize original bank cards. */
@media(max-height:890px) {
 #tab-home .dashboard-actions {height:134px;margin-top:7px}
 #tab-home .dashboard-actions .dashboard-action-card {min-height:108px;width:104px;padding:7px 5px}
 #tab-home .dashboard-actions .dashboard-action-icon {width:44px;height:44px}
 #tab-home .dashboard-actions .dashboard-action-icon svg {width:26px;height:26px}
 #tab-home .dashboard-actions .dashboard-action-label {font-size:11px;margin-top:6px}
 #tab-home .sg-dashboard-panel {padding:9px}
 #tab-home .sg-dashboard-head {margin-bottom:6px}
 #tab-home .sg-dashboard-target-icon {width:34px;height:34px;font-size:25px}
 #tab-home .sg-dashboard-head h2 {font-size:19px}
 #tab-home .sg-dashboard-hero {padding:8px}
 #tab-home .sg-feature {grid-template-columns:65px minmax(0,1fr);gap:9px}
 #tab-home .sg-feature-art {width:65px;height:77px;font-size:34px}
 #tab-home .sg-feature-name {font-size:17px}
 #tab-home .sg-feature-progress {margin-top:7px}
 #tab-home .sg-feature-bottom {margin-top:7px}
}
/* Popup is deliberately not inside the Dashboard or app scrolling layer. */
#sg-quick-modal.sg-quick-overlay {position:fixed;inset:0;z-index:250;display:flex;align-items:center;justify-content:center;padding:max(12px,env(safe-area-inset-top)) 13px max(12px,env(safe-area-inset-bottom));background:rgba(12,23,17,.57);overscroll-behavior:contain}
#sg-quick-modal[hidden] {display:none!important}
#sg-quick-modal .sg-quick-card {box-sizing:border-box;width:min(100%,390px);max-height:calc(100dvh - 44px);overflow-y:auto;overscroll-behavior:contain;background:#fdfcf8;color:#17251d;border:1px solid #dfe5dd;border-radius:22px;padding:17px 17px 12px;box-shadow:0 24px 60px rgba(18,38,27,.22);-webkit-overflow-scrolling:touch}
#sg-quick-modal .sg-quick-titlebar {display:flex;align-items:center;gap:9px;margin-bottom:7px;flex:0 0 auto}
#sg-quick-modal .sg-quick-symbol {display:grid;place-items:center;flex:none;width:39px;height:39px;background:#e7f2e9;border-radius:12px;color:#40895b;font-size:25px}
#sg-quick-modal .sg-quick-titlebar h2 {font-family:var(--serif);font-size:23px;font-weight:600;line-height:1.15;flex:1;min-width:0;color:#111512}
#sg-quick-modal .sg-quick-close {width:36px;height:36px;border:0;background:none;font-size:29px;color:#59675d}
#sg-quick-modal label {display:block;color:#6e7e73;font-size:12px;font-weight:700;line-height:1.25;margin:7px 0 4px;letter-spacing:0;text-transform:none}
#sg-quick-modal .sg-quick-field {display:block;box-sizing:border-box;width:100%;max-width:100%;min-width:0;min-height:46px;background:#fffdf8;color:#17251d;border:1px solid #d9e1d8;border-radius:14px;padding:10px 11px;font-size:15px;line-height:1.25;outline-color:#40895b;-webkit-appearance:none;appearance:none}
#sg-quick-modal .sg-quick-two {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:11px;align-items:end}
#sg-quick-modal .sg-quick-two>div {min-width:0;max-width:100%}
#sg-quick-modal .sg-quick-two>div>label {min-height:30px;display:flex;align-items:flex-end}
#sg-quick-modal .sg-quick-payday-row {grid-template-columns:minmax(0,1fr);gap:0}
#sg-quick-modal .sg-quick-payday-row>div>label {min-height:0}
#sg-quick-modal input[type="date"] {font-size:14px;min-width:0;max-width:100%}
#sg-quick-modal .sg-quick-payhead {margin:12px 0 1px;font-size:15px;font-weight:750;color:#1a3927;border-top:1px solid #e3eae2;padding-top:13px}
#sg-quick-modal .sg-quick-estimate {margin-top:14px;background:#e7f2e9;border-radius:14px;padding:12px;color:#284d35;font-size:12px;line-height:1.45}
#sg-quick-modal .sg-q-major {font-size:25px;font-weight:800;color:#257343;display:block;margin:2px 0 3px}
#sg-quick-modal .sg-q-row {display:flex;justify-content:space-between;gap:10px;margin-top:6px}
#sg-quick-modal .sg-q-row span:last-child {font-weight:800}
#sg-quick-modal .sg-q-notice {display:block;margin-top:9px;color:#5d715f;font-size:11px}
#sg-quick-modal .sg-q-warn {color:#8a5c19}
#sg-quick-modal .sg-quick-error {color:#ad2630;font-size:12px;margin-top:8px}
#sg-quick-modal .sg-quick-submit {display:block;width:100%;border:0;border-radius:13px;background:#40895b;color:#fff;min-height:47px;margin-top:12px;font-size:15px;font-weight:750}
#sg-quick-modal .sg-quick-cancel {display:block;width:100%;border:1px solid #d9e1d8;border-radius:13px;background:transparent;color:#56665d;min-height:45px;margin-top:7px;font-size:14px;font-weight:700}
@media(max-height:760px) {#sg-quick-modal .sg-quick-card{max-height:calc(100dvh - 28px);padding:12px 14px}}
#tab-home .sg-feature-photo {background:#e8f2eb url('/sg-vacation-thumb.jpg') center/cover no-repeat;font-size:0}
/* Goal summary uses the available lower dashboard area while retaining a true fixed screen. */
@media(min-height:891px) {
 #tab-home .dashboard-actions {height:172px}
 #tab-home .dashboard-actions .dashboard-action-card {min-height:136px;width:119px}
 #tab-home .sg-dashboard-panel {padding:14px}
 #tab-home .sg-dashboard-head {margin-bottom:12px}
 #tab-home .sg-dashboard-hero {padding:13px}
 #tab-home .sg-feature {grid-template-columns:95px minmax(0,1fr);gap:12px}
 #tab-home .sg-feature-art {width:95px;height:112px;font-size:47px}
 #tab-home .sg-feature-name {font-size:21px;margin-top:6px}
 #tab-home .sg-feature-progress {margin-top:12px;height:10px}
 #tab-home .sg-feature-stats {margin-top:10px}
 #tab-home .sg-feature-bottom {margin-top:13px;padding:7px 9px}
}
#tab-home .sg-feature-progress {display:block;width:100%;}
#tab-home .sg-feature-progress>i {display:block;}
/* Reserve the carousel's former vertical space for the featured goal, not page scrolling. */
#tab-home .sg-dashboard-panel {min-height:clamp(305px, calc(100dvh - 577px), 355px);display:flex;flex-direction:column}
#tab-home .sg-dashboard-hero {flex:1;display:flex;flex-direction:column;justify-content:center}
#tab-home .sg-dashboard-content {flex:1;display:flex;flex-direction:column;justify-content:center}
@media(min-height:891px) {
}

/* Keep Save and Cancel accessible while the detailed calculator scrolls inside the popup. */
#sg-quick-modal .sg-quick-card {display:flex;flex-direction:column;overflow:hidden}
#sg-quick-modal #sg-quick-form {display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow:hidden}
#sg-quick-modal .sg-quick-input-scroll {flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:0 2px 10px}
#sg-quick-modal .sg-quick-footer {position:relative;flex:0 0 auto;z-index:2;background:#fdfcf8;padding:9px 0 2px;border-top:1px solid #e5eae3}
#sg-quick-modal .sg-quick-footer .sg-quick-submit {margin-top:0}

/* v138 — Correct the three reported v137 defects. Changes scoped to new Dashboard Goals + wheel/popup. */
/* Empty goal state must never expand behind navigation. No solid white insert. */
#tab-home .sg-dashboard-panel {
  min-height:0; height:auto; flex:0 0 auto; margin-top:5px;
  background:rgba(248,245,238,.94);
  border:1px solid rgba(214,226,215,.75);
}
#tab-home .sg-dashboard-hero {
  min-height:0; flex:0 0 auto; display:block; justify-content:initial;
  background:#f1f6ee; border:1px solid #dae5da;
}
#tab-home .sg-dashboard-content {min-height:0; flex:none; display:block;}
#tab-home .sg-feature-empty {min-height:0; padding:13px 9px; gap:12px;}
#tab-home .sg-feature-empty strong {font-size:15px;line-height:1.2;}
#tab-home .sg-feature-empty small {font-size:12px;line-height:1.28;}
#tab-home .sg-feature-empty button {padding:11px 12px;}
/* Keep the same space below the goals card even on a short iPhone. */
#tab-home .sg-dashboard-panel {margin-bottom:12px;}
/* The wheel must move with the finger instead of waiting for touchend. */
#tab-home .dashboard-actions .dashboard-action-card {
  transition: transform .085s ease-out, opacity .085s ease-out, box-shadow .085s ease-out;
}
#tab-home .dashboard-actions.sg-wheel-dragging .dashboard-action-card {transition:none !important;}
/* Savings Goal editor now follows the approved Bill Details dialog's surface and typography. */
#sg-quick-modal.sg-quick-overlay {
  background:rgba(8,21,14,.52);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);
  padding:max(12px,env(safe-area-inset-top)) 16px max(12px,env(safe-area-inset-bottom));
}
#sg-quick-modal .sg-quick-card {
  width:min(100%,440px);
  max-height:calc(100dvh - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 28px);
  padding:18px 18px 19px;
  border:1px solid #d8e3d9; border-radius:26px;
  background:#f8fbf6;color:#111512;
  box-shadow:0 22px 64px rgba(0,0,0,.19);
}
#sg-quick-modal .sg-quick-titlebar {
  position:relative; display:flex; flex-direction:column; align-items:stretch;
  justify-content:flex-end;gap:0; flex:0 0 auto;
  padding:45px 1px 0; margin-bottom:9px;
}
#sg-quick-modal .sg-quick-symbol {display:none;}
#sg-quick-modal .sg-quick-eyebrow {
  display:block;font-size:10px;line-height:1.2;font-weight:800;
  color:#40895b;letter-spacing:.14em;text-transform:uppercase;margin-bottom:9px;
}
#sg-quick-modal .sg-quick-titlebar h2 {
  font-family:var(--serif);font-size:clamp(27px,7vw,34px);
  font-weight:600;line-height:1.1;letter-spacing:-.035em;color:#111512;
}
#sg-quick-modal .sg-quick-close {
  position:absolute;top:0;right:0;display:grid;place-items:center;
  width:42px;height:42px;padding:0;border-radius:50%;border:0;
  background:#eef3eb;color:#40895b;font-size:27px;line-height:1;cursor:pointer;
}
#sg-quick-modal label {
  display:block;min-height:0;color:#6b7970;
  font-size:10px;font-weight:750;line-height:1.3;letter-spacing:.11em;
  text-transform:uppercase;margin:13px 0 8px;
}
#sg-quick-modal .sg-quick-two,
#sg-quick-modal .sg-quick-payday-row {
  display:grid;grid-template-columns:minmax(0,1fr);gap:0;align-items:initial;
}
#sg-quick-modal .sg-quick-two>div>label,
#sg-quick-modal .sg-quick-payday-row>div>label {min-height:0;display:block;}
#sg-quick-modal .sg-quick-field {
  display:block;box-sizing:border-box;width:100%;max-width:100%;min-width:0;
  min-height:48px;padding:12px 15px;font-size:16px;line-height:1.3;
  background:#fffdf8;border:1px solid rgba(35,67,50,.16);border-radius:14px;
  color:#111512;outline:none;-webkit-appearance:none;appearance:none;
}
#sg-quick-modal .sg-quick-field:focus {border-color:#40895b;}
#sg-quick-modal .sg-quick-field::placeholder {color:#94a098;}
#sg-quick-modal .sg-quick-payhead {
  margin:20px 0 2px;border-top:1px solid #dce5dd;padding-top:16px;
  font-size:17px;font-weight:800;color:#17271c;
}
#sg-quick-modal .sg-quick-input-scroll {padding:0 2px 12px;}
#sg-quick-modal .sg-quick-footer {
  background:#f8fbf6;border-top:1px solid #dce5dd;padding:10px 0 0;
}
#sg-quick-modal .sg-quick-submit {
  min-height:49px;background:#40895b;border-radius:14px;font-size:15px;font-weight:750;
  box-shadow:0 6px 16px rgba(13,139,86,.16);
}
#sg-quick-modal .sg-quick-cancel {
  min-height:45px;border:1px solid rgba(35,67,50,.16);border-radius:14px;
  background:#fffdf8;color:#56665d;
}
@media(max-height:760px) {
  #sg-quick-modal .sg-quick-card {max-height:calc(100dvh - 26px);padding:13px 14px;}
}
/* Position only the new savings panel a consistent distance above the fixed nav.
   The original clock, accounts and carousel keep their existing dimensions and order. */
#tab-home.active {
  display:flex;
  flex-direction:column;
  height:calc(100dvh - 97px - env(safe-area-inset-top,0px) - max(0px, env(safe-area-inset-bottom,0px) - 18px));
  padding-bottom:0;
}
#tab-home .dashboard-top-actions,
#tab-home .dashboard-clock-wrap,
#tab-home .dashboard-account-grid,
#tab-home .dashboard-actions,
#tab-home .dashboard-wheel-dots {flex-shrink:0;}
#tab-home .sg-dashboard-panel {margin-top:auto;margin-bottom:12px;flex-shrink:0;}

/* v139 — Approved compact Dashboard redesign. Scope: Home screen and goal picker only. */
#tab-home.active { justify-content:flex-start; }
/* Shrink and raise the clock/date without relocating logout or notifications. */
#tab-home .dashboard-top-actions {height:48px;}
#tab-home .dashboard-summary {margin-top:-44px;padding:0 0 7px;}
#tab-home .dashboard-summary .clock {font-size:clamp(48px,13.4vw,62px);line-height:.94;letter-spacing:-.047em;}
#tab-home .dashboard-summary .home-date {margin-top:2px;font-size:clamp(15px,3.5vw,17px);line-height:1.1;}
/* Stack the same two editable accounts in wide rows, keeping their original slot IDs/actions. */
#tab-home .dashboard-account-grid {display:flex;flex-direction:column;gap:8px;margin-top:9px;}
#tab-home .dashboard-account-card {
  position:relative;box-sizing:border-box;height:88px;min-height:88px;max-height:88px;
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,52%);
  grid-template-rows:minmax(0,1fr) 16px;gap:0 7px;align-items:center;
  border-radius:19px;padding:10px 13px;box-shadow:0 6px 15px rgba(27,47,33,.10);
}
#tab-home .dashboard-account-card#dashboard-account-slot-1 {order:-1;}
#tab-home .dashboard-account-head {grid-column:1;grid-row:1;align-self:center;grid-template-columns:42px minmax(0,1fr);gap:9px;align-items:center;}
#tab-home .dashboard-account-icon {width:42px;height:42px;border-radius:12px;}
#tab-home .dashboard-account-icon svg {width:26px;height:26px;}
#tab-home .dashboard-account-name {font-size:clamp(14px,3.8vw,17px);line-height:1.12;font-weight:750;white-space:normal;overflow-wrap:anywhere;text-overflow:clip;}
#tab-home .dashboard-chevron {position:absolute;right:11px;top:50%;transform:translateY(-55%);font-size:29px;pointer-events:none;}
#tab-home .dashboard-account-balance {grid-column:2;grid-row:1 / span 2;min-width:0;max-width:100%;margin:0;padding-right:16px;text-align:right;font-size:clamp(18px,6vw,29px);line-height:1.08;letter-spacing:-.035em;overflow:visible;white-space:nowrap;}
#tab-home .dashboard-account-sub {grid-column:1;grid-row:2;align-self:center;min-width:0;margin:0 0 0 51px;font-size:clamp(10px,2.7vw,12px);color:#66766b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
/* Smaller swipeable wheel, retaining existing six actions and their handlers. */
#tab-home .dashboard-actions {height:126px;margin-top:8px;}
#tab-home .dashboard-actions .dashboard-action-card {width:100px;min-height:105px;padding:6px 5px;border-radius:19px;}
#tab-home .dashboard-actions .dashboard-action-icon {width:43px;height:43px;border-radius:12px;}
#tab-home .dashboard-actions .dashboard-action-icon svg {width:26px;height:26px;}
#tab-home .dashboard-actions .dashboard-action-label {font-size:11px;margin-top:5px;}
#tab-home .dashboard-actions .dashboard-badge {top:-5px;right:2px;}
#tab-home .dashboard-wheel-dots {height:14px;margin:0 0 3px;}
/* Let the goals panel sit just below the wheel, not pushed to the nav by auto margin. */
#tab-home .sg-dashboard-panel {margin:10px 0 12px;min-height:0;padding:10px;border-radius:20px;flex-shrink:1;}
#tab-home .sg-dashboard-head {margin-bottom:7px;}
#tab-home .sg-dashboard-target-icon {width:37px;height:37px;font-size:26px;}
#tab-home .sg-dashboard-head h2 {font-size:clamp(19px,4.8vw,22px);}
#tab-home .sg-dashboard-hero {padding:9px;border-radius:16px;}
#tab-home .sg-feature-empty {padding:10px 7px;}
#tab-home .sg-feature-empty strong {font-size:14px;}
#tab-home .sg-feature-empty small {font-size:11px;}
#tab-home .sg-feature {grid-template-columns:70px minmax(0,1fr);gap:9px;}
#tab-home .sg-feature-art {width:70px;height:77px;font-size:33px;}
#tab-home .sg-feature-name {font-size:17px;}
#tab-home .sg-feature-bottom {margin-top:7px;}
@media(max-height:890px){
 #tab-home .dashboard-top-actions {height:43px;}
 #tab-home .dashboard-summary {margin-top:-40px;padding-bottom:5px;}
 #tab-home .dashboard-summary .clock {font-size:clamp(46px,12.9vw,57px);}
 #tab-home .dashboard-account-grid {gap:7px;margin-top:7px;}
 #tab-home .dashboard-account-card {padding:9px 12px;}
 #tab-home .dashboard-account-head {grid-template-columns:37px minmax(0,1fr);gap:8px;}
 #tab-home .dashboard-account-icon {width:37px;height:37px;}
 #tab-home .dashboard-account-icon svg {width:24px;height:24px;}
 #tab-home .dashboard-account-sub {margin-left:45px;}
 #tab-home .dashboard-actions {height:114px;margin-top:7px;}
 #tab-home .dashboard-actions .dashboard-action-card {width:93px;min-height:94px;}
 #tab-home .dashboard-actions .dashboard-action-icon {width:40px;height:40px;}
 #tab-home .sg-dashboard-panel {margin-top:8px;padding:8px;}
 #tab-home .sg-dashboard-head {margin-bottom:5px;}
 #tab-home .sg-feature-art {width:60px;height:69px;}
 #tab-home .sg-feature {grid-template-columns:60px minmax(0,1fr);}
}
/* Savings category stays in the Settle popup instead of invoking the iOS native picker. */
#sg-quick-modal #sg-q-type {display:none!important;}
#sg-quick-modal .sg-q-category-trigger {display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;cursor:pointer;font-weight:650;}
#sg-quick-modal .sg-q-category-chevron {flex:none;color:#40895b;font-size:23px;line-height:.7;}
#sg-quick-modal .sg-q-category-options {display:grid;grid-template-columns:1fr;gap:0;border:1px solid #d9e5d9;border-radius:14px;margin-top:6px;padding:3px;background:#fffdf8;max-height:207px;overflow-y:auto;overscroll-behavior:contain;}
#sg-quick-modal .sg-q-category-options[hidden] {display:none!important;}
#sg-quick-modal .sg-q-category-options button {min-height:40px;border:0;border-radius:9px;background:transparent;color:#15251b;text-align:left;font-size:14px;padding:7px 12px;cursor:pointer;}
#sg-quick-modal .sg-q-category-options button[aria-selected="true"] {background:#e6f1e9;color:#237442;font-weight:750;}
#sg-quick-modal .sg-q-category-options button:focus-visible {outline:2px solid #40895b;outline-offset:-2px;}
/* Balance vertical breathing room on a full-screen Dashboard. The shorter goal
   preview can sit lower without leaving a large blank band above the nav. */
/* v140: eliminate the artificial Dashboard spacer gaps. The header, wheel,
   goal contents and fixed bottom navigation remain unchanged. */
#tab-home .dashboard-actions {margin-top:clamp(14px,2.1vh,20px);}
#tab-home .sg-dashboard-panel {margin-top:clamp(14px,2.1vh,20px);margin-bottom:16px;}

/* v145: bell badge remains fully visible within its circular button; counts unchanged. */
#tab-home .dashboard-bell .dashboard-unread-dot {
  top: 0;
  right: 0;
}
/* v145: Android-only geometry. No iPhone selectors or layout rules are changed. */
html.settle-android #tab-home .dashboard-account-grid {
  gap: 8px;
  margin-top: 8px;
}
html.settle-android #tab-home .dashboard-actions {
  margin-top: clamp(14px, 2.1dvh, 20px);
}
html.settle-android #tab-home .sg-dashboard-panel {
  margin-top: clamp(14px, 2.1dvh, 20px);
  margin-bottom: 12px;
}
@media (max-height: 780px) {
  html.settle-android #tab-home .dashboard-actions { height: 108px; }
  html.settle-android #tab-home .dashboard-actions .dashboard-action-card { min-height: 91px; }
  html.settle-android #tab-home .dashboard-actions .dashboard-action-icon { width: 39px; height: 39px; }
  html.settle-android #tab-home .sg-dashboard-panel { margin-top: 16px; margin-bottom: 8px; }
}

/* v146 — Home only: remove the empty space below the Savings Goals card.
   Keep the approved fixed nav, goal-card dimensions and carousel unchanged. */
#tab-home.active .sg-dashboard-panel,
html.settle-android #tab-home.active .sg-dashboard-panel { margin-top:auto; margin-bottom:12px; }

/* v148 — Return to the approved scrolling wheel with the four retained shortcuts.
   Keep the Savings Goals preview directly under the wheel, whether empty or populated. */
#tab-home.active .sg-dashboard-panel,
html.settle-android #tab-home.active .sg-dashboard-panel { margin-top:12px; margin-bottom:12px; }
/* Keep the v147 bill-count behavior: no red badge when nothing is due. */
#tab-home .dashboard-actions .dashboard-badge[hidden] { display:none!important; }

/* v149 — Match the empty Savings Goals preview to the populated card's footprint.
   This does not alter the featured goal or the locked dashboard/navigation. */
#tab-home .sg-dashboard-hero:has(.sg-feature-empty) {min-height: 174px; display:flex; align-items:center;}
#tab-home .sg-dashboard-hero:has(.sg-feature-empty) .sg-feature-empty {width:100%; box-sizing:border-box;}
@media (max-height:890px) {
  #tab-home .sg-dashboard-hero:has(.sg-feature-empty) {min-height: 155px;}
}

/* v153 Android-only: use available height below the wheel rather than leaving
   a dead band beneath the Savings Goals card. iPhone geometry is untouched. */
html.settle-android #tab-home.active {height:calc(100dvh - 97px - env(safe-area-inset-top,0px) - max(0px, env(safe-area-inset-bottom,0px) - 18px));display:flex;flex-direction:column;box-sizing:border-box;}
html.settle-android #tab-home.active .sg-dashboard-panel {flex:1 1 auto;min-height:0;margin-top:12px;margin-bottom:12px;overflow:hidden;}
html.settle-android #tab-home.active .sg-dashboard-hero {flex:1 1 auto;min-height:0;}
html.settle-android #tab-home.active .dashboard-top-actions,
html.settle-android #tab-home.active .dashboard-summary,
html.settle-android #tab-home.active .dashboard-account-grid,
html.settle-android #tab-home.active .dashboard-actions,
html.settle-android #tab-home.active .dashboard-wheel-dots {flex-shrink:0;}

/* v155 — Empty Savings Goals presentation only. Center the approved content on
   iPhone and Android; do not change the populated goal or dashboard geometry. */
#tab-home .sg-dashboard-hero:has(.sg-feature-empty) .sg-dashboard-content {
  display:flex; flex-direction:column; align-items:stretch; justify-content:center;
}
#tab-home .sg-dashboard-hero:has(.sg-feature-empty) {overflow:hidden;}
#tab-home .sg-dashboard-hero:has(.sg-feature-empty) .sg-feature-empty {
  display:flex; flex:1 1 auto; flex-direction:column; align-items:center;
  justify-content:center; text-align:center; gap:12px;
  width:100%; min-height:0; box-sizing:border-box; padding:12px 8px;
}
#tab-home .sg-dashboard-hero:has(.sg-feature-empty) .sg-empty-symbol {
  display:grid; place-items:center; flex:none; width:44px; height:44px;
  border-radius:13px; background:#e6f1e9; color:#40895b; font-size:30px; line-height:1;
}
#tab-home .sg-dashboard-hero:has(.sg-feature-empty) .sg-feature-empty-copy {
  display:flex; flex-direction:column; align-items:center; gap:4px;
}
#tab-home .sg-dashboard-hero:has(.sg-feature-empty) .sg-feature-empty strong,
#tab-home .sg-dashboard-hero:has(.sg-feature-empty) .sg-feature-empty small {text-align:center;}
#tab-home .sg-dashboard-hero:has(.sg-feature-empty) .sg-feature-empty small {margin-top:0;}
#tab-home .sg-dashboard-hero:has(.sg-feature-empty) .sg-feature-empty button {
  min-height:42px; padding:10px 19px;
}

/* v156 — Empty Savings Goals only: size the outer card to contain the
   centered inner card within the fixed Dashboard viewport. Do not change
   the populated goal, dashboard shortcuts, or bottom navigation. */
#tab-home.active:has(.sg-feature-empty) {
  display:flex;
  flex-direction:column;
  box-sizing:border-box;
  height:calc(100dvh - 97px - env(safe-area-inset-top, 0px) - max(0px, env(safe-area-inset-bottom, 0px) - 18px));
  padding-bottom:0;
}
#tab-home.active:has(.sg-feature-empty) .dashboard-top-actions,
#tab-home.active:has(.sg-feature-empty) .dashboard-summary,
#tab-home.active:has(.sg-feature-empty) .dashboard-account-grid,
#tab-home.active:has(.sg-feature-empty) .dashboard-actions,
#tab-home.active:has(.sg-feature-empty) .dashboard-wheel-dots { flex-shrink:0; }
#tab-home.active:has(.sg-feature-empty) .sg-dashboard-panel {
  box-sizing:border-box;
  flex:1 1 auto;
  min-height:0;
  margin-top:12px;
  margin-bottom:12px;
  display:flex;
  flex-direction:column;
  overflow:hidden;
}
#tab-home.active:has(.sg-feature-empty) .sg-dashboard-hero {
  box-sizing:border-box;
  flex:1 1 auto;
  min-height:0;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  justify-content:center;
  overflow:hidden;
}
#tab-home.active:has(.sg-feature-empty) .sg-dashboard-content {
  flex:1 1 auto;
  min-height:0;
  width:100%;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
#tab-home.active:has(.sg-feature-empty) .sg-feature-empty {
  flex:1 1 auto;
  min-height:0;
}

/* v163: keep the v162 bank cards full-size; only their account swipe cue changes. */
#tab-home .dashboard-account-card#dashboard-account-slot-0 {order:0;}
#tab-home .dashboard-account-card#dashboard-account-slot-1 {order:1;}
#tab-home .dashboard-account-card.dashboard-account-swipeable {touch-action:pan-y;}
#tab-home .dashboard-account-pages {
  position:absolute;right:13px;bottom:9px;
  display:flex;align-items:center;justify-content:flex-end;gap:8px;
  pointer-events:none;
}
#tab-home .dashboard-account-page-dot {
  width:7px;height:7px;flex:none;border-radius:50%;background:#d3ddcf;
}
#tab-home .dashboard-account-page-dot.is-active {background:#40895b;}
