/*
 * Muse Coffee — withdrawal form.
 *
 * Deliberately theme-neutral: inherits font and colour from whatever wraps it,
 * and sizes everything in em/rem so it scales with the surrounding typography.
 * Touch targets are kept at 2.75rem, which clears the 44px minimum at the
 * default root size.
 */

.mw-withdrawal {
    max-width: 38rem;
}

.mw-withdrawal__intro {
    line-height: 1.5;
    margin: 0 0 1.5em;
}

.mw-withdrawal__hint {
    display: block;
    margin-top: 0.35em;
    font-size: 0.875em;
    line-height: 1.45;
    opacity: 0.85;
}

.mw-withdrawal__field {
    margin: 0 0 1.35em;
}

.mw-withdrawal__field label,
.mw-withdrawal__items legend {
    display: block;
    margin-bottom: 0.4em;
    font-weight: 600;
}

.mw-withdrawal__input,
.mw-withdrawal__textarea,
.mw-withdrawal__qty {
    box-sizing: border-box;
    font: inherit;
    line-height: 1.4;
    border: 0.0625rem solid rgba(0, 0, 0, 0.25);
    border-radius: 0.1875rem;
    background: #fff;
    color: inherit;
}

.mw-withdrawal__input,
.mw-withdrawal__textarea {
    width: 100%;
    min-height: 2.75rem;
    padding: 0.5em 0.75em;
}

.mw-withdrawal__textarea {
    min-height: 5.5rem;
    resize: vertical;
}

.mw-withdrawal__items {
    margin: 0 0 1.5em;
    padding: 1em 1.15em 1.25em;
    border: 0.0625rem solid rgba(0, 0, 0, 0.15);
    border-radius: 0.1875rem;
}

.mw-withdrawal__item {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.5em 0.75em;
    margin-top: 0.9em;
}

.mw-withdrawal__item label {
    flex: 1 1 12em;
    margin: 0;
    font-weight: 400;
}

.mw-withdrawal__qty {
    min-height: 2.75rem;
    min-width: 4.5em;
    padding: 0.35em 0.5em;
}

.mw-withdrawal__item-max {
    font-size: 0.875em;
    opacity: 0.85;
}

/* Injected by mw-form.js, so it never appears without a handler behind it. */
.mw-withdrawal__select-all {
    margin-top: 1em;
    min-height: 2.75rem;
    padding: 0.4em 1em;
    font: inherit;
    font-size: 0.9em;
    border: 0.0625rem solid rgba(0, 0, 0, 0.35);
    border-radius: 0.1875rem;
    background: transparent;
    color: inherit;
    cursor: pointer;
}

.mw-withdrawal__select-all:hover,
.mw-withdrawal__select-all:focus-visible {
    border-color: currentColor;
}

.mw-withdrawal__actions {
    margin: 1.75em 0 0;
}

.mw-withdrawal__submit {
    min-height: 2.75rem;
    padding: 0.7em 1.75em;
    font: inherit;
    font-weight: 700;
    border: 0;
    border-radius: 0.1875rem;
    background: #222;
    color: #fff;
    cursor: pointer;
}

.mw-withdrawal__submit:hover,
.mw-withdrawal__submit:focus-visible {
    background: #000;
}

.mw-withdrawal__input:focus-visible,
.mw-withdrawal__textarea:focus-visible,
.mw-withdrawal__qty:focus-visible,
.mw-withdrawal__submit:focus-visible {
    outline: 0.1875rem solid currentColor;
    outline-offset: 0.125rem;
}

.mw-withdrawal__error,
.mw-withdrawal__success {
    margin: 0 0 1.35em;
    padding: 0.8em 1em;
    border-left: 0.25em solid;
    line-height: 1.5;
}

.mw-withdrawal__error {
    border-left-color: #b3261e;
    background: rgba(179, 38, 30, 0.08);
}

.mw-withdrawal__success {
    border-left-color: #2e7d32;
    background: rgba(46, 125, 50, 0.08);
    font-weight: 600;
}

.mw-withdrawal__recap {
    margin: 0 0 1.5em;
}

.mw-withdrawal__recap dt {
    margin-top: 0.9em;
    font-weight: 600;
}

.mw-withdrawal__recap dd {
    margin: 0.2em 0 0;
}

.mw-withdrawal__lines {
    margin: 0;
    padding-left: 1.2em;
}

/*
 * Bot trap. Moved off-screen rather than display:none, because a bot that
 * honours display:none would skip the field and walk straight past the trap.
 */
.mw-withdrawal__hp {
    position: absolute !important;
    left: -9999em !important;
    width: 0.0625rem;
    height: 0.0625rem;
    overflow: hidden;
}
