.quote-dock{position:fixed;z-index:990;left:50%;bottom:max(18px,env(safe-area-inset-bottom));transform:translateX(-50%);width:min(620px,calc(100% - 36px));transition:opacity .2s,transform .2s,visibility .2s}.quote-dock.is-hidden{opacity:0;visibility:hidden;pointer-events:none;transform:translate(-50%,20px)}.quote-dock>button{width:100%;display:flex;align-items:center;justify-content:center;gap:18px;background:#1659e8;color:white;min-height:64px;border:1px solid #1659e8;border-radius:15px;padding:16px 24px;font-size:22px;font-weight:700;cursor:pointer;box-shadow:0 7px 28px #123f9438}.quote-dock>button:hover{background:#1047c2}.quote-request-dialog{width:min(760px,calc(100% - 28px));max-height:90svh;border:0;border-radius:22px;padding:30px;overflow:auto;color:#202832;background:white;box-shadow:0 20px 90px #12233c40;margin:auto}.quote-request-dialog::backdrop{background:#17233480}.quote-request-dialog>header{display:flex;gap:20px;justify-content:space-between;align-items:flex-start}.quote-request-dialog header span{font-size:17px;color:#1659e8;font-weight:650}.quote-request-dialog h2{font-size:29px;line-height:1.45;margin:8px 0 0;letter-spacing:-.04em}.quote-request-dialog header>button{background:#f0f3f8;color:#202832;border:0;border-radius:50%;width:44px;height:44px;flex-shrink:0;font-size:29px;cursor:pointer}.quote-request-intro{font-size:19px;line-height:1.85;margin:22px 0}.quote-request-fields{display:grid;grid-template-columns:1fr 1fr;gap:22px 18px}.quote-request-fields label{font-size:19px;font-weight:650;line-height:1.7;min-width:0}.quote-request-fields label>b,.quote-consent b{font-size:15px;color:#1659e8;margin-left:5px}.quote-request-fields small{font-size:16px;font-weight:400;margin-left:5px}.quote-request-fields :is(input,select,textarea){width:100%;font:inherit;font-weight:400;font-size:19px;color:#202832;padding:13px 14px;border:1px solid #ced8e6;border-radius:10px;display:block;margin-top:9px;min-height:52px;background:white}.quote-wide{grid-column:1/-1}.quote-carried{background:#f1f6ff;padding:18px;border-radius:12px;margin:24px 0;font-size:18px;line-height:1.85}.quote-carried p{font-size:17px;margin:8px 0 0}.quote-consent{display:flex;align-items:flex-start;gap:12px;font-size:18px;line-height:1.8}.quote-consent input{width:23px;height:23px;margin-top:5px;accent-color:#1659e8;flex-shrink:0}.quote-storage-note{font-size:16px;line-height:1.85;margin:18px 0;color:#202832}.quote-submit{width:100%;background:#1659e8;color:white;border:0;border-radius:12px;padding:17px;font-size:21px;font-weight:650;min-height:60px;cursor:pointer}.quote-submit:disabled{opacity:.6;cursor:wait}.quote-request-error{color:#b4233a;font-size:18px;line-height:1.7}.quote-request-success h3{font-size:27px}.quote-request-success p{font-size:20px;line-height:1.85}.quote-request-dialog :is(button,input,select,textarea):focus-visible,.quote-dock>button:focus-visible{outline:3px solid #1659e8;outline-offset:4px}.sheet-page,.easy-report{padding-bottom:110px}.results-toc{bottom:max(100px,calc(85px + env(safe-area-inset-bottom)))}
@media(max-width:600px){.quote-request-dialog{padding:22px;max-height:92svh;border-radius:18px}.quote-request-fields{grid-template-columns:1fr}.quote-request-dialog h2{font-size:26px}.quote-dock>button{min-height:60px;font-size:21px}.quote-dock{bottom:max(12px,env(safe-area-inset-bottom))}.quote-request-fields label{font-size:20px}}
@media(prefers-reduced-motion:reduce){.quote-dock{transition:none}}

.quote-request-dialog .quote-required{color:#dc3545;font-size:18px;font-weight:700;margin-left:5px;line-height:1;vertical-align:baseline}
