/* Private feedback modal — stars only, no text input (no free-text
   field to worry about server-side). Fully self-contained. Safe to
   remove: delete this file, css/feedback.css's <link> in index.html,
   the #topbar-feedback-btn button, the initFeedback() import/call in
   js/main.js, js/feedback.js, and api/feedback.php. Rating is stored
   server-side only — never shown publicly anywhere on the site. */

.feedback-backdrop {
  display: none;
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.55);
  z-index: 300;
  align-items: center;
  justify-content: center;
}

.feedback-backdrop.is-open {
  display: flex;
}

.feedback-modal {
  width: min(360px, 92vw);
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-lg);
  padding: var(--space-5);
  position: relative;
}

.feedback-modal h2 {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  font-size: 16px;
  font-weight: 600;
  color: var(--color-text);
  margin: 0 0 var(--space-2);
}

.feedback-modal p.feedback-hint {
  font-size: 12px;
  color: var(--color-text-muted);
  margin: 0 0 var(--space-4);
  line-height: 1.5;
}

.feedback-close {
  position: absolute;
  top: var(--space-4);
  right: var(--space-4);
  background: none;
  border: none;
  color: var(--color-text-muted);
  cursor: pointer;
  padding: var(--space-1);
  border-radius: var(--radius-sm);
}

.feedback-close:hover {
  color: var(--color-text);
  background: var(--color-surface-3);
}

.feedback-stars {
  display: flex;
  gap: var(--space-1);
  margin-bottom: var(--space-4);
}

.feedback-star {
  background: none;
  border: none;
  cursor: pointer;
  padding: var(--space-1);
  color: var(--color-text-faint);
  line-height: 0;
}

.feedback-star .material-icons { font-size: 28px; }

.feedback-star:hover,
.feedback-star.is-filled {
  color: var(--color-warning);
}

.feedback-actions {
  display: flex;
  justify-content: flex-end;
  gap: var(--space-2);
}

.feedback-status {
  font-size: 12px;
  color: var(--color-text-muted);
  margin-top: var(--space-3);
  min-height: 16px;
}

.feedback-status.is-success { color: var(--color-success); }
.feedback-status.is-error   { color: var(--color-danger); }
