.review-form{--ink:#0e141b;--steel-400:#6e8091;--steel-300:#9aabb8;--steel-100:#e2e8ed;--concrete:#edf1f4;--hivis:#ffc93c;--hivis-deep:#e5a900;--hivis-soft:#fff3d0;--flare:#ff5a3c;--signal:#12b886;--r-md:10px;--ease:cubic-bezier(.22, .68, .32, 1);--fast:.18s;background:var(--concrete);border:1px solid var(--steel-100);border-radius:16px;margin-top:22px;padding:20px}.review-form__head h3{font-family:var(--font-dispatch-display), sans-serif;letter-spacing:-.02em;text-transform:uppercase;color:var(--ink);margin:0;font-size:1.05rem;font-weight:900}.review-form__head p{color:var(--steel-400);margin:6px 0 0;font-size:.88rem}.review-form__stars{flex-wrap:wrap;align-items:center;gap:4px;margin:16px 0 18px;display:flex}.review-form__star{cursor:pointer;transition:transform var(--fast) var(--ease);background:0 0;border:0;border-radius:8px;place-items:center;padding:4px;display:grid}.review-form__star:hover,.review-form__star:focus-visible{outline:none;transform:translateY(-2px)scale(1.08)}.review-form__star.is-on{transform:translateY(-1px)}.review-form__hint{font-family:var(--font-hivis-mono), monospace;color:var(--steel-400);margin-left:8px;font-size:.74rem}.review-form__field{gap:6px;margin-bottom:14px;display:grid}.review-form__field span{font-family:var(--font-hivis-mono), monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--steel-400);font-size:.7rem}.review-form__field input,.review-form__field textarea{border:1.5px solid var(--steel-100);border-radius:var(--r-md);width:100%;color:var(--ink);font:inherit;resize:vertical;transition:border-color var(--fast) var(--ease), box-shadow var(--fast) var(--ease);background:#fff;padding:12px 14px;font-size:.92rem}.review-form__field input:focus,.review-form__field textarea:focus{border-color:var(--ink);outline:none;box-shadow:0 0 0 4px #ffc93c47}.review-form__field em{font-style:normal;font-family:var(--font-hivis-mono), monospace;color:var(--steel-300);justify-self:end;font-size:.68rem}.review-form__error{color:var(--flare);margin:0 0 10px;font-size:.84rem;font-weight:600}.review-form__ok{color:#0b8a64;margin:0 0 10px;font-size:.84rem;font-weight:600}.review-form__submit{border-radius:var(--r-md);background:var(--ink);color:#fff;width:100%;font-family:var(--font-dispatch-display), sans-serif;letter-spacing:-.01em;text-transform:uppercase;cursor:pointer;transition:background var(--fast) var(--ease), transform var(--fast) var(--ease), opacity var(--fast) var(--ease);border:0;justify-content:center;align-items:center;padding:13px 16px;font-size:.88rem;font-weight:900;display:inline-flex}.review-form__submit:hover:not(:disabled){background:#1b2631;transform:translateY(-1px)}.review-form__submit:disabled{opacity:.45;cursor:not-allowed;background:#4a5c6b;transform:none}.review-form__gate{border-radius:var(--r-md);background:var(--hivis-soft);color:var(--ink);margin:12px 0 0;padding:10px 12px;font-size:.86rem;font-weight:600}.review-form__gate a{color:var(--hivis-deep);text-underline-offset:2px;font-weight:800;text-decoration:underline}.review-form__field input:disabled,.review-form__field textarea:disabled,.review-form__star:disabled{opacity:.55;cursor:not-allowed}@media (prefers-reduced-motion:reduce){.review-form__star,.review-form__submit{transition:none}.review-form__star:hover,.review-form__star:focus-visible,.review-form__submit:hover:not(:disabled){transform:none}}
