/* Scoped educational content styles; the existing generator and label layout stay independent. */
.feedback-notice { display: flex; align-items: center; gap: 1rem; padding: .85rem 1rem; margin-bottom: 2rem; border: 1px solid #d8bd87; border-radius: .75rem; background: #fff7e8; color: #263b77; }
.feedback-ticker { display: block; flex: 1; min-width: 0; overflow: hidden; color: inherit; text-decoration: none; font-weight: 600; }
.feedback-track { display: flex; width: max-content; animation: feedback-scroll 35s linear infinite; }
.feedback-track > span { flex: none; padding-right: 4rem; white-space: nowrap; }
.feedback-pause { display: flex; align-items: center; gap: .4rem; flex-shrink: 0; font-size: .8rem; cursor: pointer; }
.feedback-notice:hover .feedback-track, .feedback-notice:focus-within .feedback-track, .feedback-notice:has(input:checked) .feedback-track { animation-play-state: paused; }
.feedback-ticker:focus-visible { outline: 2px solid #263b77; outline-offset: 3px; }
@keyframes feedback-scroll { from { transform: translateX(0); } to { transform: translateX(-50%); } }
@media (max-width: 575px) { .feedback-notice { flex-wrap: wrap; } .feedback-ticker { flex-basis: 100%; } }
@media (prefers-reduced-motion: reduce) {
  .feedback-track { animation: none; width: auto; }
  .feedback-track > span { white-space: normal; padding: 0; }
  .feedback-track > span + span, .feedback-pause { display: none; }
}
.resource-page main { flex: 1; }
.resource-heading { max-width: 850px; margin: 0 0 2.5rem; }
.resource-heading h1 { font-size: clamp(2rem, 4vw, 3.4rem); font-weight: 800; line-height: 1.18; letter-spacing: -.035em; }
.resource-eyebrow { color: #715014; text-transform: uppercase; font-size: .8rem; font-weight: 800; letter-spacing: .14em; }
.resource-lead { font-size: 1.15rem; line-height: 1.8; color: var(--text-variant); margin-top: 1.3rem; }
.resource-meta, .resource-breadcrumb { font-size: .9rem; color: var(--text-variant); }
.resource-breadcrumb { margin-bottom: 2rem; }
.resource-article { max-width: 800px; margin: auto; line-height: 1.85; }
.resource-article section { margin: 2.6rem 0; scroll-margin-top: 7rem; }
.resource-article h2, .resource-start h2, .resource-group > h2, .tool-learning h2 { font-size: 1.6rem; font-weight: 800; line-height: 1.35; margin-bottom: 1rem; }
.resource-article h3, .tool-learning h3 { font-size: 1.12rem; font-weight: 700; margin: 1.6rem 0 .5rem; }
.resource-article a, .resource-start a, .resource-card a, .tool-learning a, .resource-breadcrumb a { color: #263b77; text-underline-offset: .18em; }
.resource-toc, .resource-start, .resource-next { padding: clamp(1.25rem, 3vw, 2rem); border: 1px solid var(--outline); border-radius: 1rem; background: #fff; }
.resource-toc h2 { font-size: 1.1rem; }
.resource-toc ul, .resource-next ul { margin-bottom: 0; }
.resource-next h2:not(:first-child) { margin-top: 1.5rem; }
.resource-article li, .tool-learning li { margin-bottom: .65rem; }
.resource-categories { display: flex; flex-wrap: wrap; gap: .7rem; margin: 2rem 0; }
.resource-categories a { padding: .55rem 1rem; border: 1px solid var(--outline); border-radius: 2rem; background: #fff; color: #263b77; }
.resource-group { margin: 3rem 0; scroll-margin-top: 7rem; }
.resource-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.resource-card { border: 1px solid var(--outline); border-top: 3px solid var(--primary); border-radius: 1rem; padding: 1.5rem; background: #fff; }
.resource-card h3 { font-size: 1.18rem; font-weight: 800; line-height: 1.45; }
.resource-card p { color: var(--text-variant); line-height: 1.7; margin: 1rem 0 0; }
.resource-article pre, .tool-learning pre { padding: 1.3rem; background: #eef1f7; border-left: 3px solid var(--royal-blue); border-radius: .4rem; overflow-x: auto; color: #182440; }
.guide-table-wrap { overflow-x: auto; margin: 1.5rem 0; }
.guide-table-wrap table { border-collapse: collapse; width: 100%; }
.guide-table-wrap th, .guide-table-wrap td { padding: .8rem; border: 1px solid var(--outline); vertical-align: top; }
.guide-table-wrap th { background: #eef1f7; }
.guide-table-wrap caption { caption-side: top; color: var(--text-variant); font-size: .9rem; }
.tool-learning { border-top: 1px solid var(--outline); margin-top: 3rem; padding-top: 2.5rem; line-height: 1.8; }
.tool-learning-inner { max-width: 820px; margin: auto; }
.resource-skip { position: absolute; left: 1rem; top: -100px; z-index: 2000; background: white; padding: .75rem; }
.resource-skip:focus { top: 1rem; }
.resource-page a:focus-visible, .tool-learning a:focus-visible { outline: 3px solid #9b6b16; outline-offset: 4px; }
@media (max-width: 991px) { .resource-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width: 575px) { .resource-grid { grid-template-columns: 1fr; } .resource-article { overflow-wrap: anywhere; } }
/* style.css reserves printing for spine labels. Restore document printing only on resource pages. */
@media print {
  html:has(body.resource-page), body.resource-page { overflow: visible !important; height: auto !important; }
  body.resource-page * { visibility: visible !important; }
  body.resource-page > header, body.resource-page > footer, .resource-page .resource-skip, .resource-page .resource-toc, .resource-page .resource-categories { display: none !important; }
  .resource-page main { width: 100%; max-width: none; padding: 0 !important; }
  .resource-article { max-width: none; }
  .resource-card, .resource-start { break-inside: avoid; }
  .resource-page h2, .resource-page h3 { break-after: avoid; }
  .resource-article pre { white-space: pre-wrap; overflow: visible; }
  .tool-learning { display: none !important; }
}
