.callback-panel { display:grid; grid-template-columns:minmax(220px,1fr) minmax(0,2fr); gap:24px; padding:24px; margin:0 0 24px; border:1px solid var(--border); border-radius:16px; background:var(--surface,#fff); }
.callback-panel h2 { margin:0 0 8px; font-size:20px; }
.callback-phone { display:inline-flex; align-items:center; min-height:44px; font-size:22px; font-weight:600; color:var(--text); text-decoration:none; white-space:nowrap; }
.callback-phone:hover { text-decoration:underline; }
.callback-intro p { margin:4px 0 0; font-size:14px; color:var(--text-2); }
.callback-form { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto; gap:12px; min-width:0; align-items:end; }
.callback-form label { display:grid; gap:6px; min-width:0; font-size:14px; }
.callback-form .input { box-sizing:border-box; width:100%; min-width:0; font-size:16px; }
.callback-form .callback-consent { grid-column:1/-1; display:flex; align-items:flex-start; gap:8px; font-size:12px; line-height:1.5; }
.callback-consent input { flex:0 0 auto; width:18px; height:18px; margin:2px 0; }
.callback-consent a { text-decoration:underline; }
.callback-status { grid-column:1/-1; margin:0; overflow-wrap:anywhere; font-size:14px; }
.callback-panel :focus-visible { outline:2px solid var(--accent,#28634c); outline-offset:3px; }
.pdp-buy .callback-panel { grid-template-columns:1fr; gap:16px; padding:20px; }
.pdp-buy .callback-form { grid-template-columns:minmax(0,1fr); }
@media(max-width:1000px) { .callback-panel { grid-template-columns:1fr; gap:16px; } }
@media(max-width:600px) { .callback-panel { padding:18px; } .callback-form { grid-template-columns:1fr; } .callback-form .btn { width:100%; } }
