/* Site information is isolated from simulator SVG, controls and arrow styles. */
.lab-site-footer { margin-top: 40px; padding: 28px 16px; border-top: 1px solid #c8dfe3; color: #405b68; text-align: left; line-height: 1.8; font-size: .95rem; }
.lab-site-footer .lab-footer-brand { font-size: 1.2rem; font-weight: 800; color: #087c86; }
.lab-site-footer nav { display: flex; flex-wrap: wrap; gap: 8px 22px; margin: 14px 0; }
.lab-site-footer nav a { display: inline-flex; align-items: center; min-height: 44px; color: #087c86; text-decoration: underline; }
.lab-site-footer small { display: block; }
.lesson-reading { margin: 32px auto 0; padding: clamp(20px,4vw,36px); border: 1px solid #c8dfe3; border-radius: 16px; background: #fff; color: #173b52; text-align: left; }
.lesson-reading h2 { font-size: clamp(1.3rem,3vw,1.8rem); line-height: 1.5; margin: 8px 0 20px; }
.lesson-reading h3 { font-size: 1.1rem; margin: 24px 0 8px; }
.lesson-reading p { line-height: 1.95; max-width: 72ch; margin: 8px 0 16px; overflow-wrap: anywhere; }
.lesson-reading .reading-kicker { font-size: .85rem; font-weight: 800; letter-spacing: .08em; color: #087c86; }
.lesson-reading .reading-credit { border-top: 1px solid #d8e3e7; padding-top: 16px; font-size: .9rem; color: #496373; }
.lesson-reading a { color: #087c86; text-decoration: underline; }
.lab-site-footer a:focus-visible,.lesson-reading a:focus-visible { outline: 3px solid #c58220; outline-offset: 4px; }
.information-page article { overflow-wrap: anywhere; }
@media print { .lab-site-footer { display: none; } .lesson-reading { border-color: #aaa; } }

/* Paired learning navigation is independent of simulator controls. */
.learning-nav { display: flex; flex-wrap: wrap; gap: 8px 20px; align-items: center; margin-bottom: 14px; }
.learning-nav a { display: inline-flex; align-items: center; min-height: 44px; padding: 8px 0; font-size: 1rem; line-height: 1.5; color: #087c86; text-decoration: underline; }
.learning-nav .learning-nav-pair { padding: 10px 14px; border: 1px solid #91b9c2; border-radius: 9px; background: #fff; font-weight: 700; }
.learning-nav a:hover { color: #075b65; }
.learning-nav a:focus-visible { outline: 3px solid #c58220; outline-offset: 3px; }

/* Tablet-width controls retain the phone-sized hit area across all lesson families. */
@media (min-width: 601px) and (max-width: 900px) {
  .page-shell button, .page-shell select, .page-shell input[type=range],
  .page-shell #motion-slider, .page-shell summary { min-height: 44px; }
}
