.footer-back { color: var(--muted); text-decoration: none; }
.footer-back:hover { color: var(--gold); }
.feedback-page { min-height: calc(100vh - 150px); padding: 150px 24px 100px; background: radial-gradient(circle at 50% 7%, rgba(125, 84, 136, 0.18), transparent 34%), var(--bg); }
.feedback-intro { width: min(820px, 100%); margin: 0 auto 52px; text-align: center; }
.feedback-intro h1 { margin-bottom: 20px; }
.feedback-intro > p:last-child { max-width: 680px; margin: auto; color: var(--muted); font-size: 1.08rem; }
.feedback-card { width: min(860px, 100%); margin: auto; padding: clamp(26px, 5vw, 54px); border: 1px solid var(--line); border-radius: 28px; background: linear-gradient(145deg, #141418, #1d1d23); box-shadow: 0 26px 80px rgba(0,0,0,0.26); }
.feedback-card-heading { text-align: center; }
.feedback-card-heading h2 { margin-bottom: 14px; }
.feedback-card-heading > p:last-child { margin: 0; color: var(--muted); }
.feedback-form { margin-top: 42px; }
.form-honeypot { position: absolute !important; left: -9999px !important; width: 1px !important; height: 1px !important; opacity: 0 !important; pointer-events: none !important; }
.feedback-form label:not(.consent-row) { display: grid; gap: 8px; }
.feedback-form label > span, .rating-fieldset legend { color: #e9e3da; font-size: 0.84rem; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; }
.feedback-form input[type="text"], .feedback-form textarea { width: 100%; padding: 14px 15px; color: var(--text); background: rgba(7,7,9,0.62); border: 1px solid var(--line); border-radius: 12px; outline: none; font: inherit; }
.feedback-form textarea { resize: vertical; min-height: 170px; }
.feedback-form input[type="text"]:focus, .feedback-form textarea:focus { border-color: rgba(230,208,164,0.82); box-shadow: 0 0 0 3px rgba(230,208,164,0.1); }
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; margin-bottom: 20px; }
.rating-fieldset { margin: 0 0 28px; padding: 0; border: 0; }
.rating-fieldset legend { width: 100%; margin-bottom: 6px; text-align: center; }
.star-rating { display: flex; justify-content: center; gap: 8px; }
.star-choice { position: relative; display: inline-block; width: 1em; font-size: clamp(2.2rem, 7vw, 3.25rem); line-height: 1; transition: transform 160ms ease; }
.star-visual { position: relative; display: block; width: 1em; height: 1em; color: #5c5854; font-family: Arial, Helvetica, sans-serif; line-height: 1; text-align: center; }
.star-visual-empty, .star-visual-filled { position: absolute; inset: 0; display: block; width: 100%; height: 100%; }
.star-visual-filled { color: var(--gold); clip-path: inset(0 calc(100% - var(--star-fill, 0%)) 0 0); }
.star-choice input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.star-choice label { position: absolute; z-index: 2; top: 0; bottom: 0; cursor: pointer; }
.star-choice label.left-half { left: 0; width: 50%; }
.star-choice label.right-half { right: 0; width: 50%; }
.star-choice:has(label:hover) { transform: translateY(-2px); }
.star-choice:has(input:focus-visible) { outline: 2px solid var(--gold); outline-offset: 4px; border-radius: 4px; }
.consent-row { display: flex; align-items: flex-start; gap: 12px; margin-top: 22px; color: var(--muted); cursor: pointer; }
.consent-row input { flex: 0 0 auto; width: 18px; height: 18px; margin-top: 4px; accent-color: var(--gold); }
.consent-row span { font-size: 0.88rem; font-weight: 400; line-height: 1.55; letter-spacing: normal; text-transform: none; }
.form-footer { margin-top: 30px; display: flex; align-items: center; gap: 20px; }
.form-footer .btn { border: 0; cursor: pointer; white-space: nowrap; }
.form-footer .btn:disabled { cursor: wait; opacity: 0.68; }
.form-footer p { margin: 0; color: var(--muted); font-size: 0.78rem; line-height: 1.5; }
.form-notice { min-height: 1.5em; margin: 14px 0 0; color: var(--gold); font-size: 0.9rem; }
.form-notice.success { color: #b8d7b0; }
.form-notice.error { color: #ef9f9f; }
@media (max-width: 900px) { .form-footer { align-items: flex-start; flex-direction: column; } }
@media (max-width: 580px) {
  .feedback-page { padding: 122px 16px 75px; }
  .feedback-intro { margin-bottom: 34px; }
  .feedback-card { border-radius: 20px; }
  .feedback-form { margin-top: 32px; }
  .form-grid { grid-template-columns: 1fr; }
  .form-footer .btn { width: 100%; }
}
