.tx-opentoday {
    margin: 1.5rem 0;
    font-family: inherit;
}

.opentoday-box {
    display: inline-block;
    padding: 1.25rem 1.75rem;
    border-radius: 8px;
    box-sizing: border-box;
    text-align: left;
    line-height: 1.4;
    transition: all 0.2s ease-in-out;
}

.opentoday-open {
    background-color: #f0fdf4;
    border: 2px solid #22c55e;
    color: #14532d;
}

.opentoday-closed {
    background-color: #fef2f2;
    border: 2px solid #ef4444;
    color: #7f1d1d;
}

.opentoday-header {
    font-size: 1.25rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin-bottom: 0.35rem;
}

.opentoday-hours {
    font-size: 1.15rem;
    font-weight: 600;
    margin-bottom: 0.35rem;
}

.opentoday-closed-text {
    font-size: 1.15rem;
    font-weight: 600;
}

.opentoday-validity {
    font-size: 0.95rem;
    opacity: 0.9;
    margin-top: 0.25rem;
}
