/* Ad Libitum Stamp Styles */
/* Standalone reusable component for displaying all-you-can-eat badge */
/* Updated to match brand guideline design - brand-cream background, brand-green text */

/* Brand Color Variables */
:root {
    --flaeske-brand-green: #4A7C59;
    --flaeske-brand-cream: #F9F7F2;
}

/* Small circular stamp badge for ad libitum restaurants */
.ad-libitum-stamp {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    background: var(--flaeske-brand-green);
    color: white;
    border-radius: 50%;
    font-weight: 700;
    flex-shrink: 0;
    position: relative;
    overflow: visible;
    border: 2px solid white;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}

.stamp-icon {
    display: block;
    font-size: 1.4rem;
    line-height: 1;
    font-weight: 700;
    color: inherit;
}

/* Responsive sizing */
@media (max-width: 600px) {
    .ad-libitum-stamp {
        width: 28px;
        height: 28px;
    }
    
    .stamp-icon {
        font-size: 1.2rem;
    }
}

@media (min-width: 768px) {
    .ad-libitum-stamp {
        width: 32px;
        height: 32px;
    }
    
    .stamp-icon {
        font-size: 1.4rem;
    }
}

/* Compact mode */
.ad-libitum-stamp.compact {
    width: 28px;
    height: 28px;
}

.ad-libitum-stamp.compact .stamp-icon {
    font-size: 1.2rem;
}

@media (min-width: 768px) {
    .ad-libitum-stamp.compact {
        width: 30px;
        height: 30px;
    }
    
    .ad-libitum-stamp.compact .stamp-icon {
        font-size: 1.3rem;
    }
}

/* Contextual sizing */
.ad-libitum-stamp--small {
    width: 28px;
    height: 28px;
}

.ad-libitum-stamp--small .stamp-icon {
    font-size: 1.2rem;
}

.ad-libitum-stamp--medium {
    width: 36px;
    height: 36px;
}

.ad-libitum-stamp--medium .stamp-icon {
    font-size: 1.6rem;
}

/* Review box specific styling */
.ad-libitum-stamp--review-box {
    margin-left: 8px;
    vertical-align: middle;
}

/* Reduce motion for accessibility */
@media (prefers-reduced-motion: reduce) {
    .ad-libitum-stamp {
        transition: none;
    }
}

/* High contrast mode support */
@media (prefers-contrast: high) {
    .ad-libitum-stamp {
        border: 2px solid #000;
        box-shadow: 0 2px 6px rgba(0, 0, 0, 0.6);
    }
}

