/* gili-booking — עמוד ההזמנה הציבורי (גרסה מינימלית). הפלטה הסופית: לבן/נייבי/ורוד/צהוב/טורקיז. */

.gb-public {
	--gb-navy: #02004a;
	--gb-cta: #fc0382;
	--gb-cta-dark: #e90378;
	--gb-yellow: #ffd936;
	--gb-turq: #0cf8c6;
	--gb-bg2: #f7f7f9;
	--gb-text: rgba(2, 0, 74, 0.72);
	--gb-text2: rgba(2, 0, 74, 0.82);
	--gb-border: rgba(2, 0, 74, 0.14);

	direction: rtl;
	font-family: 'Assistant', sans-serif;
	color: var(--gb-navy);
	background: #ffffff;
	max-width: 560px;
	margin: 0 auto;
	padding: 0 0 40px;
}
.gb-public *, .gb-public *::before, .gb-public *::after { box-sizing: border-box; }

.gb-lp-brand { padding: 26px 18px 4px; text-align: center; background: var(--gb-bg2); }
.gb-lp-name { font-size: 22px; font-weight: 700; }
.gb-lp-sub { font-size: 13.5px; color: var(--gb-text); }
.gb-lp-rule { width: 56px; height: 3px; background: var(--gb-cta); border-radius: 2px; margin: 10px auto 0; }

.gb-public-body { padding: 20px 18px 0; display: flex; flex-direction: column; gap: 16px; }
.gb-public .gb-title { font-size: 20px; font-weight: 700; margin: 0; }
.gb-public .gb-sub { font-size: 14px; color: var(--gb-text); margin: 0; }
.gb-public .gb-note { font-size: 13px; color: var(--gb-text2); text-align: center; }

