main { max-width: 1100px; }
form p { display: flex; flex-direction: column; max-width: 38rem; gap: .3rem; }
input, select, textarea { max-width: 100%; padding: .4rem; border: 1px solid #667; border-radius: .25rem; }
.errorlist { color: #a01515; font-weight: 600; }
:focus-visible { outline: 3px solid #0455a0; outline-offset: 3px; }

.skip-link { position: absolute; top: .25rem; left: .25rem; z-index: 1000; background: white; padding: .25rem; }

.editor input:not([type=checkbox]):not([type=hidden]), .editor textarea, .editor select { max-width: 100%; }
.editor label { display: block; font-weight: 600; }
.editor input[type=checkbox] { margin-right: .4rem; }
.editor .helptext { display: block; }
.editor textarea { width: 100%; height: 7rem; }
main p, main li, main summary { overflow-wrap: anywhere; }

.week-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.week-grid .card { min-width: 0; }
@media (max-width: 700px) { .week-grid { grid-template-columns: 1fr; } }
