/* Feedback card: a small corner card, never a blocking box. Brand colours only. */
.fb-card { position: fixed; z-index: 900; right: 16px; bottom: 16px; width: min(340px, calc(100vw - 32px)); padding: 18px 18px 14px; border-radius: 18px; background: #fdfdff; color: #0a0a0a; font-family: "Instrument Sans", system-ui, sans-serif; box-shadow: 0 0 0 1.5px #0a0a0a, 5px 5px 0 #0a0a0a; transform: translateY(calc(100% + 32px)); opacity: 0; transition: transform .32s cubic-bezier(.2, 1.3, .4, 1), opacity .2s ease-out; }
.fb-card.in { transform: none; opacity: 1; }
.fb-title { margin: 0 32px 12px 0; font: 400 20px/1.1 "Archivo Black", "Archivo", system-ui, sans-serif; letter-spacing: -.01em; }
.fb-card.done .fb-title { margin-bottom: 0; }
.fb-x { position: absolute; top: 6px; right: 6px; width: 44px; height: 44px; border: 0; border-radius: 50%; background: none; color: inherit; font-size: 15px; cursor: pointer; }
.fb-x:hover { background: #cafc01; }
.fb-rates { display: flex; flex-wrap: wrap; gap: 8px; }
.fb-rate { flex: 1 1 auto; min-height: 44px; padding: 0 12px; border: 1.5px solid #0a0a0a; border-radius: 999px; background: none; color: inherit; font: 700 14px "Instrument Sans", system-ui, sans-serif; cursor: pointer; transition: transform .15s ease-out, background-color .15s ease-out; }
.fb-rate:hover { box-shadow: inset 0 0 0 1.5px #0a0a0a; }
.fb-rate:active { transform: scale(.96); }
.fb-rate[aria-pressed="true"] { background: #cafc01; }
.fb-note { margin-top: 12px; }
.fb-note label { display: block; margin-bottom: 6px; font: 700 13px "Instrument Sans", system-ui, sans-serif; }
.fb-note textarea { box-sizing: border-box; width: 100%; min-height: 64px; padding: 10px 12px; border: 1.5px solid #0a0a0a; border-radius: 12px; background: #fdfdff; color: #0a0a0a; font: 16px/1.4 "Instrument Sans", system-ui, sans-serif; resize: vertical; }
.fb-ctx { margin: 0 0 10px; font-size: 13px; line-height: 1.45; }
.fb-acts { display: flex; justify-content: flex-end; margin-top: 10px; }
.fb-send { min-height: 44px; padding: 0 22px; border: 0; border-radius: 999px; background: #f42902; color: #0a0a0a; font: 800 14px "Instrument Sans", system-ui, sans-serif; cursor: pointer; }
.fb-send:disabled { opacity: .5; cursor: default; }
.fb-status { min-height: 0; margin: 8px 0 0; font-size: 13px; }
.fb-status:empty { margin: 0; }
.fb-card :focus-visible { outline: 3px solid #0a0a0a; outline-offset: 2px; box-shadow: 0 0 0 6px #cafc01; }
.fb-report { display: inline-flex; align-items: center; min-height: 44px; font-size: 13px; }
.fb-report[hidden] { display: none; }
.foot-fb { border: 0; background: none; padding: 0; color: inherit; font: inherit; text-decoration: underline; cursor: pointer; }
@media (max-width: 520px) { .fb-card { right: 12px; left: 12px; bottom: max(12px, env(safe-area-inset-bottom)); width: auto; } }
@media (prefers-reduced-motion: reduce) { .fb-card { transition: opacity .15s linear; transform: none; } }
.set-head-acts { display: flex; flex-wrap: wrap; gap: 8px; }
.fb-sr { position: absolute; width: 1px; height: 1px; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
