.midway-school-form { width: min(960px, 100%); margin: 0 auto; }
.midway-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.midway-form-grid label { display: grid; gap: .4rem; font-weight: 700; }
.midway-form-grid input:not([type="checkbox"]), .midway-form-grid select, .midway-form-grid textarea { box-sizing: border-box; width: 100%; min-height: 48px; padding: .7rem .8rem; border: 1px solid #8a9bad; border-radius: .4rem; background: #fff; color: #17324d; font: inherit; }
.midway-form-grid textarea { min-height: 128px; resize: vertical; }
.midway-form-grid .full-field { grid-column: 1 / -1; }
.midway-form-note { padding: 1rem; border-left: 5px solid #0068ff; background: #edf5ff; font-weight: 500; }
.midway-form-consent { grid-template-columns: auto 1fr; align-items: start; }
.midway-form-consent input { margin-top: .25rem; }
.midway-form-grid button { min-height: 48px; padding: .75rem 1.2rem; border: 0; border-radius: .45rem; background: #0068ff; color: #fff; font: inherit; font-weight: 800; cursor: pointer; }
.midway-form-grid button:disabled { cursor: wait; opacity: .65; }
.midway-form-status { min-height: 1.5em; font-weight: 700; }
.midway-form-status.is-success { color: #176438; }
.midway-form-status.is-error { color: #a52828; }
.midway-form-trap { position: absolute !important; left: -10000px !important; width: 1px; height: 1px; overflow: hidden; }
.midway-form-section { margin: 1.25rem 0 0; padding: 1rem 0 .45rem; border-bottom: 2px solid #0068ff; color: #17324d; font-size: 1.25rem; }
.midway-form-checks { margin: 0; padding: 1rem; border: 1px solid #8a9bad; border-radius: .4rem; }
.midway-form-checks legend { padding: 0 .35rem; color: #17324d; font-weight: 700; }
.midway-form-checks > div { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .65rem 1rem; }
.midway-form-checks label { display: flex; grid-template-columns: none; align-items: flex-start; gap: .55rem; font-weight: 500; }
.midway-form-checks input { width: 20px; height: 20px; margin: .15rem 0 0; accent-color: #0068ff; }
@media (max-width: 680px) { .midway-form-grid { grid-template-columns: 1fr; } .midway-form-grid .full-field { grid-column: auto; } .midway-form-checks > div { grid-template-columns: 1fr; } }
