/* Shared basket and schedule message editor. */
/* Compact inspiration picker shared by basket and schedule. */
.message-inspiration .modal-dialog { max-width: 640px; }
:is(#cardBasketItemMessageTemplateModal, #addScheduledItemMessageTemplateModal) .template-message-modal {
    height: auto;
    max-height: calc(100vh - 32px);
    max-height: calc(100dvh - 32px);
    border-radius: 18px;
}
.message-inspiration .template-message-body {
    flex: 1 1 auto;
    min-height: 0;
    max-height: none;
    padding: 20px 24px;
    overflow-y: auto;
    text-align: left;
}
.message-inspiration .template-message-header,
.message-inspiration .template-message-footer { flex-shrink: 0; }
.message-inspiration .inspiration-navigation {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 12px;
    margin: 12px 0 20px;
}
.message-inspiration .inspiration-textarea {
    display: block;
    width: 100%;
    height: 180px;
    min-height: 140px;
    max-height: 280px;
    padding: 14px;
    border: 1px solid #ced4da;
    border-radius: 12px;
    background: #fff;
    color: #212529;
    font: inherit;
    font-size: 16px;
    line-height: 1.6;
    text-align: left;
    resize: vertical;
}
.message-inspiration .inspiration-textarea:focus {
    outline: 2px solid var(--mcprimarycolour);
    outline-offset: 2px;
}
.message-inspiration .template-message-footer {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    padding: 16px 24px;
}
.message-inspiration .template-message-footer .btn { width: 100%; min-width: 0; }
@media (max-width: 575.98px) {
    .message-inspiration .modal-dialog { margin: 12px; }
    .message-inspiration .template-message-body { padding: 16px; }
    .message-inspiration .template-message-footer { padding: 12px 16px; }
    .message-inspiration .template-message-modal { border-radius: 18px; }
}
:is(#basketItemMessageModal, #addScheduledItemMessageModal) .modal-dialog {
    max-width: 760px;
    height: auto;
    max-height: none;
    min-height: calc(100% - 48px);
    margin: 24px auto;
}
:is(#basketItemMessageModal, #addScheduledItemMessageModal) .message-editor-modal {
    height: min(720px, calc(100vh - 64px));
    height: min(720px, calc(100dvh - 64px));
    max-height: calc(100dvh - 64px);
    min-height: 0;
    display: flex;
    flex-direction: column;
}
:is(#basketItemMessageModal, #addScheduledItemMessageModal) .modal-header,
:is(#basketItemMessageModal, #addScheduledItemMessageModal) [class$="message-progress"] {
    flex-shrink: 0;
}
:is(#basketItemMessageModal, #addScheduledItemMessageModal) .message-editor-body {
    display: flex;
    flex-direction: column;
    flex: 1 1 0;
    overflow: hidden;
    min-height: 0;
    padding: 24px;
    color: #212529;
}
:is(#basketItemMessageForm, #addScheduledItemMessageForm),
:is(#basketItemMessageModal, #addScheduledItemMessageModal) :is(.basket-message-step, .scheduled-message-step) {
    display: flex;
    flex-direction: column;
    flex: 1 1 0;
    min-height: 0;
}
:is(#basketItemMessageModal, #addScheduledItemMessageModal) .message-step-content {
    flex: 1 1 0;
    min-height: 0;
    overflow-y: auto;
    overscroll-behavior: contain;
    padding: 3px;
}
:is(#basketItemMessageModal, #addScheduledItemMessageModal) :is(.basket-step-actions, .scheduled-step-actions) {
    flex-shrink: 0;
    margin-top: 12px;
    padding: 12px 0 0;
    border-top: 1px solid #dee2e6;
}
:is(#basketItemMessageModal, #addScheduledItemMessageModal) .message-editor-intro img { display: none; }
:is(#basketItemMessageModal, #addScheduledItemMessageModal) .message-editor-intro { margin-bottom: 18px; }
:is(#basketItemMessageModal, #addScheduledItemMessageModal) .message-editor-intro h6 { font-size: 1.15rem; color: #212529; }
:is(#basketItemMessageModal, #addScheduledItemMessageModal) .message-card-editor { padding: 18px; background: #fafafa; }
:is(#basketItemMessageModal, #addScheduledItemMessageModal) [class$="message-field-header"] label { font-size: .9rem; color: #212529; font-weight: 600; }
:is(#basketItemMessageModal, #addScheduledItemMessageModal) [class$="message-field-header"] small { color: #626970; }
:is(#basketItemMessageModal, #addScheduledItemMessageModal) .gift-text-message { text-align: center !important; line-height: 1.6; }
:is(#basketItemMessageModal, #addScheduledItemMessageModal) .message-textarea { min-height: 180px; }
:is(#basketItemMessageModal, #addScheduledItemMessageModal) .message-editor-navigation {
    flex-shrink: 0;
    padding: 16px 24px;
    background: #fff;
    border-top: 1px solid #dee2e6;
}
:is(#basketItemMessageModal, #addScheduledItemMessageModal) .message-editor-navigation > div {
    width: 100%; display: flex; justify-content: space-between; gap: 12px; margin: 0;
}
:is(#basketItemMessageModal, #addScheduledItemMessageModal) .message-editor-navigation > div:first-child { justify-content: flex-end; }
:is(#basketItemMessageModal, #addScheduledItemMessageModal) .message-editor-navigation .btn { min-height: 44px; }
:is(#basketItemMessageModal, #addScheduledItemMessageModal) .message-position-note { display: block; margin-top: 16px; line-height: 1.5; }
:is(#basketItemMessageModal, #addScheduledItemMessageModal) [class$="style-preview"],
:is(#basketItemMessageModal, #addScheduledItemMessageModal) [class$="review-card"] { overflow-wrap: anywhere; }
@media (max-width: 575px) {
    :is(#basketItemMessageModal, #addScheduledItemMessageModal) .modal-dialog { margin: 12px; min-height: calc(100% - 24px); }
    :is(#basketItemMessageModal, #addScheduledItemMessageModal) .message-editor-modal { height: calc(100vh - 40px); height: calc(100dvh - 40px); max-height: calc(100dvh - 40px); border-radius: 18px; }
    :is(#basketItemMessageModal, #addScheduledItemMessageModal) .message-editor-body { padding: 16px; }
    :is(#basketItemMessageModal, #addScheduledItemMessageModal) .message-editor-navigation { padding: 12px 16px; }
    :is(#basketItemMessageModal, #addScheduledItemMessageModal) .message-card-editor { padding: 12px; }
}
@media (max-height: 650px) {
    :is(#basketItemMessageModal, #addScheduledItemMessageModal) .modal-header { padding: 10px 16px; }
    :is(#basketItemMessageModal, #addScheduledItemMessageModal) .modal-header small { display: none; }
    :is(#basketItemMessageModal, #addScheduledItemMessageModal) :is(.basket-message-progress, .scheduled-message-progress) { padding: 8px 12px; }
    :is(#basketItemMessageModal, #addScheduledItemMessageModal) .message-editor-body { padding: 10px 16px; }
}
