.mdr-widget { display: block; max-width: 560px; margin: 24px auto 32px; background: #fff; border: 2px solid #004890; border-radius: 10px; box-shadow: 0 4px 14px rgba(0,0,0,0.12); padding: 18px 22px 22px; font-family: Arial, Helvetica, sans-serif; box-sizing: border-box; }
.mdr-widget h3 { margin: 0 0 6px 0; color: #004890; font-size: 1.2rem; text-align: center; }
.mdr-widget .mdr-sub { color: #FF3300; font-size: 0.88rem; font-weight: bold; margin: 0 0 14px 0; text-align: center; text-transform: uppercase; letter-spacing: 0.3px; }
.mdr-widget label { display: block; font-size: 0.9rem; font-weight: bold; color: #333; margin: 10px 0 4px 0; }
.mdr-widget input[type="email"], .mdr-widget input[type="text"], .mdr-widget select, .mdr-widget textarea, .mdr-widget .datepicker { width: 100%; padding: 9px 10px; border: 1px solid #ccc; border-radius: 4px; font-size: 0.95rem; box-sizing: border-box; font-family: inherit; background: #fff; }
.mdr-widget .datepicker { cursor: pointer; background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23004890' viewBox='0 0 16 16'><path d='M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5zM1 4v10a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4H1z'/></svg>"); background-repeat: no-repeat; background-position: right 10px center; padding-right: 32px; }
.mdr-widget textarea { resize: vertical; min-height: 54px; }
.mdr-widget .mdr-row2 { display: flex; gap: 10px; }
.mdr-widget .mdr-row2 > div { flex: 1; }
.mdr-widget .mdr-btn { width: 100%; margin-top: 14px; background: #28a745; color: #fff; border: 0; padding: 12px 14px; font-size: 1rem; font-weight: bold; border-radius: 4px; cursor: pointer; text-transform: uppercase; letter-spacing: 0.5px; transition: 0.2s; }
.mdr-widget .mdr-btn:hover { background: #1e7e34; }
.mdr-widget .mdr-btn:disabled { background: #999; cursor: wait; }
.mdr-widget .mdr-btn.sending { background: #0066cc; }
.mdr-widget .mdr-btn.sending:before { content: ""; display: inline-block; width: 14px; height: 14px; border: 2px solid #fff; border-top-color: transparent; border-radius: 50%; margin-right: 8px; vertical-align: middle; animation: mdr-spin 0.8s linear infinite; }
@keyframes mdr-spin { to { transform: rotate(360deg); } }
.mdr-widget .mdr-msg { font-size: 0.92rem; margin-top: 12px; padding: 10px 12px; border-radius: 4px; display: none; line-height: 1.4; }
.mdr-widget .mdr-msg.info { background: #e3f2fd; color: #0d47a1; display: block; border-left: 3px solid #0d47a1; }
.mdr-widget .mdr-msg.err { background: #ffebeb; color: #b00; display: block; border-left: 3px solid #b00; }
.mdr-widget .mdr-msg.ok { background: #e8f6ea; color: #1a6b2a; display: block; border-left: 4px solid #1a6b2a; font-weight: bold; font-size: 1rem; padding: 14px 14px; }
.mdr-widget .mdr-msg.ok:before { content: "✓ "; font-size: 1.3rem; color: #1a6b2a; }

@media (max-width: 600px) {
    .mdr-widget { padding: 14px 16px 18px; margin: 18px 10px 24px; }
    .mdr-widget h3 { font-size: 1.05rem; }
}

/* Flatpickr calendar — busy days with red X overlay */
.mdr-widget .mdr-datepicker { cursor: pointer; background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23004890' viewBox='0 0 16 16'><path d='M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5zM1 4v10a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4H1z'/></svg>"); background-repeat: no-repeat; background-position: right 10px center; padding-right: 32px !important; }
.flatpickr-day.flatpickr-disabled,
.flatpickr-day.flatpickr-disabled:hover { background: #fff0f0 !important; color: #ccc !important; position: relative !important; }
.flatpickr-day .busy-x { position: absolute !important; inset: 0; top: 0; left: 0; right: 0; bottom: 0; display: flex; align-items: center; justify-content: center; color: #cc0000; font-size: 16px; font-weight: bold; pointer-events: none; opacity: 0.85; z-index: 2; }
