/*
 * Boho owns the customer-facing gift-card purchase experience.
 * These are defensive fallbacks in case a YITH callback is reintroduced by an update/theme.
 */
.single-product .gift-cards_form.cart > .ywgc_choose_design_title,
.single-product .gift-cards_form.cart > .gift-card-content-editor.step-appearance,
.single-product .gift-cards_form.cart > .ywgc_delivery_info_title,
.single-product .gift-cards_form.cart > .gift-card-content-editor.step-content,
.single-product .ywgc-main-form-preview-container,
.single-product #yith-ywgc,
.single-product .yith-ywgc-popup-wrapper {
    display: none !important;
}

.boho-gift-purchase,
.boho-gift-purchase * {
    box-sizing: border-box;
}

.boho-gift-purchase {
    width: 100%;
    margin: 22px 0 20px;
    font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    color: #17131b;
}

.boho-gift-mode {
    padding: 20px;
    border: 1px solid rgba(83, 46, 132, .14);
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 8px 30px rgba(31, 18, 48, .06);
}

.boho-gift-mode__title {
    margin: 0 0 14px !important;
    color: #17131b !important;
    font: 800 18px/1.3 Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
    letter-spacing: .02em;
    text-transform: uppercase;
}

.boho-gift-mode__choices {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.boho-gift-mode__choice {
    appearance: none;
    width: 100%;
    min-height: 112px;
    display: flex !important;
    align-items: flex-start;
    gap: 12px;
    padding: 16px !important;
    border: 1px solid rgba(83, 46, 132, .16) !important;
    border-radius: 15px !important;
    background: #fff !important;
    color: #514e54 !important;
    text-align: left !important;
    cursor: pointer;
    box-shadow: none !important;
    transform: none;
    transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.boho-gift-mode__choice:hover,
.boho-gift-mode__choice:focus-visible {
    transform: translateY(-1px);
    border-color: rgba(91, 43, 130, .52) !important;
    outline: none !important;
}

.boho-gift-mode__choice.is-active {
    border-color: #5b2b82 !important;
    box-shadow: 0 0 0 2px rgba(91, 43, 130, .10) !important;
}

.boho-gift-mode__icon {
    flex: 0 0 36px;
    width: 36px;
    height: 36px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: rgba(91, 43, 130, .08);
    color: #5b2b82;
}

.boho-gift-mode__icon svg {
    width: 18px;
    height: 18px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.boho-gift-mode__choice strong,
.boho-gift-mode__choice small {
    display: block;
    font-family: inherit !important;
}

.boho-gift-mode__choice strong {
    margin: 1px 0 5px;
    color: #555158 !important;
    font-size: 15px !important;
    line-height: 1.25 !important;
    font-weight: 750 !important;
}

.boho-gift-mode__choice small {
    color: #7d787f !important;
    font-size: 12px !important;
    line-height: 1.45 !important;
    font-weight: 400 !important;
}

.boho-gift-fields {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin-top: 16px;
    padding: 18px 20px;
    border: 1px solid rgba(83, 46, 132, .11);
    border-radius: 16px;
    background: #fff;
}

.boho-gift-fields[hidden] {
    display: none !important;
}

.boho-gift-field--full {
    grid-column: 1 / -1;
}

.boho-gift-field label {
    display: block !important;
    margin: 0 0 7px !important;
    color: #26212a !important;
    font: 700 12px/1.25 Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
    letter-spacing: .035em;
    text-transform: uppercase;
}

.boho-gift-field label span {
    color: #8d8790;
    font-weight: 500;
    letter-spacing: 0;
    text-transform: none;
}

.boho-gift-field input,
.boho-gift-field textarea {
    appearance: none;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    border: 1px solid #d9d3de !important;
    border-radius: 11px !important;
    background: #fff !important;
    color: #211c24 !important;
    box-shadow: none !important;
    font: 500 14px/1.4 Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
    outline: none !important;
}

.boho-gift-field input {
    height: 48px !important;
    padding: 0 13px !important;
}

.boho-gift-field textarea {
    min-height: 92px !important;
    padding: 12px 13px !important;
    resize: vertical;
}

.boho-gift-field input:focus,
.boho-gift-field textarea:focus {
    border-color: #6b348e !important;
    box-shadow: 0 0 0 3px rgba(91, 43, 130, .09) !important;
}

.boho-gift-field small {
    display: block;
    margin-top: 6px;
    color: #8b858d;
    font: 400 11px/1.45 Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.boho-gift-validation {
    margin-top: 12px;
    padding: 11px 13px;
    border: 1px solid rgba(164, 39, 39, .24);
    border-radius: 10px;
    background: rgba(164, 39, 39, .06);
    color: #8a1f1f;
    font: 600 12px/1.45 Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.boho-gift-validation[hidden] {
    display: none !important;
}

.boho-field-error input,
.boho-field-error textarea {
    border-color: #a42727 !important;
    box-shadow: 0 0 0 2px rgba(164, 39, 39, .08) !important;
}

@media (max-width: 700px) {
    .boho-gift-purchase { margin: 18px 0 16px; }
    .boho-gift-mode { padding: 14px; border-radius: 16px; }
    .boho-gift-mode__choices { grid-template-columns: 1fr; gap: 9px; }
    .boho-gift-mode__choice { min-height: 84px; padding: 13px !important; }
    .boho-gift-fields { grid-template-columns: 1fr; gap: 12px; padding: 14px; }
    .boho-gift-field--full { grid-column: auto; }
}
