/* Facility info panel on the public booking wizard (#719).
   Scoped to #facilityInfoPanel, which exists only when the host org's
   BookingFacilityInfoPanel toggle is on. Brand rules: tokens over hex,
   sentence case, body text ≥ 15px equivalents where it matters, no
   color-only state (Closed rows also read "Closed"). */

#facilityInfoPanel { margin: 16px 0 4px; }

#facilityInfoPanel .fip-card {
    background: #fff;
    border: 1px solid #E5E7EB;
    border-radius: var(--radius-md, 8px);
    padding: 14px 16px;
    text-align: left;
}

#facilityInfoPanel .fip-head {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 12px;
    flex-wrap: wrap;
}

#facilityInfoPanel .fip-title {
    font-size: 15px;
    font-weight: 700;
    color: #0E1A2B;
}

#facilityInfoPanel .fip-tz {
    font-size: 12px;
    color: #64748b;
}

#facilityInfoPanel .fip-address {
    font-size: 13px;
    color: #334155;
    margin-top: 4px;
}

#facilityInfoPanel .fip-address a {
    color: var(--color-green-press, #107838);
    text-decoration: underline;
}

#facilityInfoPanel .fip-cols {
    display: flex;
    gap: 24px;
    flex-wrap: wrap;
    margin-top: 12px;
}

#facilityInfoPanel .fip-col { flex: 1 1 220px; min-width: 200px; }

#facilityInfoPanel .fip-col-head {
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .04em;
    color: #64748b;
    margin-bottom: 6px;
}

#facilityInfoPanel .fip-hours { border-collapse: collapse; width: 100%; }

#facilityInfoPanel .fip-hours td {
    font-size: 13px;
    color: #334155;
    padding: 2px 0;
    line-height: 1.5;
    vertical-align: top;
    /* The booking page's global styles force nowrap on table cells; hour
       ranges must wrap inside the card instead of clipping at its edge. */
    white-space: normal;
}

/* Day column sizes to its content with a real gutter — a fixed percentage
   collided with long hour ranges on narrow screens ("Wednesday8:00 AM"). */
#facilityInfoPanel .fip-hours td:first-child {
    width: 1%;
    white-space: nowrap;
    padding-right: 14px;
    color: #0E1A2B;
}

/* Closed rows stay ≥ 4.5:1 — muted, never faint (and they say "Closed"
   in words, so state is never carried by color alone). */
#facilityInfoPanel .fip-hours tr.fip-closed td { color: #64748b; }

#facilityInfoPanel .fip-policies {
    margin: 0;
    padding-left: 18px;
}

#facilityInfoPanel .fip-policies li {
    font-size: 13px;
    color: #334155;
    line-height: 1.55;
    margin-bottom: 4px;
}

#facilityInfoPanel .fip-empty {
    font-size: 13px;
    color: #64748b;
}

/* #751 — identity-only panel (location picked, no type yet): the line that
   says hours/policies arrive once a type narrows them. */
#facilityInfoPanel .fip-note {
    font-size: 13px;
    color: #64748b;
    margin-top: 10px;
}

@media (max-width: 640px) {
    #facilityInfoPanel .fip-cols { gap: 12px; }
    /* Reading text meets the 15px body floor on small screens. */
    #facilityInfoPanel .fip-hours td,
    #facilityInfoPanel .fip-policies li,
    #facilityInfoPanel .fip-address { font-size: 15px; }
}
