/*! Copyright (c) 2026 Dominic Tope. Classroom use permitted. See COPYRIGHT.txt and THIRD-PARTY-NOTICES.txt. */
.suggestions-page{padding-top:54px;padding-bottom:72px}.suggestions-intro{width:100%;max-width:none;margin:0 auto 38px;text-align:center}.suggestions-intro h1{max-width:1080px;margin:0 auto;text-wrap:balance}.suggestion-panel{width:100%;max-width:760px;margin:0 auto;padding:36px;border:1px solid #dbeafe;border-radius:24px;background:#fff;box-shadow:0 12px 38px rgba(15,23,42,.05)}.form-field{margin-bottom:25px;min-width:0}.form-field label{display:block;font-weight:700;margin-bottom:9px}.form-field label span{font-weight:400;color:#52647c}.form-field input,.form-field select,.form-field textarea{display:block;width:100%;min-height:48px;border:1px solid #adbed6;border-radius:10px;padding:12px 14px;color:#172c4d;background:#fff;font:inherit;line-height:1.6}.form-field textarea{min-height:240px;resize:vertical}.form-field input::placeholder,.form-field textarea::placeholder{color:#6a7b91;opacity:1}.form-field :is(input,textarea,select):focus-visible{outline:3px solid #93c5fd;outline-offset:2px;border-color:#2563eb}.form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.field-help,.form-privacy{font-size:.875em;line-height:1.55;color:#52647c}.field-help{margin:8px 0 0}.form-privacy{margin:0 0 24px}.suggestions-page a:not(.btn){color:#1146a1;text-decoration:underline;text-underline-offset:3px}.suggestion-status{padding:14px;border:1px solid #bfdbfe;border-radius:10px;background:#eff6ff;color:#172c4d}.suggestion-panel button:disabled{opacity:.65;cursor:progress}.suggestion-honeypot{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.suggestion-thanks{margin:22px auto}[hidden]{display:none!important}@media (max-width:620px){.suggestions-page{padding-top:32px}.suggestions-intro{margin-bottom:28px}.suggestion-panel{padding:23px}.form-row{grid-template-columns:1fr;gap:0}.form-field textarea{min-height:230px}}body.teacher-site .suggestion-panel h2{font-size:1.5rem;margin:0 0 12px;line-height:1.3}.suggestion-panel-lead{margin:0 0 28px;color:#52647c;line-height:1.6}.followup-choice{margin:0 0 22px;border:1px solid #e0e6ef;border-radius:14px;background:#f8fafc;padding:16px}.followup-choice label{display:flex;align-items:flex-start;gap:12px;font-size:.95rem;line-height:1.5;font-weight:700;cursor:pointer}.followup-choice input{flex:0 0 18px;width:18px;height:18px;margin:2px 0 0;accent-color:#2563eb}.followup-choice input:focus-visible{outline:3px solid #60a5fa;outline-offset:3px}.form-field input[aria-invalid=true]{border:2px solid #dc2626;background:#fff5f5;box-shadow:0 0 0 3px rgba(220,38,38,.1)}.field-error{color:#b42318;margin:9px 0 0;font-size:.9rem;font-weight:700;line-height:1.5}.followup-email-field.field-attention{animation:suggestion-field-shake 420ms ease}@keyframes suggestion-field-shake{0%,100%{transform:translateX(0)}20%,60%{transform:translateX(-5px)}40%,80%{transform:translateX(5px)}}@media(prefers-reduced-motion:reduce){.followup-email-field.field-attention{animation:none}}