/* Sticky mobile action bar — location pages only (brief §7.2).
 * Option A as approved by Joanna 2026-09-03: navy, edge to edge, orange top
 * rule, four equal icon + label targets. Phones and small tablets only
 * (≤1000px, the same breakpoint the Today module uses); desktop keeps the
 * existing button rows. Sits below the age-gate overlay's z-index so the
 * 21+ prompt is never covered. Markup printed by cbco-locations.php.
 */
.cbco-bar { display: none; }

@media (max-width: 1000px) {
	body.cbco-has-bar {
		/* keep the footer and any form button reachable above the bar */
		padding-bottom: calc(67px + env(safe-area-inset-bottom, 0px)); /* 64px bar + 3px top rule */
	}
	.cbco-bar {
		position: fixed;
		left: 0; right: 0; bottom: 0;
		z-index: 9000;
		display: flex;
		align-items: stretch;
		height: 64px;
		padding: 0 6px env(safe-area-inset-bottom, 0px);
		box-sizing: content-box;
		background: #01207f;
		border-top: 3px solid #fa7500;
		box-shadow: 0 -6px 18px rgba(0, 0, 0, 0.18);
	}
	.cbco-bar a {
		flex: 1 1 0;
		min-width: 0;
		min-height: 44px;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: 4px;
		color: #fff;
		font-family: 'Oswald', 'Arial Narrow', Arial, sans-serif;
		font-weight: 600;
		font-size: 11px;
		line-height: 14px;
		letter-spacing: 1px;
		text-transform: uppercase;
		text-decoration: none;
		border-radius: 6px;
		-webkit-tap-highlight-color: rgba(255, 255, 255, 0.15);
	}
	.cbco-bar a:hover,
	.cbco-bar a:active { color: #fff; background: rgba(255, 255, 255, 0.08); }
	.cbco-bar a:focus-visible { outline: 2px solid #fa7500; outline-offset: -4px; }
	.cbco-bar svg { width: 22px; height: 22px; display: block; }
}

@media print { .cbco-bar { display: none !important; } }
