/* Practice Review form */
.review-layout{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:64px;align-items:start}
.review-card{padding:clamp(24px,4vw,44px);border:1px solid var(--line);border-radius:14px;background:#fffdf7}
.review-form{display:flex;flex-direction:column;gap:22px}
.review-form .field{display:flex;flex-direction:column;gap:8px;margin:0;padding:0;border:0;min-width:0}
.review-form .field-label,.review-form legend{font-size:16px;font-weight:500;color:var(--ink);line-height:1.45}
.review-form .req{color:var(--green)}
.review-form input,.review-form select,.review-form textarea{width:100%;font:inherit;font-size:17px;color:var(--ink);background:#fff;border:1px solid #b9c3b6;border-radius:8px;padding:13px 14px;min-height:48px;transition:border-color .15s,box-shadow .15s}
.review-form textarea{min-height:140px;resize:vertical;line-height:1.55}
.review-form select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--green) 50%),linear-gradient(135deg,var(--green) 50%,transparent 50%);background-position:calc(100% - 20px) 21px,calc(100% - 15px) 21px;background-size:5px 5px;background-repeat:no-repeat;padding-right:40px}
.review-form input:focus,.review-form select:focus,.review-form textarea:focus{outline:none;border-color:var(--green);box-shadow:0 0 0 3px #c7d5c8}
.review-form [aria-invalid="true"]{border-color:#a8341f}
.review-form .error{color:#a8341f;font-size:14px;line-height:1.5;margin:0}
.review-form .error:empty{display:none}
.review-form .form-actions{display:flex}
.review-form .button{border-radius:999px;min-height:52px;padding:14px 28px;cursor:pointer}
.review-form .button[disabled]{opacity:.65;cursor:progress;transform:none}
.review-form .small-note{margin-top:0;color:var(--muted)}
.form-status{color:var(--muted)}
@media (max-width:900px){.review-layout{grid-template-columns:1fr;gap:36px}}
@media (max-width:600px){.review-form .button{width:100%}}