/* Product points badge */
.pployalty-product-points {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 8px 12px;
    margin: 8px 0;
    background: #fef9e7;
    border: 1px solid #f0e5b8;
    border-radius: 4px;
    font-size: 14px;
    color: #5a4e1e;
}

.pployalty-icon {
    color: #f5a623;
    font-size: 18px;
}

/* Cart points section */
.pployalty-cart-points {
    padding: 16px;
    margin: 16px 0;
    background: #fef9e7;
    border: 1px solid #f0e5b8;
    border-radius: 4px;
}

.pployalty-cart-points__header {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 8px;
    font-size: 16px;
}

.pployalty-cart-points__info p {
    margin: 0 0 8px;
    font-size: 14px;
    color: #555;
}

.pployalty-toggle {
    display: flex;
    align-items: center;
    gap: 8px;
    cursor: pointer;
}

.pployalty-toggle input[type="checkbox"] {
    width: 18px;
    height: 18px;
}

.pployalty-toggle__label {
    font-size: 14px;
}

/* Loyalty dashboard */
.pployalty-dashboard {
    max-width: 100%;
}

.pployalty-summary {
    display: flex;
    align-items: center;
    gap: 24px;
    padding: 24px;
    margin-bottom: 24px;
    background: #fef9e7;
    border: 1px solid #f0e5b8;
    border-radius: 8px;
}

.pployalty-summary__points {
    display: flex;
    align-items: center;
    gap: 8px;
}

.pployalty-summary__icon {
    font-size: 32px;
    color: #f5a623;
}

.pployalty-summary__value {
    font-size: 36px;
    font-weight: 700;
    color: #333;
}

.pployalty-summary__label {
    font-size: 16px;
    color: #666;
}

.pployalty-summary__value-eur {
    font-size: 14px;
    color: #666;
}

/* Consent section */
.pployalty-consent-section {
    margin-bottom: 24px;
    padding: 16px;
    border: 1px solid #e0e0e0;
    border-radius: 4px;
}

.pployalty-consent-status {
    margin: 0 0 12px;
}

.pployalty-consent-status--active {
    color: #27ae60;
}

.pployalty-consent-status--inactive {
    color: #e74c3c;
}

/* History table */
.pployalty-history__title {
    font-size: 20px;
    margin-bottom: 16px;
}

.pployalty-history__table {
    width: 100%;
    border-collapse: collapse;
    font-size: 14px;
}

.pployalty-history__table th,
.pployalty-history__table td {
    padding: 10px 12px;
    text-align: left;
    border-bottom: 1px solid #e0e0e0;
}

.pployalty-history__table th {
    font-weight: 600;
    background: #f8f8f8;
}

.pployalty-history__row--expired {
    opacity: 0.5;
}

.pployalty-history__row--used td {
    color: #999;
}

/* Status badges */
.pployalty-badge {
    display: inline-block;
    padding: 2px 8px;
    border-radius: 12px;
    font-size: 12px;
    font-weight: 600;
}

.pployalty-badge--active {
    background: #d4edda;
    color: #155724;
}

.pployalty-badge--used {
    background: #e2e3e5;
    color: #383d41;
}

.pployalty-badge--expired {
    background: #f8d7da;
    color: #721c24;
}

/* Pagination */
.pployalty-pagination {
    display: flex;
    gap: 4px;
    margin-top: 16px;
}

.pployalty-pagination__page {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border: 1px solid #ddd;
    border-radius: 4px;
    text-decoration: none;
    color: #333;
    font-size: 14px;
}

.pployalty-pagination__page:hover {
    background: #f0f0f0;
}

.pployalty-pagination__page--current {
    background: #333;
    color: #fff;
    border-color: #333;
}

/* CMS content */
.pployalty-cms {
    margin-top: 24px;
    padding-top: 24px;
    border-top: 1px solid #e0e0e0;
}

/* Consent checkbox on registration form */
.pployalty-consent {
    margin: 12px 0;
}

.pployalty-consent label {
    display: flex;
    align-items: center;
    gap: 8px;
    cursor: pointer;
    font-size: 14px;
}

/* Responsive */
@media (max-width: 768px) {
    .pployalty-summary {
        flex-direction: column;
        align-items: flex-start;
        gap: 8px;
    }

    .pployalty-history__table {
        font-size: 12px;
    }

    .pployalty-history__table th,
    .pployalty-history__table td {
        padding: 6px 8px;
    }
}
