.guest-support-dialog { --guest-bg:#fff;--guest-text:#202a35;--guest-muted:#526274;--guest-line:#c7d2df;--guest-accent:#294c70;--guest-error:#a21930;--guest-soft:#edf2f7;box-sizing:border-box;width:min(720px,calc(100% - 32px));max-height:calc(100dvh - 32px);padding:0;border:1px solid var(--guest-line);border-radius:18px;background:var(--guest-bg);color:var(--guest-text);font:16px/1.5 'Nunito',Arial,sans-serif;overscroll-behavior:contain; }
.guest-support-dialog::backdrop { background:rgba(12,20,31,.7); }
.guest-support-dialog * { box-sizing:border-box; }
.guest-support-dialog [hidden] { display:none!important; }
.guest-support-heading { display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:22px 24px;border-bottom:1px solid var(--guest-line); }
.guest-support-heading h2 { margin:0;font-size:24px;line-height:1.25; }
.guest-support-heading p,.guest-support-hint { margin:5px 0 14px;color:var(--guest-muted);font-size:14px; }
.guest-support-content { padding:20px 24px 24px; }
.guest-support-tabs,.guest-support-thread-heading { display:flex;gap:12px;align-items:flex-start;justify-content:space-between;flex-wrap:wrap; }
.guest-support-tabs { justify-content:flex-start; }
.guest-support-button { min-height:44px;max-width:100%;border:1px solid var(--guest-line);border-radius:10px;padding:10px 14px;background:var(--guest-bg);color:var(--guest-text);font:700 14px/1.4 'Nunito',Arial,sans-serif;cursor:pointer;touch-action:manipulation; }
.guest-support-button.primary { background:var(--guest-accent);border-color:var(--guest-accent);color:#fff; }
.guest-support-button:hover:not(:disabled) { filter:brightness(.95); }
.guest-support-button:disabled { opacity:.55;cursor:default; }
.guest-support-dialog :is(button,input,select,textarea):focus-visible { outline:3px solid #4a8ac2;outline-offset:3px; }
.guest-support-dialog label { display:block;font-weight:700;margin:14px 0 6px; }
.guest-support-dialog :is(input:not([type=checkbox]),textarea,select) { display:block;width:100%;min-width:0;min-height:44px;margin-top:5px;padding:10px 12px;border:1px solid var(--guest-line);border-radius:9px;background:var(--guest-bg);color:var(--guest-text);font:400 16px/1.5 'Nunito',Arial,sans-serif; }
.guest-support-dialog textarea { resize:vertical;overflow-wrap:anywhere; }
.guest-support-dialog input[type=file] { padding:8px;font-size:14px; }
.guest-support-dialog input[type=checkbox] { width:20px;height:20px;min-width:20px;margin:3px 0 0;accent-color:var(--guest-accent); }
.guest-support-dialog .guest-support-consent { display:flex;gap:12px;align-items:flex-start;font-weight:400;margin:18px 0; }
.guest-support-grid { display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px; }
.guest-support-status { min-height:24px;margin:12px 0;color:var(--guest-muted);overflow-wrap:anywhere; }
.guest-support-status.error { color:var(--guest-error); }
.guest-support-honeypot { position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden; }
.guest-support-message { padding:14px;margin:14px 20px 14px 0;border-radius:12px;background:var(--guest-soft);overflow-wrap:anywhere; }
.guest-support-message.from-guest { margin-left:20px;margin-right:0; }
.guest-support-message header { display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;color:var(--guest-muted);font-size:13px; }
.guest-support-message p { white-space:pre-wrap;margin:8px 0; }
.guest-support-message img { display:block;max-width:100%;height:auto;margin-top:10px;border-radius:8px; }
#guestSupportCode,#guestSupportRestoreCode { font-family:ui-monospace,Consolas,monospace;overflow-wrap:anywhere; }
#guestSupportReplyForm { border-top:1px solid var(--guest-line);padding-top:8px; }
@media(max-width:520px) { .guest-support-dialog { width:calc(100% - 16px);max-height:calc(100dvh - 16px);border-radius:12px; }.guest-support-heading { padding:16px;gap:10px; }.guest-support-heading h2 { font-size:21px; }.guest-support-content { padding:14px 16px 20px; }.guest-support-grid { grid-template-columns:minmax(0,1fr);gap:0; }.guest-support-message { margin-right:8px; }.guest-support-message.from-guest { margin-left:8px; }.guest-support-tabs .guest-support-button { flex:1; } }
@media(prefers-reduced-motion:reduce) { .guest-support-dialog * { scroll-behavior:auto!important;transition:none!important; } }
