/* Shared guided reading: essential answers and checks stay visible across the app. */
.guided-app .flow-section {margin: 28px 0; padding: 24px 0; border-top: 1px solid var(--line); min-width: 0;}
.guided-app .flow-section > h2, .guided-app .flow-section-heading h2,
.guided-app .flow-next h2 {font: 400 26px/1.3 Lora, Georgia, serif; margin: 0 0 16px;}
.guided-app .flow-section p {margin: 12px 0;}
.flow-section-heading {display: flex; align-items: baseline; justify-content: space-between; gap: 16px; margin-bottom: 20px;}
.flow-row {display: grid; grid-template-columns: minmax(140px, 1fr) minmax(0, 3fr); gap: 28px; border-top: 1px solid var(--line); padding: 20px 0;}
.guided-app .flow-row > h3 {font: 500 14px/1.6 Inter, system-ui, sans-serif; color: var(--gold);}
.flow-row p:first-child {margin-top: 0;}
.flow-next {padding: 24px; background: var(--surface); border: 1px solid var(--line); border-radius: 10px; margin: 28px 0;}
.guided-app .flow-next p {margin: 12px 0;}
.flow-next .button {margin-top: 12px;}
.guided-app .flow-checks {border-left: 2px solid var(--gold); padding-left: 16px; margin: 20px 0;}
.guided-app .flow-checks :is(h3,h4) {font: 500 14px/1.5 Inter, system-ui, sans-serif; margin: 0 0 8px;}
.flow-checks ul {padding-left: 18px;}
.flow-checks li {margin: 6px 0;}
.profile-flow .flow-answers {display: block;}
.profile-design .profile-flow .profile-answer {padding: 20px 0; scroll-margin-top: 24px;}
.profile-flow .profile-answer .saved-question {max-width: 75ch;}
.profile-flow .profile-answer dl {display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px 32px;}
.profile-flow .profile-answer dl > div {min-width: 0;}
.profile-flow .profile-answer dd {overflow-wrap: anywhere;}
.profile-flow .profile-answer .answer-heading {margin-bottom: 10px;}
.profile-flow .profile-answer dl {margin: 0;}
.profile-design .profile-flow .profile-answer dd.quoted-answer {font: 400 16px/1.6 Inter, system-ui, sans-serif;}
.profile-design .profile-flow .profile-answer {padding-block: 16px;}
.profile-flow .profile-answer[data-just-saved] {background: var(--surface); padding: 20px; border-left: 2px solid var(--gold);}
.review-flow .review-answer {padding: 20px 0; border-top: 1px solid var(--line);}
.review-flow .card-heading {font-size: 20px;}
.review-flow .section-count {font-size: 12px; margin-left: 16px; color: var(--muted);}
.saved-section-heading {display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px; padding: 16px 0; font-weight: 500;}
.saved-section-heading .saved-card-preview {display: none;}
.saved-context-heading {padding: 20px 20px 0;}
.guided-app .saved-context-heading h2 {font: 400 24px/1.3 Lora, Georgia, serif;}
.guided-app .plan-flow .plan-path {display: block;}
.plan-flow .plan-path li {padding: 16px 0;}
.plan-flow .plan-path p {margin: 8px 0;}
.guided-app .continuous-review .dashboard-next,
.guided-app .continuous-review .dashboard-trades {background: transparent; border: 0; border-top: 1px solid var(--line); border-radius: 0; padding: 24px 0;}
.guided-app .dashboard-watchlist .strategy-checklist {border: 0;}
.guided-app .dashboard-watchlist .plan-request {border-bottom: 1px solid var(--line); padding: 24px 0; margin: 0;}
.guided-app.connection-flow .accounts {display: block;}
.guided-app.connection-flow .account {display: grid; grid-template-columns: 40px minmax(0,1fr); gap: 8px 20px; padding: 24px 0; background: transparent; border: 0; border-top: 1px solid var(--line); border-radius: 0;}
.connection-flow .account > :not(.provider-icon) {grid-column: 2;}
.connection-flow .account .provider-icon {grid-column: 1; grid-row: 1 / span 2;}
.connection-flow .account .button {justify-self: start;}
.connection-flow .account form {max-width: 580px;}
.guided-app.connection-flow .account h2 {margin: 0;}
.guided-app.connection-flow .account p {margin: 4px 0;}
.guided-app.connection-flow .account .button.secondary {background: transparent; color: var(--gold); border-color: var(--line);}
@media(max-width:760px) {
  .flow-row {grid-template-columns: minmax(0,1fr); gap: 12px;}
  .flow-section-heading {flex-wrap: wrap; gap: 4px;}
  .profile-flow .profile-answer dl {grid-template-columns: minmax(0,1fr); gap: 12px;}
  .guided-app .flow-section > h2, .guided-app .flow-section-heading h2 {font-size: 24px;}
  .flow-next {padding: 20px;}
  .flow-next .button {width: 100%;}
  .connection-flow .account > :not(.provider-icon):not(h2) {grid-column: 1 / -1;}
}
@media(max-width:600px) {
  .guided-app .funding-ring figcaption {padding: 10px;}
  .guided-app .funding-ring strong {font-size: 18px;}
}
