#rf149-login-contact { margin:12px auto 0; text-align:center; }
#rf149-contact-open { background:none; border:0; color:#0b2537; font:14px/1.5 Arial,sans-serif; text-decoration:underline; text-underline-offset:4px; cursor:pointer; padding:10px 16px; min-height:44px; }
#rf149-contact-dialog { width:430px; max-width:calc(100% - 32px); max-height:calc(100dvh - 32px); margin:auto; padding:24px; border:1px solid #dce1e2; border-top:4px solid #bb3b16; border-radius:14px; background:#fff; color:#0b2537; box-shadow:0 20px 70px rgba(11,37,55,.22); font:14px/1.5 Arial,sans-serif; overflow:auto; }
#rf149-contact-dialog::backdrop { background:rgba(11,37,55,.55); }
#rf149-contact-dialog .rf149-help-heading { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:8px; }
#rf149-contact-title { margin:0; font:700 23px/1.3 Arial,sans-serif; color:#0b2537; }
#rf149-contact-close { flex:none; width:44px; height:44px; padding:0; border:0; background:transparent; color:#0b2537; font:30px/1 Arial,sans-serif; cursor:pointer; }
#rf149-contact-description { margin:0 0 16px; color:#52616b; }
#rf149-contact-dialog .rf149-help-details { display:flex; flex-direction:column; align-items:flex-start; gap:3px; padding:0 0 18px; margin-bottom:18px; border-bottom:1px solid #e1e5e7; }
#rf149-contact-dialog a { color:#0b2537; text-underline-offset:3px; }
#rf149-contact-dialog form { margin:0; padding:0; border:0; box-shadow:none; }
#rf149-contact-dialog label { display:block; margin:0 0 5px; font-weight:600; }
#rf149-contact-dialog input:not([type=hidden]),#rf149-contact-dialog textarea { display:block; box-sizing:border-box; width:100%; min-height:44px; margin:0 0 14px; border:1px solid #bcc5ca; border-radius:6px; padding:10px 12px; color:#0b2537; background:#fbfcfc; font:16px/1.4 Arial,sans-serif; }
#rf149-contact-dialog textarea { resize:vertical; min-height:105px; }
#rf149-contact-dialog .rf149-help-trap { display:none; }
#rf149-help-send { width:100%; min-height:46px; border:1px solid #bb3b16; border-radius:6px; padding:10px 14px; background:#bb3b16; color:#fff; font:600 15px/1.4 Arial,sans-serif; cursor:pointer; }
#rf149-help-send:hover { background:#963113; }
#rf149-help-send:disabled { opacity:.65; cursor:wait; }
#rf149-help-status { margin:12px 0 0; color:#0b2537; }
#rf149-help-status:empty { margin:0; }
#rf149-help-status.is-error { color:#a12c15; }
#rf149-contact-dialog :focus-visible,#rf149-contact-open:focus-visible { outline:2px solid #bb3b16; outline-offset:3px; }
@media(max-width:480px){ #rf149-contact-dialog { padding:18px; } }

#rf149-contact-dialog .rf149-help-details { display:grid; grid-template-columns:80px minmax(0,1fr); align-items:center; gap:16px; }
#rf149-contact-dialog .rf149-help-portrait { display:block; width:80px; height:80px; border-radius:50%; object-fit:cover; }
#rf149-contact-dialog .rf149-help-person { display:flex; flex-direction:column; gap:3px; min-width:0; }
#rf149-contact-dialog .rf149-help-person a { overflow-wrap:anywhere; }
@media(max-width:360px){ #rf149-contact-dialog .rf149-help-details { grid-template-columns:64px minmax(0,1fr); gap:12px; } #rf149-contact-dialog .rf149-help-portrait { width:64px; height:64px; } }

#rf149-login-contact { display:flex; align-items:center; justify-content:center; gap:5px; font:14px/1.5 Arial,sans-serif; color:#52616b; }
#rf149-contact-open { padding:10px 0; }
@media(max-width:360px){ #rf149-login-contact { font-size:13px; } #rf149-contact-open { font-size:13px; } }

#rf149-contact-dialog { box-sizing:border-box; }
