.quick-consult { position:fixed; z-index:50; right:18px; top:calc(50% + 40px); translate:0 -50%; width:232px; padding:13px; border:1px solid #e3e9e6; border-radius:15px; background:#fff; box-shadow:0 16px 55px #071c3030; color:#172c36; }
.quick-consult[hidden],.quick-consult-launcher[hidden] { display:none; }
.quick-consult-body { max-height:calc(100dvh - 160px); overflow-y:auto; overscroll-behavior:contain; }
.quick-consult h2 { margin:0 0 10px; padding:12px 5px; border-radius:7px; background:#f1f5f2; font-size:14px; font-weight:600; letter-spacing:-.035em; text-align:center; }
.quick-consult-close { position:absolute; top:-13px; right:-9px; display:grid; place-items:center; width:32px; height:32px; border:0; border-radius:50%; background:#fff; color:#142b36; box-shadow:0 3px 16px #0b223726; font-size:22px; line-height:1; }
.quick-consult input:not([type=checkbox]) { width:100%; min-width:0; height:39px; margin:0 0 9px; padding:9px 10px; border:1px solid #d9e1dd; border-radius:7px; background:#fff; color:#18342a; font-size:12px; }
.quick-consult input::placeholder { color:#8b9792; }
.quick-consult input:focus { border-color:#287b54; }
.quick-consult input[type=checkbox] { accent-color:#227653; width:15px; height:15px; flex:none; margin:2px 0 0; }
.quick-consult .quick-check { display:flex; align-items:flex-start; gap:8px; font-size:10px; line-height:1.6; margin:8px 0; cursor:pointer; color:#5c6d64; }
.quick-terms-link { display:block; width:max-content; margin:-4px 0 8px 23px; color:#1c533b; font-size:10px; text-decoration:underline; text-underline-offset:3px; }
.quick-consult-note { color:#7a8981; font-size:10px; line-height:1.6; margin:0 0 9px; }
.quick-submit { width:100%; min-height:40px; margin-top:5px; padding:10px; border:0; border-radius:7px; color:#fff; background:#0b2237; font-size:13px; font-weight:600; }
.quick-submit:hover { background:#1d6448; }
.quick-submit:disabled { opacity:.65; cursor:wait; }
.quick-consult-message { margin-top:10px; font-size:11px; line-height:1.7; color:#9b402e; overflow-wrap:anywhere; }
.quick-consult-message:empty { display:none; }
.quick-consult-message.success { padding:10px; border-radius:6px; background:#eef7f0; color:#1f6645; }
.quick-consult-launcher { position:fixed; z-index:50; right:20px; bottom:26px; display:flex; align-items:center; gap:12px; padding:13px 18px; border:1px solid #ffffff33; border-radius:30px; background:#0b2237; color:#fff; box-shadow:0 6px 24px #0b22372e; font-size:13px; font-weight:600; }
.quick-consult-launcher:hover { background:#1d6448; }
.quick-privacy-dialog { overflow:visible; border:0; border-radius:16px; width:calc(100% - 40px); max-width:760px; padding:0; color:#1b3028; background:#fff; box-shadow:0 25px 90px #0003; }
.quick-privacy-dialog::backdrop { background:#07121b99; backdrop-filter:blur(2px); }
.quick-privacy-content { padding:40px 44px; max-height:calc(100dvh - 90px); overflow-y:auto; overscroll-behavior:contain; }
.quick-privacy-dialog h2 { margin:0 0 24px; font-size:22px; letter-spacing:-.04em; }
.quick-privacy-dialog ol { margin:0; padding-left:20px; font-size:14px; line-height:1.9; }
.quick-privacy-dialog li + li { margin-top:20px; }
.quick-privacy-detail { margin:10px 0 0; font-size:12px; color:#637169; }
.quick-privacy-detail dt { font-weight:600; }
.quick-privacy-detail dd { margin:0 0 8px; }
.quick-privacy-footer { margin-top:24px; border-top:1px solid #e3eae5; padding-top:17px; font-size:12px; }
.quick-privacy-footer a { color:#226947; text-decoration:underline; text-underline-offset:4px; }
.quick-privacy-close { position:absolute; top:-14px; right:-12px; display:grid; place-items:center; width:38px; height:38px; border:0; border-radius:50%; background:#fff; color:#142b36; box-shadow:0 3px 16px #0002; font-size:23px; line-height:1; }
@media(max-width:900px) {
 .quick-consult { top:auto; bottom:18px; right:16px; translate:none; width:min(320px,calc(100% - 32px)); }
 .quick-consult-body { max-height:calc(100dvh - 125px); }
 .quick-consult-launcher { right:16px; bottom:max(20px,env(safe-area-inset-bottom)); }
 .quick-consult .quick-check { font-size:12px; }
 .quick-terms-link,.quick-consult-note { font-size:11px; }
 .quick-consult input:not([type=checkbox]) { font-size:16px; height:44px; }
 .quick-consult input::placeholder { font-size:12px; }
}
@media(max-width:600px) {
 .quick-privacy-content { padding:28px 23px; }
 .quick-privacy-dialog h2 { font-size:19px; }
 .quick-privacy-dialog ol { font-size:12px; }
 .quick-privacy-detail { font-size:11px; }
}
