/**
 * All of the CSS for your public-facing functionality should be
 * included in this file.
 */

/* Raffle Ticket Lookup */
.fmf-raffle-lookup {
    max-width: 480px;
}

.fmf-raffle-lookup__label {
    display: block;
    margin-bottom: 6px;
    font-weight: 600;
}

.fmf-raffle-lookup__input-group {
    display: flex;
    gap: 8px;
}

.fmf-raffle-lookup__input {
    -webkit-appearance: none;
    padding: 14px 4% !important;
    font-size: 16px;
    color: #666;
    background-color: #fff;
    width: 100%;
    font-weight: 400;
    border-width: 0;
    flex: 1;
}

.fmf-raffle-lookup__button {
    color: #FFFFFF !important;
    border-width: 0px !important;
    border-radius: 0px;
    font-size: 16px;
    font-family: 'Connary Fagen - Greycliff CF Regular', Helvetica, Arial, Lucida, sans-serif !important;
    background-color: #82bf44;
    padding-top: 7px !important;
    width: 150px;
    transition: background-color 300ms ease 0ms;
    text-transform: uppercase;
    font-weight: 500;
    line-height: 1.7em !important;
    cursor: pointer;
}

.fmf-raffle-lookup__button:hover {
    background-color: #ac145a;
}

.fmf-raffle-lookup__button:disabled {
    opacity: 0.6;
    cursor: not-allowed;
}

.fmf-raffle-lookup__result {
    margin-top: 16px;
}

.fmf-raffle-lookup__result--success {
    padding: 12px 16px;
    background: #ecfdf5;
    border: 1px solid #a7f3d0;
    border-radius: 4px;
    color: #065f46;
}

.fmf-raffle-lookup__result--error {
    padding: 12px 16px;
    background: #fef2f2;
    border: 1px solid #fecaca;
    border-radius: 4px;
    color: #991b1b;
}

.fmf-raffle-lookup__result--loading {
    padding: 12px 16px;
    color: #555;
    display: flex;
    align-items: center;
    gap: 10px;
}

.fmf-raffle-lookup__spinner {
    display: inline-block;
    width: 18px;
    height: 18px;
    border: 3px solid #ddd;
    border-top-color: #0073aa;
    border-radius: 50%;
    animation: fmf-spin 0.6s linear infinite;
    flex-shrink: 0;
}

@keyframes fmf-spin {
    to { transform: rotate(360deg); }
}