.m-field{display:flex;flex-direction:column;gap:8px;margin:18px 0;font-weight:600;color:var(--navy)}
.m-field input,.m-field select,.m-field textarea{width:100%;padding:12px;border:1px solid #6c727a;border-radius:4px;font:inherit;background:white;color:#192d3b;box-sizing:border-box}.m-field textarea{min-height:110px}
.matcher-card fieldset{border:1px solid #b9b2a5;padding:20px;margin:25px 0}.matcher-card legend{padding:0 8px;font-weight:700}.m-check{display:inline-flex;gap:8px;align-items:center;margin:10px 16px 10px 0}.m-check input{width:20px;height:20px}
.m-actions{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0}.matcher-card p{margin:14px 0;line-height:1.7}.matcher-card dt{font-weight:700;margin-top:18px}.matcher-card dd{margin:5px 0 18px;overflow-wrap:anywhere}.matcher-card button{white-space:normal}.matcher-card [hidden]{display:none!important}
.m-idea{border:1px solid #b9b2a5;border-top:4px solid var(--gold);padding:24px;margin:30px 0 12px;background:#fff}.m-idea h3{font-size:16px;margin-top:18px}.m-notice{background:#f6efdF;padding:12px}.matcher-card :focus-visible{outline:3px solid #1767a5;outline-offset:4px}#m-status:not(:empty){padding:16px;background:#fff1d2;border-left:4px solid #8a5c00;color:#3c2c13}.matcher-card button:disabled{opacity:.65;cursor:wait}#m-feedback{border-top:1px solid #aaa;margin-top:40px;padding-top:24px}.waec-restored{margin:36px 0;padding:30px;background:var(--ivory);border-top:4px solid var(--gold)}
@media(max-width:600px){.matcher-card fieldset{padding:14px}.m-actions{flex-direction:column}.m-actions button{width:100%}.m-idea{padding:18px}}

.waec-result{display:grid;grid-template-columns:minmax(180px,340px) 1fr;align-items:center;gap:28px;margin:24px 0}.waec-result img{display:block;width:100%;height:auto;border:1px solid #b9b2a5}.waec-result figcaption{font-size:15px;line-height:1.75;max-width:520px}.waec-result strong{display:block;margin-bottom:10px}@media(max-width:600px){.waec-result{grid-template-columns:1fr}.waec-result a{max-width:300px}}

/* Open form sections replace nested boxes. */
.matcher-card{border-top:0;border-radius:8px;box-shadow:0 4px 24px rgba(11,53,89,.05);padding:clamp(24px,4vw,44px)}
.matcher-card fieldset{border:0;border-top:1px solid #e2e5e7;padding:24px 0 0;margin:36px 0;min-width:0}
.matcher-card legend{padding:0 12px 0 0;font-size:18px;color:var(--navy)}
.matcher-card p{max-width:65ch;color:#475569}
.matcher-card h2{font-size:26px;line-height:1.3;color:var(--navy)}
.m-field{font-size:15px;line-height:1.5;margin:22px 0;gap:9px}
.m-field input,.m-field select,.m-field textarea{border-color:#b8c2cb;border-radius:6px;padding:13px 14px;font-weight:400}
.m-check{font-size:15px;font-weight:500}.m-check input{accent-color:var(--navy)}
.m-idea{border:0;border-top:1px solid #d6dde3;background:transparent;padding:28px 0 8px;margin:32px 0 12px}
.m-idea h3{font-family:var(--sans);font-size:14px;line-height:1.5;font-weight:700;color:var(--navy);margin-top:22px}
.m-idea p{margin:6px 0 16px}.m-idea .m-notice{background:transparent;padding:0;color:#667381;font-size:13px}
.matcher-card dl{border-left:2px solid var(--gold);padding-left:20px;margin:28px 0}
@media(max-width:600px){.matcher-body{padding:28px 16px 56px}.matcher-card{padding:24px 20px}.matcher-card fieldset{padding:20px 0 0}.m-idea{padding:24px 0 8px}}
