/* R9 opt-in content layout; original global styles and engines remain intact. */
.editorial p { max-width: 72ch; line-height: 1.85; overflow-wrap: anywhere; }
.editorial #guide-example + p { border-inline-start: 3px solid #aa8538; padding-inline-start: 1rem; }
.editorial #guide-example + p + p { border-inline-start: 3px solid #33416e; padding-inline-start: 1rem; }
.r9-stories section { padding-block: 1rem; border-bottom: 1px solid #d5dae4; }
.r9-stories h3 { margin-block: 0 .5rem; color: #223056; }
.r9-stories p { max-width: 72ch; line-height: 1.85; overflow-wrap: anywhere; }
@media (max-width: 800px) {
 .hacks-portal[data-tool=student-timetable] .layout > .panel:last-child,
 .hacks-portal[data-tool=score-records] .layout > section { order: 0; }
 .hacks-portal[data-tool=student-timetable] .layout > .panel:first-child,
 .hacks-portal[data-tool=score-records] #sr-form { order: -1; }
}
@media (max-width: 600px) {
 body .hacks-portal.hacks-portal .hero,
 body .hacks-portal.hacks-portal .tool-heading { padding-block: .5rem; margin-bottom: .5rem; }
 body .hacks-portal.hacks-portal .hero h1,
 body .hacks-portal.hacks-portal .tool-heading h1 { font-size: 26px; margin-block: .25rem .5rem; }
 body .hacks-portal.hacks-portal .breadcrumb { padding-block: 10px; margin-bottom: 6px; }
 .hacks-portal[data-tool=student-timetable] .layout > .panel:last-child,
 .hacks-portal[data-tool=score-records] .layout > section { order: 0; }
 .hacks-portal[data-tool=student-timetable] .layout > .panel:first-child,
 .hacks-portal[data-tool=score-records] #sr-form { order: -1; }
 .hacks-portal .panel { margin-block: 12px; padding: 16px; }
 .hacks-portal .tool-heading > .eyebrow { margin-block: 4px; }
 .hacks-portal h1 { font-size: 26px; }
 .hacks-portal[data-tool=park-golf-group] h1 { font-size: 24px; word-break: normal; overflow-wrap: anywhere; }
 .hacks-portal .cm-app #cm-status:empty { display: none; }
 .hacks-portal .cm-app > .cm-storage { margin-block: 8px; }
 .hacks-portal .cm-app .cm-steps { flex-wrap: nowrap; overflow-x: auto; max-width: 100%; gap: 4px; margin-block: 4px; }
 .hacks-portal .cm-app .cm-steps button { flex: 0 0 auto; margin: 2px; padding-inline: 10px; }
 .hacks-portal .hero > a[href="#usage"],
 .hacks-portal .tool-heading > a[href="#usage"] { margin-block: 0; }
 .hacks-portal .hero .direct-answer,
 .hacks-portal .tool-heading .direct-answer { margin-block: 6px; }
 .editorial { padding-inline: 1rem; }
 .editorial ol { padding-inline-start: 1.4rem; }
 .r9-stories { padding-inline: 1rem; }
}
