/* A compact callback request: phone first, duration optional. */
.callback-dialog{width:min(440px,calc(100% - 24px));height:auto;max-height:calc(100dvh - 24px);margin:auto;border-radius:24px;overflow-y:auto;overscroll-behavior:contain}
.callback-form{padding:26px 24px 24px}.callback-form .dialog-close{top:14px;right:14px;width:38px;height:38px;font-size:25px;cursor:pointer}.callback-form .dialog-kicker{margin:0 42px 8px 0;font-size:10px;letter-spacing:.07em;color:#346180}.callback-form h2{margin:0 36px 0 0;font-size:32px;line-height:1.1;letter-spacing:-.04em}.callback-form .dialog-lead{margin:9px 0 18px;font-size:14px;line-height:1.4;color:#53697a}
.callback-board{display:flex;align-items:center;gap:12px;padding:10px;margin:0 0 18px;border:1px solid #dce7eb;border-radius:13px;background:#f1f6f8;min-width:0}.callback-board>img{flex:0 0 72px;width:72px;height:58px;object-fit:cover;border-radius:8px}.callback-board>div{display:grid;gap:3px;min-width:0}.callback-board span{font-size:10px;color:#627889}.callback-board strong{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;font-size:12px;line-height:1.35;color:#062743}.callback-board small{font-size:11px;color:#597080;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.callback-form .field>span:first-child{font-size:13px;color:#183b52;font-weight:750}.callback-phone .phone-input{border:1.5px solid #63889d;background:white;border-radius:12px;min-height:55px}.callback-phone .phone-input:focus-within{border-color:#126da7;box-shadow:0 0 0 3px #126da71a}.callback-phone .phone-input b{padding-left:14px;font-size:19px;font-weight:650}.callback-phone input{font-size:22px;min-height:53px;padding:10px 12px}.callback-phone input::placeholder{color:#8c9da8}.callback-phone-hint{font-size:11px;color:#6c7f8d;margin:6px 0 16px}
.callback-period{margin:0 0 15px}.callback-period>span{display:flex;align-items:center;justify-content:space-between;gap:12px}.callback-period small{font-size:11px;font-weight:500;color:#728391}.callback-period select{font-size:16px;height:46px;padding:10px 12px;border-color:#d4e0e7;background:#f7f9fa;color:#173c52}
.callback-form .privacy-check{margin:0 0 17px;font-size:11px;line-height:1.4;color:#637482;gap:9px;cursor:pointer}.callback-form .privacy-check input{width:20px;height:20px;accent-color:#0c537b;margin-top:1px}.callback-form .privacy-check a{color:#245e82;font-weight:650}.callback-form .request-submit,.callback-done{position:static;width:100%;min-height:52px;border:0;border-radius:13px;background:#e5ef24;color:#082a36;box-shadow:none;font-size:16px;font-weight:850;cursor:pointer}.callback-form .request-submit:disabled{cursor:wait;opacity:.65}.callback-form .request-submit:focus-visible,.callback-done:focus-visible{outline:3px solid #2675ab;outline-offset:3px}.callback-form [hidden]{display:none!important}.callback-form .request-status{font-size:14px;line-height:1.5;margin-top:14px}.callback-form.is-sent .dialog-lead{display:none}.callback-form.is-sent .request-status{padding:28px 16px;text-align:center;border:1px solid #bce2cd;background:#ecf8f1;margin:20px 0}.callback-form.is-sent .request-status:before{content:'✓';display:block;margin:0 auto 14px;width:46px;height:46px;line-height:46px;border-radius:50%;background:#197c4a;color:white;font-size:25px}.callback-form.is-sent .request-status:focus{outline:none}
@media(max-width:480px){.callback-dialog{width:calc(100% - 20px);max-height:calc(100dvh - 20px);border-radius:20px}.callback-form{padding:22px 20px max(20px,env(safe-area-inset-bottom))}.callback-form h2{font-size:30px}.callback-form .dialog-lead{margin-bottom:15px}.callback-board{margin-bottom:15px}.callback-form .dialog-close{right:12px;top:12px}}
@media(max-height:620px){.callback-dialog{max-height:calc(100dvh - 12px)}.callback-form{padding:17px 18px}.callback-form .dialog-kicker{margin-bottom:5px}.callback-form h2{font-size:27px}.callback-form .dialog-lead{margin:6px 0 11px}.callback-board{margin-bottom:12px}.callback-phone-hint{margin-bottom:11px}.callback-period{margin-bottom:12px}.callback-form .privacy-check{margin-bottom:12px}}

.callback-optional{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;margin-bottom:15px}.callback-optional .field{min-width:0;margin:0}.callback-optional .field>span{display:grid;gap:2px}.callback-optional small{font-size:10px;font-weight:500;color:#728391}.callback-name input{font-size:16px;min-width:0;height:46px}.callback-optional select{min-width:0;width:100%;padding-right:8px}.callback-phone-hint{margin-bottom:12px}
@media(max-height:620px){.callback-optional{margin-bottom:12px}.callback-board{padding:8px;margin-bottom:10px}.callback-form .dialog-lead{margin-bottom:10px}.callback-form .privacy-check{font-size:10px}.callback-form .request-submit{min-height:48px}}