.gb-day { display: flex; flex-direction: column; gap: 8px; }
.gb-day-head { font-size: 15px; font-weight: 700; padding-bottom: 4px; border-bottom: 1px solid var(--gb-border); }
.gb-slot-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.gb-slot {
	display: flex; flex-direction: column; align-items: center; gap: 2px;
	background: #fff; border: 1.5px solid var(--gb-border); border-radius: 12px;
	padding: 10px 6px; cursor: pointer; text-align: center; font-family: inherit;
}
.gb-slot b { font-size: 17px; font-weight: 700; color: var(--gb-navy); }
.gb-slot span { font-size: 12px; color: var(--gb-text); }
.gb-slot.is-sel { background: var(--gb-cta); border-color: var(--gb-cta-dark); }
.gb-slot.is-sel b, .gb-slot.is-sel span { color: #fff; }

.gb-card { background: #fff; border: 1px solid var(--gb-border); border-radius: 14px; padding: 16px; }
.gb-row { display: flex; justify-content: space-between; gap: 10px; padding: 6px 0; border-bottom: 1px dashed var(--gb-border); font-size: 14px; }
.gb-row:last-child { border-bottom: none; }
.gb-row .l { color: var(--gb-text); }
.gb-row .v { font-weight: 700; text-align: left; }

.gb-field { display: flex; flex-direction: column; gap: 5px; margin-top: 10px; }
.gb-field label { font-size: 13px; font-weight: 600; }
.gb-field input, .gb-field textarea {
	font-family: inherit; font-size: 15px; color: var(--gb-navy);
	border: 1.5px solid var(--gb-border); border-radius: 10px;
	padding: 10px 12px; background: #fff; width: 100%;
}
.gb-field textarea { min-height: 70px; resize: vertical; }
.gb-hp { position: absolute; right: -9999px; top: -9999px; height: 1px; width: 1px; overflow: hidden; }

.gb-loc { display: flex; gap: 10px; }
.gb-loc button {
	flex: 1; display: flex; flex-direction: column; align-items: center; gap: 3px;
	background: #fff; border: 2px solid var(--gb-border); border-radius: 14px;
	padding: 14px 8px; cursor: pointer; font-family: inherit; text-align: center;
}
.gb-loc b { font-size: 16px; font-weight: 700; color: var(--gb-navy); }
.gb-loc span { font-size: 12px; color: var(--gb-text); }
.gb-loc button.is-sel { border-color: var(--gb-cta); background: #fff0f7; }
.gb-loc button.is-sel b { color: var(--gb-cta-dark); }

.gb-check { display: flex; gap: 9px; align-items: flex-start; font-size: 13.5px; color: var(--gb-text2); margin-top: 12px; }
.gb-check input { width: 18px; height: 18px; margin-top: 2px; accent-color: var(--gb-cta); }

.gb-cta-btn {
	display: block; width: 100%; text-align: center; cursor: pointer;
	background: var(--gb-cta); color: #fff;
	font-family: inherit; font-size: 16px; font-weight: 700;
	border: none; border-radius: 999px; padding: 13px 18px; margin-top: 12px;
}
.gb-cta-btn:hover { background: var(--gb-cta-dark); }
.gb-cta-btn[disabled] { opacity: 0.6; cursor: default; }
.gb-back-btn {
	background: none; border: none; cursor: pointer; font-family: inherit;
	font-size: 13.5px; color: var(--gb-cta-dark); text-decoration: underline;
	text-underline-offset: 2px; display: block; margin: 10px auto 0;
}
.gb-err { color: #c62828; font-size: 14px; font-weight: 600; margin-top: 8px; }
.gb-empty {
	border: 1.5px dashed var(--gb-border); border-radius: 14px; background: #fff;
	padding: 28px 18px; text-align: center; font-size: 15px; color: var(--gb-text2);
}
.gb-success-icon {
	width: 52px; height: 52px; border-radius: 50%; background: var(--gb-turq); color: var(--gb-navy);
	display: flex; align-items: center; justify-content: center;
	font-size: 26px; font-weight: 700; margin: 0 auto 8px;
}
.gb-center { text-align: center; }


/* ===== gb-press-polish · 6.8.2026 — mishov mega la-lchitzot ===== */
.gb-public {
	--gb-ease-out: cubic-bezier(0.23, 1, 0.32, 1);
}
.gb-public button,
.gb-public .gb-slot,
.gb-public .gb-cta-btn,
.gb-public .gb-loc button,
.gb-public .gb-back-btn {
	-webkit-tap-highlight-color: transparent;
	touch-action: manipulation;
	user-select: none;
}
/* mishov lechitza: kol element lachitz mitkavetz me'at */
.gb-public .gb-slot,
.gb-public .gb-loc button {
	transition: transform 140ms var(--gb-ease-out),
	            border-color 160ms ease,
	            background-color 160ms ease;
}
.gb-public .gb-slot:active,
.gb-public .gb-loc button:active {
	transform: scale(0.97);
}
.gb-public .gb-cta-btn {
	transition: transform 140ms var(--gb-ease-out),
	            background-color 160ms ease,
	            box-shadow 160ms ease;
	box-shadow: 0 1px 2px rgba(2, 0, 74, 0.10);
}
.gb-public .gb-cta-btn:active {
	transform: scale(0.975);
	box-shadow: 0 0 0 rgba(2, 0, 74, 0);
}
.gb-public .gb-cta-btn[disabled] {
	transform: none;
	box-shadow: none;
}
.gb-public .gb-back-btn {
	transition: transform 140ms var(--gb-ease-out), opacity 160ms ease;
	padding: 6px 10px;
}
.gb-public .gb-back-btn:active {
	transform: scale(0.96);
	opacity: 0.75;
}
/* hover rak be-machshev im akhbar — be-nayad hover "nitka dalook" acharei ha-lchitza */
@media (hover: hover) and (pointer: fine) {
	.gb-public .gb-slot:hover {
		border-color: var(--gb-cta);
		background: #fff7fb;
	}
	.gb-public .gb-slot.is-sel:hover {
		background: var(--gb-cta);
	}
	.gb-public .gb-loc button:hover {
		border-color: var(--gb-cta);
	}
}
/* negishut mikledet */
.gb-public button:focus-visible,
.gb-public input:focus-visible,
.gb-public textarea:focus-visible {
	outline: 2px solid var(--gb-cta);
	outline-offset: 2px;
}
.gb-public .gb-field input:focus,
.gb-public .gb-field textarea:focus {
	border-color: var(--gb-cta);
	outline: none;
}
@media (prefers-reduced-motion: reduce) {
	.gb-public .gb-slot,
	.gb-public .gb-loc button,
	.gb-public .gb-cta-btn,
	.gb-public .gb-back-btn {
		transition: background-color 160ms ease, border-color 160ms ease;
	}
	.gb-public .gb-slot:active,
	.gb-public .gb-loc button:active,
	.gb-public .gb-cta-btn:active,
	.gb-public .gb-back-btn:active {
		transform: none;
	}
}
