.guest-quote-dialog{position:fixed;inset:0;margin:auto;width:min(620px,calc(100vw - 32px));max-width:none;height:fit-content;max-height:calc(100dvh - 32px);overflow:auto;box-sizing:border-box;padding:26px;border:1px solid #dce6f8;border-radius:24px;background:linear-gradient(180deg,#fff,#fbfcff);box-shadow:0 32px 100px #071c4752,0 4px 16px #102b5014;color:#132749;font-family:Inter,Arial,sans-serif;scrollbar-width:thin;scrollbar-color:#c7d5ed transparent}
.guest-quote-dialog::backdrop{background:rgba(8,23,51,.62);backdrop-filter:blur(7px)}
.guest-quote-dialog header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin:0 0 16px}
.guest-quote-dialog header small{display:inline-flex;align-items:center;gap:7px;font-size:10px;color:#155cff;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.guest-quote-dialog header small::before{content:"";width:7px;height:7px;border-radius:50%;background:#1ab783;box-shadow:0 0 0 4px #1ab7831c}
.guest-quote-dialog h2{margin:7px 0 0;font-size:clamp(22px,3vw,27px);line-height:1.15;letter-spacing:-.8px;color:#10264a}
.guest-quote-dialog [data-close]{display:grid;place-items:center;width:38px;height:38px;flex:0 0 38px;border:1px solid #e2e9f5;border-radius:50%;background:#f5f8fd;color:#456080;font-size:22px;line-height:1;cursor:pointer;transition:background .18s,border-color .18s,transform .18s}
.guest-quote-dialog [data-close]:hover{background:#eaf1ff;border-color:#cbdcff;transform:rotate(90deg)}
.guest-quote-summary{position:relative;display:grid;gap:6px;margin:0 0 14px;padding:12px 16px 12px 19px;overflow:hidden;border:1px solid #d9e5fb;border-radius:14px;background:linear-gradient(115deg,#f2f7ff,#f8faff 65%,#f3f8ff);font-size:13px}
.guest-quote-summary::before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:linear-gradient(#2364f5,#61a4ff)}
.guest-quote-summary strong{color:#173660;font-size:14px;line-height:1.4;overflow-wrap:anywhere}
.guest-quote-summary span{color:#637b9b;font-size:11px;line-height:1.4;overflow-wrap:anywhere}
.guest-quote-choices{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:16px}
.guest-quote-choices button{display:flex;align-items:center;gap:11px;min-width:0;padding:10px 12px;border:1px solid #dce6f7;border-radius:12px;background:#f7f9fd;color:#16345d;text-align:left;cursor:pointer;transition:background .16s,border-color .16s,box-shadow .16s}
.guest-quote-choices button.is-active{border-color:#1d62f5;background:linear-gradient(120deg,#2873ff,#0750da);color:#fff;box-shadow:0 5px 14px #155bff2b}
.guest-quote-choices button:not(.is-active):hover{border-color:#b8cdf5;background:#f2f6ff}
.guest-quote-choices .choice-icon{display:grid;place-items:center;width:30px;height:30px;flex:0 0 30px;border-radius:9px;background:#e8f0ff;color:#1658ed;font-size:16px}
.guest-quote-choices button.is-active .choice-icon{background:#ffffff2b;color:#fff}
.guest-quote-choices strong,.guest-quote-choices small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.guest-quote-choices strong{font-size:11px;font-weight:800}.guest-quote-choices small{margin-top:3px;font-size:9px;opacity:.76}
.guest-login-panel{padding:0 1px}
.guest-quote-dialog .panel-heading h3,.guest-quote-dialog .contact-panel-heading h3{margin:0;color:#10264a;font-size:14px;letter-spacing:-.2px}
.guest-quote-dialog .panel-heading p,.guest-quote-dialog .contact-panel-heading p{margin:4px 0 0;color:#72829a;font-size:10px;line-height:1.45}
.guest-login-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:11px}
.guest-quote-dialog label{display:grid;gap:5px;color:#314867;font-size:10px;font-weight:700}
.guest-quote-dialog input:not([type=checkbox]){box-sizing:border-box;width:100%;min-height:39px;padding:9px 11px;border:1px solid #d7e2f3;border-radius:9px;background:#fff;color:#183454;font:11px Inter,Arial,sans-serif;transition:border-color .16s,box-shadow .16s}
.guest-quote-dialog input::placeholder{color:#9aa8bb}
.guest-quote-dialog input:not([type=checkbox]):focus{outline:0;border-color:#4f82ff;box-shadow:0 0 0 3px #3c76ff1c}
.guest-password-wrap{position:relative;display:block}.guest-password-wrap input{padding-right:40px!important}
.guest-password-toggle{position:absolute;top:50%;right:5px;display:grid;place-items:center;width:30px;height:30px;transform:translateY(-50%);border:0;border-radius:7px;background:transparent;color:#7587a2;cursor:pointer}
.guest-password-toggle:hover{background:#edf3ff;color:#155bff}
.guest-login-options{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:8px 0}
.guest-login-options label{display:flex;align-items:center;gap:6px;font-size:9px;font-weight:500}.guest-login-options input{width:13px;height:13px;margin:0;accent-color:#155bff}
.guest-forgot{padding:0;border:0;background:none;color:#155bff;font-size:9px;cursor:pointer}.guest-forgot:hover{text-decoration:underline}
.guest-login-feedback,.guest-quote-feedback{margin:5px 0;color:#087b52;font-size:10px;line-height:1.4}.guest-login-feedback.is-error,.guest-quote-feedback.is-error{color:#c33340}
.guest-account-submit,.guest-quote-submit{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:42px;padding:10px 14px;border:1px solid #155bff;border-radius:10px;background:linear-gradient(110deg,#155bff,#3478ff);color:white;font:700 11px Inter,Arial,sans-serif;cursor:pointer;box-shadow:0 7px 16px #155bff2b;transition:transform .16s,box-shadow .16s}
.guest-account-submit:hover,.guest-quote-submit:hover{transform:translateY(-1px);box-shadow:0 10px 19px #155bff38}
.guest-quote-divider{display:flex;align-items:center;gap:12px;margin:12px 0;color:#71839c;font-size:9px;text-align:center}.guest-quote-divider::before,.guest-quote-divider::after{content:"";height:1px;flex:1;background:#e8edf5}
.guest-contact-panel{padding:12px;border:1px solid #e0ebfa;border-radius:14px;background:linear-gradient(135deg,#f1f7ff,#f8fbff)}
.contact-panel-heading{display:flex;align-items:flex-start;gap:9px;margin-bottom:11px}
.contact-panel-heading>div{flex:1;min-width:0}.guest-quote-dialog .contact-panel-heading h3{font-size:12px}.guest-quote-dialog .contact-panel-heading p{font-size:9px}
.contact-icon{display:grid;place-items:center;width:30px;height:30px;flex:0 0 30px;border-radius:9px;background:#dceaff;color:#155bff;font-size:15px}
.no-account-badge{flex:0 0 auto;padding:5px 8px;border-radius:20px;background:#d7f5ec;color:#148064;font-size:8px;font-weight:800;white-space:nowrap}
.guest-contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.guest-contact-fields .contact-email{grid-column:1/-1}
.guest-quote-dialog .guest-quote-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.guest-quote-help{margin:8px 0;color:#72819a;font-size:9px;line-height:1.4}
.guest-quote-submit{min-height:40px;background:#fff;color:#155bff;box-shadow:none;border-color:#8eb2ff;font-size:10px}.guest-quote-submit:hover{background:#f7faff;box-shadow:0 4px 12px #155bff18}
.guest-quote-dialog button:disabled{opacity:.6;cursor:wait;transform:none}
.guest-quote-dialog [hidden]{display:none!important}
@media(max-width:520px){.guest-quote-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 20px);padding:18px 15px;border-radius:20px}.guest-quote-dialog header{margin-bottom:12px}.guest-quote-dialog h2{font-size:21px}.guest-quote-summary{padding:10px 13px 10px 16px;margin-bottom:11px}.guest-quote-choices{gap:7px;margin-bottom:12px}.guest-quote-choices button{gap:7px;padding:8px}.guest-quote-choices .choice-icon{width:26px;height:26px;flex-basis:26px}.guest-login-fields{gap:8px}.guest-contact-panel{padding:10px}.contact-panel-heading{gap:7px}.no-account-badge{padding:4px 6px;font-size:7px}}
@media(max-width:360px){.guest-quote-dialog{padding:16px 12px}.guest-quote-choices strong{font-size:10px}.guest-quote-choices small{font-size:8px}.guest-contact-fields{grid-template-columns:1fr}.guest-contact-fields .contact-email{grid-column:auto}.contact-panel-heading{flex-wrap:wrap}.contact-panel-heading>div{flex-basis:calc(100% - 40px)}.no-account-badge{margin-left:37px}}
@media(prefers-reduced-motion:reduce){.guest-quote-dialog *{transition:none!important;scroll-behavior:auto!important}}
