﻿.pfbh-hours {
    margin-top: -8px !important;
}

.pfbh-table {
    border-collapse: collapse;
    width: fit-content;
    max-width: 100%;
}

.pfbh-table th,
.pfbh-table td {
    border: 1px solid #e0e0e0;
    padding: 8px 10px;
    text-align: left;
}

.pfbh-current-day {
    background: #fff;
    font-weight: 600;
}

.pfbh-current-day--open {
    background: rgba(87, 224, 142, 0.12);
}

.pfbh-current-day--open th,
.pfbh-current-day--open td,
.pfbh-inline-row.pfbh-current-day--open {
    color: #57e08e;
}

.pfbh-current-day--closed {
    background: rgba(255, 128, 128, 0.12);
}

.pfbh-current-day--closed th,
.pfbh-current-day--closed td,
.pfbh-inline-row.pfbh-current-day--closed {
    color: #ff8080;
}

.pfbh-current-status {
    margin: 0 0 4px !important;
    font-weight: 800;
    display: inline-block;
    position: relative;
    isolation: isolate;
    padding: 2px 8px !important;
    border-radius: 4px;
    letter-spacing: 0.01em;
}

.pfbh-hours .pfbh-table {
    margin: 0 !important;
}

.pfbh-current-status::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 52%;
    height: 88%;
    border-radius: 999px;
    transform: translateY(-50%);
    filter: blur(14px);
    opacity: 0.92;
    z-index: -1;
    pointer-events: none;
}

.pfbh-current-status.is-open {
    color: #57e08e;
    text-shadow:
        0 0 6px rgba(87, 224, 142, 0.82),
        0 0 16px rgba(87, 224, 142, 0.62),
        0 0 30px rgba(87, 224, 142, 0.45),
        0 0 46px rgba(87, 224, 142, 0.3);
}

.pfbh-current-status.is-open::before {
    background: radial-gradient(ellipse at center, rgba(87, 224, 142, 0.92) 0%, rgba(87, 224, 142, 0.42) 56%, rgba(87, 224, 142, 0) 100%);
}

.pfbh-current-status.is-closed {
    color: #ff8080;
    text-shadow:
        0 0 6px rgba(255, 128, 128, 0.82),
        0 0 16px rgba(255, 128, 128, 0.62),
        0 0 30px rgba(255, 128, 128, 0.45),
        0 0 46px rgba(255, 128, 128, 0.3);
}

.pfbh-current-status.is-closed::before {
    background: radial-gradient(ellipse at center, rgba(255, 128, 128, 0.92) 0%, rgba(255, 128, 128, 0.42) 56%, rgba(255, 128, 128, 0) 100%);
}

.pfbh-inline-row {
    margin-right: 8px;
}

.pfbh-indicator {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    border-radius: 6px;
    font-weight: 600;
}

.pfbh-indicator.is-open {
    background: #edf7f1;
    color: #14532d;
    border: 1px solid #86efac;
}

.pfbh-indicator.is-closed {
    background: #fef2f2;
    color: #7f1d1d;
    border: 1px solid #fca5a5;
}

.pfbh-meta {
    font-weight: 400;
}

.pfbh-specials,
.pfbh-vacations {
    margin-top: 12px;
}

.pfbh-specials ul,
.pfbh-vacations ul {
    margin: 6px 0 0;
    padding-left: 18px;
}

.pfbh-hours :focus-visible,
.pfbh-indicator:focus-visible {
    outline: 2px solid #60a5fa;
    outline-offset: 2px;
}

.pfbh-sr-only {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}
