/**
 * E-PAY Gateway Public Styles
 *
 * Styles for the payment form and thank you page
 *
 * @package EVC_Gateway_Lite
 */

/* Payment Form Styles */
.evc-gateway-payment-form {
    max-width: 100%;
    margin-bottom: 1.5em;
    padding: 1em;
    background-color: #f8f8f8;
    border-radius: 4px;
}

.evc-payment-services {
    margin: 1em 0;
}

.evc-service-logos {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 1em;
    align-items: center;
}

.evc-service-logo {
    max-height: 40px;
    width: auto;
}

.evc-test-mode-notice {
    background-color: #fff3cd;
    color: #856404;
    padding: 0.75em;
    margin: 1em 0;
    border-radius: 4px;
    border-left: 4px solid #ffeeba;
}

.evc-payment-instructions {
    margin-top: 1em;
    font-style: italic;
}

/* Thank You Page Styles */
.evc-gateway-thankyou {
    margin: 2em 0;
}

.evc-payment-status-card {
    display: flex;
    border-radius: 8px;
    padding: 1.5em;
    margin-bottom: 1.5em;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
}

.evc-payment-status-card.success {
    background-color: #e8f5e9;
    border-left: 5px solid #4caf50;
}

.evc-payment-status-card.error {
    background-color: #ffebee;
    border-left: 5px solid #f44336;
}

.evc-payment-status-card.warning {
    background-color: #fff8e1;
    border-left: 5px solid #ffc107;
}

.evc-payment-status-card.pending {
    background-color: #e3f2fd;
    border-left: 5px solid #2196f3;
}

.evc-status-icon {
    font-size: 2em;
    margin-right: 0.75em;
    display: flex;
    align-items: center;
    justify-content: center;
}

.evc-status-content {
    flex: 1;
}

.evc-status-title {
    margin-top: 0;
    margin-bottom: 0.5em;
    color: #0C2D5B; /* Brand color */
}

.evc-status-message {
    margin-bottom: 1em;
    line-height: 1.5;
}

.evc-status-message strong {
    color: #0C2D5B; /* Brand primary color */
    display: inline-block;
    margin-bottom: 5px;
}

.evc-help-text {
    display: block;
    margin-top: 10px;
    padding: 8px 12px;
    background-color: rgba(245, 124, 0, 0.1); /* Brand accent color with opacity */
    border-left: 3px solid #F57C00; /* Brand accent color */
    border-radius: 0 4px 4px 0;
    font-size: 0.9em;
    color: #333;
}

.evc-help-text:before {
    content: '💡 ';
    font-size: 1.1em;
}

.evc-pending-instructions {
    margin-top: 1em;
}

.evc-loading-spinner {
    display: inline-block;
    width: 20px;
    height: 20px;
    margin-left: 10px;
    border: 3px solid rgba(0,0,0,0.1);
    border-radius: 50%;
    border-top-color: #F57C00; /* Brand accent color */
    animation: spin 1s linear infinite;
}

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

.evc-payment-retry {
    margin-top: 1em;
}

.evc-transaction-details {
    background-color: #f5f5f5;
    border-radius: 8px;
    padding: 1.5em;
}

.evc-details-table {
    width: 100%;
    border-collapse: collapse;
}

.evc-details-table th {
    text-align: left;
    padding: 8px 16px 8px 0;
    font-weight: 600;
    width: 40%;
}

.evc-details-table td {
    padding: 8px 0;
}

/* WooCommerce Blocks Compatibility */
.wc-block-components-payment-method-icons {
    margin-bottom: 1em;
}

.wc-block-components-payment-method-label--with-icon {
    display: inline-flex;
    align-items: center;
}

.wc-block-components-radio-control__option .wc-block-components-radio-control__input:checked::before {
    background-color: #0C2D5B; /* Brand color */
}