/* Match the readable text scale of the companion learning site. */
body{font-size:21px}
.audience-top>span,.audience .outcome,.abilities p,.guide-heading>p,.guide-section>p,.form-card>p:not(.section-kicker):not(.small-note):not(.field-error){font-size:21px;line-height:1.85}
.lead,.questions p,.step-body,.step-body p,.step-ai>p,.guide-section article>p,.guide-example p,.guide-pending p,.muted,.app-screen label,.app-screen input:not([type=checkbox]),.app-screen textarea,.task-card p,#tasks-screen .task-card p,.feedback,.home-task-entry p,dialog p{font-size:20px;line-height:1.85}
.section-kicker,.guide-number,.step-caption .guide-number,.step-label,.task-index,#tasks-screen .task-index,.guide-example strong{font-size:19px}
.field-hint,.small-note,.field-error,.demo-callout,#tasks-screen .demo-callout,.disclosure-hint,.consent label,.work-panel .check-row,.progress-caption,.status-live,.status-badge,#tasks-screen .status-badge,.guide-status,.guide-example small,.writing-help p,.writing-help summary,.mock-status,.mock-notifications summary,.mock-notifications ul,.detail-steps li,.audience-note{font-size:18px;line-height:1.8}
/* Nested transcript notes must outrank the legacy .transcript-box p rule. */
.transcript-box .demo-callout,#transcript-origin.small-note{font-size:18px;line-height:1.8}
.transcript-box>p{font-size:20px;line-height:1.85}
.coach-slot{font-size:20px}
.preview-label,.demo-tag,.slot-number,.prototype-banner{font-size:16px}
.header nav{font-size:20px}
.primary,.secondary,.form-card .primary,.form-card [data-cancel-signup],.task-card-bottom .secondary,#tasks-screen .secondary,.aside-card .primary,.aside-card .secondary,.guide-back .primary,.gift-row .primary,dialog .primary{font-size:20px;line-height:1.5;white-space:normal}
.back-link,.text-button,.hero-guide-link{font-size:19px}
h2,.guide-section h2{font-size:calc(clamp(1.7rem,3.3vw,2.5rem) + .25rem)}
.audience h3{font-size:28px}
.abilities h3,.guide-section h3,.step-body h3,.app-screen h3{font-size:24px}
.questions summary{font-size:21px}
.step-caption strong,.rules-disclosure>summary,.app-screen h2,.task-card h2,#tasks-screen .task-card h2{font-size:28px}
.support-footer p,.support-footer .footer-eyebrow{font-size:18px}
.support-footer h3{font-size:20px}
.support-footer .footer-bottom,.support-footer .legacy-entry,.support-footer .legacy-entry summary{font-size:16px}
.task-card-head,.task-card-bottom,.screen-head,.panel-head{flex-wrap:wrap}
.guide-section,.step-body,.work-panel,.form-card,.task-card,.aside-card,.feedback,.mock-status,.mock-notifications{overflow-wrap:anywhere}
.work-grid>*{min-width:0}

@media(max-width:760px){
  body{font-size:20px}
  .audience-top>span,.audience .outcome,.abilities p,.guide-heading>p,.guide-section>p,.form-card>p:not(.section-kicker):not(.small-note):not(.field-error){font-size:20px}
  .section-kicker,.guide-number,.step-caption .guide-number,.step-label,.task-index,#tasks-screen .task-index,.guide-example strong{font-size:18px}
  .header nav,.back-link,.text-button,.hero-guide-link{font-size:18px}
  .header nav{column-gap:16px;row-gap:10px}
  h2,.guide-section h2,.audience-heading h2{font-size:31.2px}
  .audience h3,.step-caption strong,.rules-disclosure>summary,.app-screen h2,.task-card h2,#tasks-screen .task-card h2{font-size:26px}
  #hero-title.purpose-title{font-size:clamp(32px,7.7vw,41px);line-height:1.4}
  .guide-heading h1,.app-screen h1{font-size:34px}
  .step-disclosure summary{column-gap:14px}
}

/* Text-fit pills: identical border-inclusive insets, including legacy form overrides. */
.primary,.secondary,button.text-button,.app-screen .primary,.app-screen .secondary,#tasks-screen.app-screen .secondary,.app-screen .form-card .primary,.app-screen .form-card [data-cancel-signup],.task-card-bottom .primary,.task-card-bottom .secondary,.aside-card>button,.aside-card .primary,.aside-card .secondary,.guide-back .primary,.gift-row .primary,dialog .primary,dialog .button-row .primary,dialog .button-row .secondary,.button-row button{width:fit-content;max-width:100%;min-width:0;flex-grow:0;align-self:flex-start;padding:14px 30px;min-height:var(--button-large-height);box-sizing:border-box;height:auto;white-space:normal;overflow-wrap:anywhere}
.button-row{align-items:flex-start}

/* Reserve the same 1px border within every 56px narrow-screen action. */
@media(max-width:760px){
  .primary,.secondary,button.text-button,.app-screen .primary,.app-screen .secondary,#tasks-screen.app-screen .secondary,.app-screen .form-card .primary,.app-screen .form-card [data-cancel-signup],.task-card-bottom .primary,.task-card-bottom .secondary,.aside-card>button,.aside-card .primary,.aside-card .secondary,.guide-back .primary,.gift-row .primary,dialog .primary,dialog .button-row .primary,dialog .button-row .secondary,.button-row button{padding-block:12px}
}
