.am-age{display:grid;gap:8px;font-size:14px;color:var(--green);margin:20px 0}.am-age select{font:inherit;padding:12px;background:#fff;border:1px solid var(--line);border-radius:10px;max-width:100%}.am-progress{font-size:14px;margin:20px 0 10px}.am-session-list{display:grid;gap:18px;margin-top:26px}.am-session{display:flex;gap:14px;background:white;border:1px solid var(--line);border-radius:16px;padding:20px}.am-session svg,.am-title svg,.am-field svg{width:22px;height:22px;flex:0 0 22px;color:var(--teal)}.am-session h2{font-size:18px;line-height:1.4;margin:8px 0}.am-session p{font-size:14.5px;line-height:1.6;margin:8px 0 16px}.module-reader-shell .fg-copy .am-title{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border:1px solid #cddfe5;background:#e2eff4;border-radius:12px;font-size:16px;margin:28px 0 18px;line-height:1.5}.module-reader-shell .fg-copy h3.am-title{background:#eceeef;border-color:#dce0e2;font-size:15px}.am-callout{background:#fff;border-left:4px solid var(--teal);border-radius:0 12px 12px 0;padding:18px;margin:22px 0;font-size:14.5px;line-height:1.7}.am-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;padding:20px 0;border-bottom:1px solid var(--line)}.am-row>div{min-width:0}.am-column-label{display:block;font-size:11px;color:var(--green);font-weight:700;margin-bottom:8px}.am-field{margin:16px 0}.am-field label{display:flex;align-items:flex-start;gap:10px;margin-bottom:12px;font-size:14.5px;line-height:1.5}.am-field textarea{box-sizing:border-box;width:100%;min-width:0;min-height:90px;background:#eceeef;border:1px solid #c6d1cb;border-left:3px solid var(--teal);border-radius:10px;padding:14px;font:inherit;resize:vertical}.am-field small{display:block;font-size:10px;color:var(--green);margin-top:8px}.am-bullet{display:flex;gap:10px}.am-end{display:flex;flex-wrap:wrap;gap:12px;margin:28px 0}.am-end .btn{flex:1 1 150px;font-size:14px}.am-end button{flex-basis:100%}.am-title span{min-width:0}.fg-copy p{white-space:pre-line}.am-session:focus-visible,.am-age select:focus-visible,.am-field textarea:focus-visible{outline:2px solid var(--teal);outline-offset:3px}

/* Keep each example or practice rep together on mobile. */
.module-reader-shell .am-rows{display:grid;gap:14px;margin:20px 0 24px}
.module-reader-shell .am-row{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;background:#fff;border:1px solid #dce3e0;border-radius:14px;padding:18px;margin:0}
.module-reader-shell .fg-copy .am-row p{margin:0;font-size:14.5px;line-height:1.6}
.module-reader-shell .am-column-label{margin:0 0 6px;font-size:11px;line-height:1.4;letter-spacing:.03em}
.module-reader-shell .fg-copy .am-row-title{display:flex;align-items:center;gap:10px;font-size:15px;line-height:1.5;margin:-18px -18px 0;padding:13px 18px;background:#e2eff4;border-radius:13px 13px 0 0;color:#202824}
.module-reader-shell .am-rep-number{display:inline-flex;align-items:center;justify-content:center;background:#fff;border-radius:8px;width:30px;height:30px;flex:0 0 30px;color:var(--green);font-weight:700}
.module-reader-shell .am-row .am-field{margin:0}
.module-reader-shell .fg-copy .am-callout{padding:16px 18px;margin:20px 0}
.module-reader-shell .fg-copy .am-callout .am-callout-label{font-size:11px;line-height:1.4;letter-spacing:.04em;color:var(--green);margin:0 0 10px}
.module-reader-shell .fg-copy .am-callout p{margin:0;line-height:1.6}
/* Match the Field Guide title scale; override the shared large h2 rule. */
.module-reader-shell .fg-copy :is(h2.am-title,h3.am-title,.am-row-title){font-size:15px!important;font-weight:500!important;line-height:1.5!important}
.module-reader-shell .fg-copy .am-title>span{font-size:inherit!important;font-weight:inherit!important}

/* Shared icon alignment for example titles and labelled callouts. */
.am-row-title svg,.am-callout-label svg{width:22px;height:22px;flex:0 0 22px;color:var(--teal)}
.module-reader-shell .fg-copy .am-callout-label{display:flex;align-items:center;gap:10px}
.am-row-title>span,.am-callout-label>span{min-width:0}
