.support-widget { --help-bg: #161b22; --help-ink: #f5f1e7; --help-muted: #b7b5ac; --help-line: #ffffff30; --help-accent: #e1c184; font: 14px/1.5 Outfit, system-ui, sans-serif; }
:root[data-theme="light"] .support-widget { --help-bg: #fffdf7; --help-ink: #24382e; --help-muted: #56665d; --help-line: #23362b30; --help-accent: #715421; }
.support-widget * { box-sizing: border-box; }
.support-launcher { position: fixed; z-index: 850; right: 22px; bottom: 22px; display: flex; align-items: center; gap: 9px; padding: 13px 18px; min-height: 52px; border: 1px solid #f3ddaa; border-radius: 30px; background: #e5c687; color: #24281e; box-shadow: 0 8px 25px #0003; cursor: pointer; font: 600 14px Outfit, sans-serif; }
.support-dialog { width: min(420px, calc(100vw - 24px)); max-width: 420px; max-height: calc(100dvh - 32px); margin: auto 20px 20px auto; padding: 0; border: 1px solid var(--help-line); border-radius: 22px; background: var(--help-bg); color: var(--help-ink); box-shadow: 0 20px 80px #0005; overflow-y: auto; }
.support-dialog::backdrop { background: #0a151244; backdrop-filter: blur(3px); }
.support-dialog header { display: flex; align-items: center; justify-content: space-between; padding: 20px; border-bottom: 1px solid var(--help-line); }
.support-dialog header small { color: var(--help-muted); font-size: 9px; letter-spacing: .1em; }
.support-dialog h2 { margin: 5px 0 0; font-size: 25px; color: var(--help-ink); }
.support-close { width: 44px; height: 44px; border: 1px solid var(--help-line); border-radius: 50%; background: transparent; color: var(--help-ink); font-size: 27px; cursor: pointer; }
.support-intro { padding: 0 20px; font-size: 12px; color: var(--help-muted); }
.support-log { display: flex; flex-direction: column; gap: 10px; max-height: 230px; overflow-y: auto; padding: 0 20px; }
.support-message { align-self: flex-end; max-width: 92%; padding: 10px 13px; background: #c5a05922; border: 1px solid var(--help-line); border-radius: 14px 14px 3px 14px; overflow-wrap: anywhere; }
.support-message[data-sender="support"] { align-self: flex-start; background: #668c7c26; border-radius: 14px 14px 14px 3px; }
.support-message p { white-space: pre-wrap; margin: 0 0 4px; }
.support-message small { font-size: 9px; color: var(--help-muted); }
.support-form { padding: 14px 20px 0; }
.support-identity { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.support-identity[hidden] { display: none; }
.support-form label { display: block; font-size: 12px; }
.support-form label small { color: var(--help-muted); font-size: 10px; }
.support-form input:not([type="checkbox"]), .support-form textarea { width: 100%; min-height: 44px; margin: 5px 0 12px; padding: 10px; border: 1px solid var(--help-line); border-radius: 10px; background: transparent; color: var(--help-ink); font: 16px Outfit, system-ui, sans-serif; }
.support-form textarea { resize: vertical; max-height: 180px; }
.support-form .support-consent { display: flex; align-items: flex-start; gap: 9px; margin-bottom: 12px; font-size: 11px; color: var(--help-muted); }
.support-consent input { flex: 0 0 20px; width: 20px; height: 20px; margin: 0; }
.support-dialog a { color: var(--help-accent); text-underline-offset: 3px; }
.support-send { width: 100%; min-height: 46px; border: 0; border-radius: 12px; background: #e5c687; color: #24281e; font: 600 14px Outfit, system-ui, sans-serif; cursor: pointer; }
.support-send:disabled { opacity: .5; cursor: not-allowed; }
.support-status { padding: 0 20px; font-size: 12px; color: var(--help-muted); }
.support-dialog footer { display: flex; flex-wrap: wrap; gap: 10px; padding: 0 20px 18px; border: 0; font-size: 12px; }
.support-dialog footer small { display: block; width: 100%; color: var(--help-muted); font-size: 10px; }
.support-new { border: 0; background: none; color: var(--help-accent); font: inherit; text-decoration: underline; cursor: pointer; }
.support-new[hidden] { display: none; }
@media (max-width: 640px) {
    .support-launcher { right: 16px; bottom: calc(16px + env(safe-area-inset-bottom)); padding: 13px; }
    .support-launcher span { display: none; }
    body:has(.studio-actions) .support-launcher { bottom: calc(100px + env(safe-area-inset-bottom)); }
    .support-dialog { margin: auto; max-height: calc(100dvh - 24px); }
}
