/* Scoped to feedback dialogs; the site's existing colours remain in use. */
#panel_begin:has(.feedback-panel) { overflow-y: auto; }
#panel_begin #small_panel.feedback-panel {
    position: fixed; top: 32px; left: 50%; transform: translateX(-50%);
    box-sizing: border-box; width: 540px; max-width: calc(100vw - 32px);
    height: auto; max-height: calc(100vh - 64px); overflow-y: auto;
    margin: 0; padding: 28px; border-radius: 3px;
}
#small_panel.feedback-panel h1 { margin: 0 36px 22px 0; font-size: 32px; line-height: 1.2; }
#small_panel.feedback-panel #q_form_phone { width: auto; height: auto; overflow: visible; }
#small_panel.feedback-panel .form_out { width: 100%; margin: 0; padding: 0; }
#small_panel.feedback-panel .form_out > div { margin: 0 0 16px; overflow: visible; }
#small_panel.feedback-panel label { display: block; float: none; width: auto; padding: 0; margin: 0 0 6px; top: auto; font-size: 15px; }
#small_panel.feedback-panel input[type=text], #small_panel.feedback-panel input[type=email],
#small_panel.feedback-panel input[type=tel], #small_panel.feedback-panel textarea {
    display: block; box-sizing: border-box; width: 100%; max-width: 100%;
    height: 42px; margin: 0; padding: 9px 10px; border: 1px solid #bdbdbd;
    border-radius: 2px; background: #fff; color: #333; font: 16px/22px Arial, sans-serif;
}
#small_panel.feedback-panel textarea { height: 112px; min-height: 88px; resize: vertical; }
#small_panel.feedback-panel .form_out .feedback-actions { display: flex; justify-content: flex-end; gap: 12px; flex-wrap: wrap; margin: 22px 0 0; }
#panel_begin #small_panel.feedback-panel input[type=submit], #panel_begin #small_panel.feedback-panel button {
    position: static; box-sizing: border-box; width: auto; height: auto; min-height: 42px;
    margin: 0; padding: 10px 18px; border: 1px solid #ed2481; border-radius: 2px;
    background: #ed2481; color: #fff; cursor: pointer; font: 16px/20px Arial, sans-serif;
}
#panel_begin #small_panel.feedback-panel button.feedback-clear { border-color: #999; color: #555; background: #fff; }
#panel_begin #small_panel.feedback-panel button.feedback-login { background: #008c42; border-color: #008c42; }
#small_panel.feedback-panel button:disabled, #small_panel.feedback-panel input:disabled { cursor: wait; opacity: .6; }
#small_panel.feedback-panel .form_out .feedback-notice { padding: 12px; margin: 16px 0 0; background: #f0f7f2; border-left: 3px solid #008c42; font-size: 15px; line-height: 1.5; color: #333; }
#small_panel.feedback-panel .feedback-notice button { display: block; margin-top: 10px; }
#small_panel.feedback-panel .close_form { top: 16px; right: 16px; cursor: pointer; }
@media (max-width: 600px) {
    #panel_begin #small_panel.feedback-panel { top: 12px; max-width: calc(100vw - 24px); max-height: calc(100vh - 24px); padding: 22px 18px; }
    #small_panel.feedback-panel h1 { font-size: 28px; margin-bottom: 20px; }
    #small_panel.feedback-panel .feedback-actions > * { flex: 1; }
}
