/* Shared LIANYIXIN enquiry and support surfaces. */
.intake-form.rfq-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 20px}
.intake-form.rfq-form label,.standalone-form .intake-form.rfq-form label{display:flex;flex-direction:column;align-items:stretch;gap:7px;font-size:13px;line-height:1.5;min-width:0}
.intake-form.rfq-form label>span{text-align:left;margin:0;color:#34485d;font-size:13px}
.intake-form.rfq-form input,.intake-form.rfq-form textarea{max-width:none;border:1px solid #cdd8e2;border-radius:0;background:#fff;color:#172b41;font:15px/1.5 Helvetica,Arial,sans-serif;padding:11px 12px}
.intake-form.rfq-form input{height:45px}
.intake-form.rfq-form textarea{min-height:100px;resize:vertical}
.intake-form .message-field,.intake-form .form-note,.intake-form .intake-feedback{grid-column:1/-1}
.intake-form.rfq-form .form-note{margin:0;font-size:12px;line-height:1.7;color:#5a6d80}
.intake-form.rfq-form>.button{justify-self:start;align-self:start;display:flex;align-items:center;justify-content:center;gap:16px;min-height:46px;min-width:180px;border-radius:0;font-size:15px}
.intake-form .button:disabled,.chat-form .button:disabled{opacity:.65;cursor:wait}
.intake-form .intake-feedback{margin:0;min-height:0;line-height:1.7;color:#174970;font-size:14px;overflow-wrap:anywhere}
.intake-form .intake-feedback:empty{display:none}
.intake-feedback.is-error{color:#9b2837!important}
.intake-feedback.is-success{border-left:3px solid var(--blue,#086ab4);padding:10px 14px;background:#edf6fc}
.intake-feedback a{display:inline-block;text-decoration:underline;margin-top:5px}
.intake-feedback .intake-reference{display:block;font-size:12px;margin-top:8px;overflow-wrap:anywhere}
.intake-form.compact-form{grid-template-columns:minmax(0,1fr);gap:14px}
.intake-form.compact-form>.button{width:100%;min-width:0;font-size:14px}
.intake-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.contact-inquiry>.intake-form{display:grid}
.contact-inquiry .intake-form label>span,.contact-inquiry .intake-form .form-note{color:#fff}
.contact-inquiry .intake-form .intake-feedback{padding:12px;background:#fff}
.contact-inquiry .intake-form .intake-feedback:empty{display:none}
.standalone-form>.intake-form{max-width:840px;margin:0 auto;padding:32px;border:1px solid #dce4ec;background:white}
.contact-dock{position:fixed;z-index:70;right:24px;bottom:24px;display:flex;flex-direction:column;gap:1px;box-shadow:0 8px 28px #071b3330}
.contact-dock>button,.contact-dock>a{position:relative;display:flex;align-items:center;justify-content:flex-start;gap:12px;min-height:48px;max-width:230px;padding:13px 17px;border:0;background:var(--blue,#086ab4);color:white;font:14px/1.3 Helvetica,Arial,sans-serif;cursor:pointer;text-decoration:none;text-align:left}
.contact-dock>button:hover,.contact-dock>a:hover{background:#075992}
.contact-dock .ui-icon{flex:0 0 22px;width:22px;height:22px}
.contact-dock .contact-dock-chat{background:#14283e}
.contact-dock .contact-dock-whatsapp{justify-content:space-between;background:#fff;color:#254965;font-size:12px;min-height:38px}
.chat-unread{display:grid;place-items:center;position:absolute;right:-8px;top:-8px;min-width:23px;height:23px;padding:0 5px;border:2px solid white;border-radius:50%;background:#086ab4;color:white;font-size:11px;font-weight:700}
.chat-unread[hidden]{display:none}
.quote-dialog,.support-dialog{padding:0;border:1px solid #c7d8e5;background:#fff;color:#1a2e42;box-shadow:0 24px 80px #00172e45;max-width:calc(100vw - 32px);font-family:Helvetica,Arial,sans-serif}
.quote-dialog{width:780px;max-height:calc(100dvh - 48px);overflow:auto}
.quote-dialog::backdrop{background:#081424b8;backdrop-filter:blur(3px)}
.intake-dialog-heading{display:flex;gap:20px;align-items:flex-start;justify-content:space-between;padding:28px 32px;background:#14263c;color:white;border-top:3px solid #00a6d9}
.intake-dialog-heading .eyebrow{display:block;color:#82d9f2;font-size:11px;line-height:1.5;letter-spacing:1.4px;font-weight:500;margin:0 0 10px}
.intake-dialog-heading .eyebrow span{margin:0 8px;color:#698ba7}
.intake-dialog-heading h2{color:white;font-size:28px;line-height:1.25;font-weight:500;margin:0}
.intake-dialog-heading p{color:#bdcddd;font-size:13px;line-height:1.6;margin:10px 0 0;max-width:560px}
.intake-close{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;margin:-9px -13px 0 0;border:0;background:transparent;color:#fff;font:30px/1 Helvetica,Arial,sans-serif;cursor:pointer}
.intake-close:hover{background:#ffffff15}
.quote-dialog-content{padding:26px 32px 30px}
.support-dialog{position:fixed;inset:auto 24px 196px auto;margin:0;z-index:90;width:400px;height:min(600px,calc(100dvh - 220px));max-height:calc(100dvh - 24px);overflow:hidden}
.support-dialog[open]{display:flex;flex-direction:column}
.support-dialog .intake-dialog-heading{padding:20px 22px;flex-shrink:0;align-items:center}
.support-dialog .intake-dialog-heading h2{font-size:21px}
.support-dialog .intake-dialog-heading .eyebrow{font-size:10px;margin-bottom:5px}
.support-dialog .intake-close{margin:0 -10px 0 0}
.chat-body{display:flex;flex:1;min-height:80px;flex-direction:column;overflow-y:auto;overscroll-behavior:contain;padding:18px 20px;background:#f4f7fa}
.chat-intro{font-size:12px;line-height:1.7;color:#5c7083;margin:0 0 20px;padding-bottom:14px;border-bottom:1px solid #dce5ed}
.chat-messages{display:flex;flex-direction:column;align-items:stretch;gap:12px}
.chat-empty{font-size:14px;line-height:1.7;margin:0;padding:14px 16px;background:white;border-left:2px solid #00a6d9;color:#28425a}
.chat-message{max-width:90%;padding:10px 13px;background:#fff;border:1px solid #e1e8ef;align-self:flex-start;overflow-wrap:anywhere}
.chat-message p{margin:0;white-space:pre-wrap;font-size:14px;line-height:1.65;color:inherit}
.chat-message time{display:block;font-size:10px;line-height:1.4;margin-top:5px;color:#708294}
.chat-message.is-visitor{align-self:flex-end;background:#086ab4;border-color:#086ab4;color:white}
.chat-message.is-visitor time{color:#d5e9f7}
.chat-message.is-system{background:#edf2f6;color:#607386;border:0;font-size:12px}
.chat-form{flex:0 0 auto;padding:14px 20px 10px;border-top:1px solid #dce5ed;background:#fff}
.chat-email{display:block;margin-bottom:12px;font-size:12px;color:#536a80}
.chat-email>span{display:block;margin-bottom:4px}
.chat-email input{width:100%;height:35px;min-width:0;padding:5px 9px;border:1px solid #d1dce6;font:14px/1.4 Helvetica,Arial,sans-serif;background:#fff;color:#17314a;border-radius:0}
.chat-composer{display:flex;align-items:stretch;gap:9px}
.chat-composer textarea{display:block;resize:none;flex:1;min-width:0;min-height:58px;max-height:120px;border:1px solid #cbd8e3;border-radius:0;padding:9px 10px;font:14px/1.5 Helvetica,Arial,sans-serif;background:white;color:#17314a}
.chat-composer .button{min-width:45px;align-self:stretch;padding:6px;font-size:25px}
.chat-form [data-chat-status]{min-height:15px;font-size:11px;line-height:1.5;margin:6px 0 0;color:#506c83}
.chat-form [data-chat-status].is-error{color:#9b2837}
.contact-dock :focus-visible,.quote-dialog :focus-visible,.support-dialog :focus-visible,.intake-form :focus-visible{outline:2px solid #00a6d9;outline-offset:3px}
@media(min-width:1000px) and (max-height:820px){.support-dialog{bottom:24px;right:254px;height:calc(100dvh - 128px);max-height:620px}}
@media(max-width:767px){
  body{padding-bottom:72px}
  .contact-dock{left:12px;right:12px;bottom:max(12px,env(safe-area-inset-bottom));flex-direction:row;gap:1px}
  .contact-dock>button,.contact-dock>a{flex:1;justify-content:center;min-width:0;max-width:none;padding:10px 7px;gap:6px;font-size:11px;line-height:1.3;text-align:center;min-height:48px}
  .contact-dock .ui-icon{flex-basis:18px;width:18px;height:18px}
  .contact-dock .contact-dock-whatsapp{justify-content:center;font-size:11px}
  .quote-dialog{max-width:calc(100vw - 20px);max-height:calc(100dvh - 28px);width:100%}
  .intake-dialog-heading{padding:21px 20px;gap:10px}
  .intake-dialog-heading h2{font-size:24px}
  .intake-dialog-heading p{font-size:12px}
  .quote-dialog-content{padding:20px}
  .intake-form.rfq-form{gap:15px;grid-template-columns:minmax(0,1fr)}
  .intake-form.rfq-form>.button{width:100%;min-width:0}
  .support-dialog{right:12px;bottom:76px;width:calc(100vw - 24px);max-width:calc(100vw - 24px);height:min(610px,calc(100dvh - 100px))}
  .support-dialog .intake-dialog-heading{padding:15px 18px}
  .chat-body{padding:14px 16px}
  .chat-form{padding:12px 16px 8px}
  .standalone-form>.intake-form{padding:22px 18px}
}
@media(prefers-reduced-motion:reduce){.quote-dialog::backdrop{backdrop-filter:none}}
