.conversation-feedback-dialog {
    box-sizing: border-box;
    width: min(720px, calc(100% - 24px));
    max-width: calc(100% - 24px);
    max-height: calc(100dvh - 24px);
    margin: auto;
    padding: 28px;
    border: 1px solid var(--paper-mist, #efe9db);
    border-radius: 24px;
    background: var(--paper-card, #fffdf6);
    color: var(--ink, #2e3a34);
    box-shadow: 0 24px 80px #0004;
    overflow-y: auto;
    overscroll-behavior: contain;
    font: 16px/1.6 system-ui, sans-serif;
}
.conversation-feedback-dialog::backdrop { background: #17251dcc; }
.conversation-feedback-dialog * { box-sizing: border-box; }
.conversation-feedback-dialog h2 { margin: 4px 0 10px; font-size: 26px; line-height: 1.4; }
.conversation-feedback-dialog header p { margin: 0 0 16px; }
.conversation-feedback-dialog .conversation-feedback-eyebrow { color: var(--ink-soft, #6b7570); font-size: 14px; margin-bottom: 4px; }
.conversation-feedback-dialog fieldset { min-width: 0; margin: 0 0 24px; padding: 0; border: 0; }
.conversation-feedback-dialog legend { padding: 0; font-size: 17px; font-weight: 600; }
.conversation-feedback-choices { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 8px; margin-top: 12px; }
.conversation-feedback-choices label { position: relative; cursor: pointer; }
.conversation-feedback-choices input { position: absolute; opacity: 0; width: 100%; height: 100%; margin: 0; }
.conversation-feedback-choices span { display: flex; min-height: 74px; flex-direction: column; align-items: center; justify-content: center; border: 1px solid var(--ink-soft, #6b7570); border-radius: 12px; padding: 8px 2px; text-align: center; }
.conversation-feedback-choices b { font-size: 22px; line-height: 1.3; }
.conversation-feedback-choices small { font-size: 12px; overflow-wrap: anywhere; }
.conversation-feedback-choices input:checked + span { background: var(--green, #355a4e); color: #fff; border-color: var(--green, #355a4e); }
.conversation-feedback-choices input:focus-visible + span { outline: 3px solid var(--gold, #c48a4a); outline-offset: 3px; }
.conversation-feedback-comment { display: block; font-weight: 600; }
.conversation-feedback-comment > span { font-weight: 400; color: var(--ink-soft, #6b7570); }
.conversation-feedback-dialog textarea { display: block; width: 100%; min-height: 96px; resize: vertical; margin-top: 8px; padding: 12px; border: 1px solid var(--ink-soft, #6b7570); border-radius: 12px; background: var(--paper, #f7f3ea); color: inherit; font: inherit; }
.conversation-feedback-status { min-height: 1.6em; margin: 12px 0; }
.conversation-feedback-dialog footer { display: flex; justify-content: flex-end; gap: 12px; }
.conversation-feedback-dialog button { min-height: 48px; padding: 10px 24px; border: 1px solid var(--ink-soft, #6b7570); border-radius: 12px; font: inherit; font-weight: 600; cursor: pointer; }
.conversation-feedback-skip { background: transparent; color: inherit; }
.conversation-feedback-submit { background: var(--green, #355a4e); color: #fff; }
.conversation-feedback-dialog button:disabled { opacity: .6; cursor: wait; }
:root[data-theme="dark"] .conversation-feedback-choices input:checked + span,
:root[data-theme="dark"] .conversation-feedback-submit { background: var(--night-action, #3e6354); }
@media (max-width: 480px) {
    .conversation-feedback-dialog { padding: 20px 16px; border-radius: 18px; }
    .conversation-feedback-dialog h2 { font-size: 23px; }
    .conversation-feedback-choices { gap: 5px; }
    .conversation-feedback-dialog footer button { flex: 1; padding: 10px; }
}
