/* Isolated consultation preview: shared app tokens, no production landing selectors. */
.booking-demo-note{padding:13px 15px;background:var(--soft,#f5f5f5);border:1px solid var(--line,#e5e5e5);border-radius:14px;font-size:12px;line-height:1.5;color:var(--secondary,#555);margin:0 0 18px}
.booking-field{display:block;margin:20px 0}.booking-field>span{display:block;font-size:13px;margin-bottom:9px;color:var(--secondary,#555)}
.booking-field input,.booking-field textarea{width:100%;border:1px solid var(--line,#d6d6d6);border-radius:13px;padding:14px;font:inherit;font-size:16px;line-height:1.5;background:var(--control,#fafafa);color:var(--ink,#222)}
.booking-field textarea{resize:vertical;min-height:130px}.booking-field :focus-visible{outline:2px solid var(--ink,#222);outline-offset:3px}
.booking-consent{display:flex;align-items:flex-start;gap:11px;font-size:12px;line-height:1.55;margin-top:24px}.booking-consent input{flex:none;width:19px;height:19px;margin:2px 0 0;accent-color:#181818}
.booking-legal-links{display:flex;flex-wrap:wrap;gap:4px 16px;margin:8px 0 0 30px}.booking-legal-link{padding:6px 0;text-align:left;font:inherit;font-size:12px;line-height:1.5;text-decoration:underline;text-underline-offset:3px;color:var(--secondary,#555)}.booking-legal-link:focus-visible{outline:2px solid var(--ink,#222);outline-offset:4px;border-radius:2px}
.booking-legal-dialog.app-dialog{width:min(600px,calc(100% - 24px));height:auto;max-height:calc(100dvh - 24px);margin:auto;border-radius:22px;background:var(--bg,#fff);color:var(--ink,#222)}.booking-legal-dialog .dialog-header{justify-content:flex-start;background:var(--bg,#fff)}.booking-legal-dialog .back-button svg{display:block;width:22px;height:22px}.booking-legal-content{padding:24px clamp(20px,5vw,36px) 36px;overflow-wrap:anywhere}.booking-legal-content h1{font-size:23px;line-height:1.2;margin:0 0 24px}.booking-legal-content h2{font-size:17px;line-height:1.3;margin:26px 0 10px}.booking-legal-content p,.booking-legal-content li{font-size:14px;line-height:1.65;margin:0 0 14px}.booking-legal-content ul{padding-left:20px}
.booking-error{color:#c52b2b;border-left:3px solid #c52b2b;padding:10px 14px;margin-top:18px;font-size:13px;line-height:1.5}.booking-error[hidden]{display:none}
.preview-calendar{border:1px solid var(--line,#e5e5e5);border-radius:18px;padding:14px;margin-top:12px}.preview-calendar-header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:14px}.preview-calendar-header h2{font-size:16px;text-transform:capitalize;margin:0;font-weight:600}
.preview-month-button{display:grid;place-items:center;width:40px;height:40px;flex:none;background:var(--soft,#f5f5f5);border-radius:50%}.preview-month-button:disabled{opacity:.25}.preview-month-button svg,.question-actions .black-button svg{width:20px;height:20px;display:block;flex:none}
.preview-day-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.preview-weekday{font-size:11px;text-align:center;color:var(--muted,#777);padding:0 0 8px}.preview-day{height:38px;min-width:0;border-radius:10px;font-size:13px;border:1px solid transparent}.preview-day:disabled{color:var(--muted,#777);opacity:.35}.preview-day:not(:disabled){border-color:var(--line,#ddd)}.preview-day[aria-pressed=true]:not(:disabled){background:#181818;color:white;border-color:#181818}
.preview-times-title{font-size:15px;margin:22px 0 10px;font-weight:600}.preview-time-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:12px}.preview-time{border:1px solid var(--line,#ddd);border-radius:12px;min-height:46px;padding:10px 6px;font-size:14px}.preview-time[aria-pressed=true]{background:#181818;color:white;border-color:#181818}.preview-time:disabled{opacity:.35;text-decoration:line-through}
.preview-receipt{border:1px solid var(--line,#e5e5e5);border-radius:18px;padding:20px;margin:22px 0}.preview-receipt h2{font-size:20px;margin:0 0 14px}.preview-receipt p{font-size:14px;line-height:1.6;overflow-wrap:anywhere}.preview-receipt .request-preview{margin:18px 0 0}.question-actions .black-button{background:#181818;color:#fff;min-height:48px}.question-actions .black-button:focus-visible,.preview-day:focus-visible,.preview-time:focus-visible,.preview-month-button:focus-visible{outline:2px solid var(--ink,#222);outline-offset:3px}
@media(max-width:359px){.preview-calendar{padding:10px}.preview-day-grid{gap:2px}.preview-calendar-header h2{font-size:14px}.preview-day{height:34px}}
