/* סידור עבודה אופק – built from the plugin CSS by port_app.py */
/* Gan shifts – admin. Works in both RTL (Hebrew admin) and LTR. */
.gs-wrap {
	/* Ofek website palette */
	--o-navy: #2E4F76; --o-band: #284669; --o-card: #31537C; --o-deep: #1F3858; --o-pink: #F8B4C0; --o-sage: #A8D5C6; --o-sky: #BAC6D9; --o-lilac: #D7BFD8; --o-blue: #95B9D6;
	--gs-yes: #2f7d68; --gs-yes-bg: #e3f3ee; --gs-no: #b4475c; --gs-no-bg: #fde9ed; --gs-unk: #6b7280; --gs-dev: #8a2340; --gs-dev-bg: #FFE3E8; --gs-line: #d5dce7;
	direction: rtl; font-family: "Assistant", system-ui, "Segoe UI", Arial, sans-serif; font-size: 14px;
}
.gs-wrap h1, .gs-wrap h2, .gs-wrap h3, .gs-wrap .nav-tab, .gs-wrap .button, .gs-cal-head { font-family: "Varela Round", "Assistant", sans-serif; font-weight: 400; }
.gs-wrap h2, .gs-wrap h3 { color: var(--o-navy); }
.gs-brand { display: flex; align-items: center; gap: 18px; background: var(--o-navy); color: #fff; border-radius: 16px; padding: 14px 20px 30px; margin: 10px 0 16px; position: relative; }
.gs-brand::after { content: ""; position: absolute; inset: auto 0 6px 0; height: 18px; background: url("ofek-divider.svg") repeat-x center / auto 18px; }
.gs-brand-logo { height: 46px; width: auto; }
.gs-brand-kicker { display: block; color: var(--o-sky); font-size: 13px; letter-spacing: .04em; }
.gs-wrap .gs-brand h1 { color: #fff; margin: 0; padding: 0; font-size: 24px; line-height: 1.3; }
.gs-wrap .button-primary { background: var(--o-pink); border-color: var(--o-pink); color: var(--o-navy); font-weight: 600; box-shadow: 2px 2px 0 rgba(31, 56, 88, .2); }
.gs-wrap .button-primary:hover, .gs-wrap .button-primary:focus { background: var(--o-navy); border-color: var(--o-navy); color: #fff; }
.gs-wrap .button:not(.button-primary):not(.gs-wa) { border-color: var(--o-navy); color: var(--o-navy); }
.gs-wrap .button:not(.button-primary):not(.gs-wa):hover, .gs-wrap .button:not(.button-primary):not(.gs-wa):focus-visible { background: var(--o-navy); border-color: var(--o-navy); color: #fff; }
.gs-wrap .nav-tab:not(.nav-tab-active):hover { background: #e4ebf4; color: var(--o-navy); }
.gs-wrap .nav-tab-active, .gs-wrap .nav-tab-active:hover { background: var(--o-navy); color: #fff; border-color: var(--o-navy); }
.gs-wrap a { color: var(--o-card); }
.gs-years { margin: 8px 0 12px; display: flex; flex-wrap: wrap; gap: 6px; }
.gs-years small { opacity: .75; }
.gs-months { margin-bottom: 12px; }
.gs-months .nav-tab { font-size: 13px; padding: 5px 10px; }
.gs-toolbar { display: flex; flex-wrap: wrap; gap: 16px; align-items: center; margin: 8px 0; font-size: 15px; }
.gs-legend { font-size: 12px; color: #50575e; display: inline-flex; gap: 6px; align-items: center; flex-wrap: wrap; }
.gs-dot { display: inline-block; width: 10px; height: 10px; border-radius: 50%; margin-inline-start: 8px; }
.gs-dot-yes { background: var(--gs-yes); } .gs-dot-unk { background: #c3c4c7; } .gs-dot-no { background: var(--gs-no); }
.gs-dev-sample { background: var(--gs-dev-bg); color: var(--gs-dev); font-weight: 700; padding: 0 4px; border-radius: 3px; margin-inline-start: 8px; }
.gs-actions { display: flex; flex-wrap: wrap; gap: 6px; margin: 10px 0 14px; }
.gs-inline { display: inline; margin: 0; }

/* Calendar */
.gs-cal { display: grid; grid-template-columns: repeat(var(--gs-cols, 5), minmax(150px, 1fr)); gap: 6px; }
.gs-cal-head { text-align: center; padding: 7px; background: var(--o-navy); color: #fff; border-radius: 10px; }
.gs-cell { background: #fff; border: 1px solid var(--gs-line); border-radius: 12px; padding: 6px; min-height: 90px; font-size: 13px; }
.gs-cell.gs-empty { background: transparent; border: 0; }
.gs-cell.gs-closed, .gs-cell.gs-out { background: repeating-linear-gradient(-45deg, #f6f7f7, #f6f7f7 6px, #eeeff0 6px, #eeeff0 12px); color: #646970; }
.gs-cell-head { display: flex; align-items: baseline; gap: 6px; border-bottom: 1px solid #f0f0f1; padding-bottom: 4px; margin-bottom: 4px; }
.gs-cell-head b { font-size: 16px; font-family: "Varela Round", sans-serif; color: var(--o-navy); }
.gs-cell-head small { color: #8c8f94; font-size: 11px; }
.gs-count { margin-inline-start: auto; background: var(--o-pink); color: var(--o-navy); border-radius: 10px; padding: 0 7px; font-size: 11px; font-weight: 700; }
.gs-closed-note { font-weight: 600; padding-top: 6px; }

.gs-pick { display: flex; flex-wrap: wrap; align-items: center; gap: 2px 4px; padding: 2px 4px; border-radius: 4px; margin: 1px 0; border-inline-start: 3px solid transparent; }
.gs-pick label { flex: 1; display: flex; align-items: center; gap: 4px; cursor: pointer; min-width: 0; }
.gs-pick .gs-name { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.gs-pick input[type=checkbox] { margin: 0; }
.gs-pick.gs-mgr { border-inline-start-color: var(--o-navy); }
.gs-pick.gs-yes { border-inline-start-color: var(--gs-yes); }
.gs-pick.gs-unk { border-inline-start-color: #c3c4c7; color: var(--gs-unk); }
.gs-pick.gs-no { border-inline-start-color: var(--gs-no); color: var(--gs-no); }
.gs-pick.is-on { background: var(--gs-yes-bg); color: #1d2327; font-weight: 600; }
.gs-pick.gs-mgr.is-on { background: #e4ebf4; }
.gs-pick.gs-no.is-on { background: var(--gs-no-bg); }
.gs-edit { border: 0; background: transparent; cursor: pointer; font-size: 11px; padding: 0 2px; color: #8c8f94; opacity: .35; }
.gs-pick:hover .gs-edit, .gs-edit:focus-visible, .gs-pick.is-dev .gs-edit { opacity: 1; }
.gs-pick.is-dev .gs-edit { background: var(--gs-dev-bg); color: var(--gs-dev); font-weight: 700; border-radius: 3px; direction: ltr; }
.gs-times { display: none; width: 100%; font-size: 11px; direction: ltr; text-align: end; }
.gs-pick.is-editing .gs-times { display: block; }
.gs-times input { width: 82px; padding: 0 2px; min-height: 24px; font-size: 12px; }
.gs-no-group summary { cursor: pointer; color: #8c8f94; font-size: 12px; margin-top: 4px; }
.gs-save-bar { position: sticky; bottom: 0; background: rgba(240, 240, 241, .95); padding: 10px 0; margin: 12px 0 0; z-index: 5; }
#gs-dirty { color: var(--gs-dev); font-weight: 600; margin-inline-start: 10px; }
.gs-summary { max-width: 640px; }

/* Boxes & forms */
.gs-box { background: #fff; border: 1px solid var(--gs-line); border-radius: 14px; padding: 12px 16px; margin: 12px 0; }
.gs-box h2, .gs-box h3 { margin-top: 4px; }
.gs-fields label { display: inline-block; margin-inline-end: 12px; margin-bottom: 6px; }
.gs-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; align-items: start; }
.gs-req-list li.is-current a { font-weight: 700; }
.gs-badge { display: inline-block; padding: 1px 8px; border-radius: 10px; background: #f0f0f1; font-size: 12px; }
.gs-badge-ok { background: var(--gs-yes-bg); color: var(--gs-yes); font-weight: 600; }
.gs-send-cell .button { margin-bottom: 2px; }
.gs-wa { background: #25d366 !important; border-color: #1da851 !important; color: #fff !important; }
.gs-danger { color: var(--gs-no); }
.gs-range { margin: 8px 0; }

.gs-wa-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 10px; }
.gs-wa-card { border: 1px solid var(--gs-line); border-radius: 6px; padding: 8px; }
.gs-wa-card textarea { width: 100%; font-size: 12px; margin: 6px 0; }

/* Staff settings */
.gs-staff-list { display: grid; grid-template-columns: repeat(auto-fill, minmax(420px, 1fr)); gap: 10px; margin-top: 10px; }
.gs-staff-card { background: #fff; border: 1px solid var(--gs-line); border-radius: 14px; padding: 10px; }
.gs-staff-mgr { border-inline-start: 4px solid var(--o-navy); }
.gs-staff-top { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-bottom: 8px; }
.gs-slot { background: var(--o-sky); color: var(--o-deep); border-radius: 4px; padding: 2px 8px; font-weight: 700; }
.gs-constraints { display: grid; gap: 3px; }
.gs-con { display: grid; grid-template-columns: 60px 110px 1fr 1fr; gap: 4px; align-items: center; }
.gs-con input[type=time] { width: 100%; }
.gs-notes { display: block; margin-top: 6px; }
.gs-staff-actions { margin-top: 6px; font-size: 12px; }
.gs-sugs { display: grid; gap: 2px; max-height: 360px; overflow: auto; border: 1px solid #f0f0f1; padding: 6px; }
.gs-sugs .is-exists { color: #8c8f94; }
.gs-wd { margin-inline-end: 10px; }

/* PDF preview */
.gs-pdf-wrap { overflow: auto; border: 1px solid #f0f0f1; padding: 10px; background: #fafafa; }
#gs-pdf, #gs-pdf-render { background: #fff; padding: 12px; font-family: "Assistant", Arial, "Segoe UI", sans-serif; color: #111; min-width: 640px; }
.gs-pdf-head { display: flex; align-items: center; gap: 16px; background: #2E4F76; color: #fff; border-radius: 10px; padding: 10px 16px; margin-bottom: 10px; }
.gs-pdf-head img { height: 40px; width: auto; }
.gs-pdf-title { font-family: "Varela Round", Arial, sans-serif; font-size: 20px; margin-bottom: 2px; }
.gs-pdf-sub { font-size: 12px; color: #BAC6D9; }
.gs-pdf-table { border-collapse: collapse; width: 100%; font-size: 12px; }
.gs-pdf-table th, .gs-pdf-table td { border: 1px solid #bbb; padding: 3px 4px; text-align: center; }
.gs-pdf-table thead th { background: #2E4F76; color: #fff; font-weight: 600; border-color: #2E4F76; }
.gs-pdf-table tfoot th { background: #BAC6D9; color: #1F3858; }
.gs-pdf-table tbody tr:nth-child(even) td { background: #f4f7fb; }
.gs-pdf-date { text-align: start !important; white-space: nowrap; }
.gs-pdf-date small { color: #777; }
.gs-pdf-ok { color: #2E4F76; font-weight: 700; }
.gs-pdf-table td.gs-pdf-dev { background: #F8B4C0; color: #1F3858; font-weight: 700; direction: ltr; }
.gs-pdf-table tbody tr.gs-pdf-closed td { background: #e9e6f0; color: #555; }
.gs-pdf-n { color: #555; }

@media (max-width: 960px) {
	.gs-cal { grid-template-columns: 1fr; }
	.gs-cal-head, .gs-cell.gs-empty { display: none; }
	.gs-columns { grid-template-columns: 1fr; }
	.gs-staff-list { grid-template-columns: 1fr; }
}

@media print {
	body.gs-printing #adminmenumain, body.gs-printing #wpadminbar, body.gs-printing #wpfooter,
	body.gs-printing .gs-wrap > *:not(.gs-box), body.gs-printing .gs-box:not(:has(#gs-pdf)),
	body.gs-printing .gs-box > *:not(.gs-pdf-wrap), body.gs-printing .notice { display: none !important; }
	body.gs-printing #wpcontent { margin: 0 !important; padding: 0 !important; }
	body.gs-printing .gs-box, body.gs-printing .gs-pdf-wrap { border: 0; padding: 0; margin: 0; background: #fff; overflow: visible; }
	body.gs-printing #gs-pdf { min-width: 0; padding: 0; }
	body.gs-printing .gs-pdf-table tr { break-inside: avoid; }
	@page { size: A4 landscape; margin: 10mm; }
}

.gs-template { background: #eef3f9; border-inline-start: 4px solid var(--o-pink); border-radius: 10px; padding: 4px 14px; margin-bottom: 10px; }

/* dd/mm/yyyy date fields with a calendar button */
.gs-datefield { display: inline-flex; align-items: center; gap: 2px; position: relative; vertical-align: middle; }
.gs-datefield .gs-date-text { width: 8.2em; text-align: left; }
.gs-date-native { position: absolute; inset-inline-start: 0; bottom: 0; width: 1px; height: 1px; opacity: 0; pointer-events: none; border: 0; padding: 0; }
.gs-date-btn { border: 0; background: transparent; cursor: pointer; font-size: 16px; padding: 2px 4px; }
.gs-wrap #gs-req-month { min-width: 12em; }

/* hours read left to right: from on the left, to on the right */
.gs-con input[name$="[t]"] { order: 3; }
.gs-con input[name$="[f]"] { order: 4; }

/* Manager page (/sidur) – the schedule screens outside wp-admin, in the Ofek website's look.
   Provides the base styles that wp-admin normally gives (buttons, tabs, tables, notices). */

.gs-manager-body { margin: 0; background: #EEF2F7; color: #1F3858; font-family: "Assistant", system-ui, "Segoe UI", Arial, sans-serif; font-size: 15px; line-height: 1.5; direction: rtl; }
.gs-manager-body *, .gs-manager-body *::before, .gs-manager-body *::after { box-sizing: border-box; }
.gs-manager-body a { color: #31537C; }
.gs-manager-body input, .gs-manager-body select, .gs-manager-body textarea, .gs-manager-body button { font: inherit; color: inherit; }
.gs-manager-body input[type=text], .gs-manager-body input[type=email], .gs-manager-body input[type=tel], .gs-manager-body input[type=date],
.gs-manager-body input[type=time], .gs-manager-body input[type=password], .gs-manager-body input[type=file], .gs-manager-body select, .gs-manager-body textarea {
	border: 1px solid #b9c4d4; border-radius: 8px; padding: 5px 8px; background: #fff; min-height: 34px; max-width: 100%;
}
.gs-manager-main { max-width: 1440px; margin: 0 auto; padding: 0 16px 40px; }
.gs-manager-main .wrap { margin: 0; }

/* Top navigation */
.gs-topnav { position: sticky; top: 0; z-index: 20; display: flex; flex-wrap: wrap; align-items: center; gap: 4px; padding: 8px max(16px, calc(50% - 704px)); background: #1F3858; }
.gs-topnav a { color: #fff; text-decoration: none; font-family: "Varela Round", "Assistant", sans-serif; padding: 7px 14px; border-radius: 999px; }
.gs-topnav a[aria-current="page"] { background: #F8B4C0; color: #1F3858; }
.gs-topnav a:hover { background: rgba(255, 255, 255, .12); }
.gs-topnav a[aria-current="page"]:hover { background: #fff; }
.gs-topnav-user { margin-inline-start: auto; color: #BAC6D9; font-size: 14px; }
.gs-topnav-user a { padding: 0; color: #F8B4C0; }

/* wp-admin look-alikes */
.gs-manager-body .button { display: inline-flex; align-items: center; gap: 6px; min-height: 34px; padding: 4px 14px; border: 1.5px solid #2E4F76; border-radius: 8px; background: #fff; color: #2E4F76; text-decoration: none; cursor: pointer; font-family: "Varela Round", "Assistant", sans-serif; font-size: 14px; line-height: 1.6; white-space: nowrap; }
.gs-manager-body .button:hover { background: #2E4F76; color: #fff; }
.gs-manager-body .button-hero { font-size: 17px; padding: 8px 24px; }
.gs-manager-body .button[disabled] { opacity: .6; cursor: wait; }
.gs-manager-body .button-link { background: none; border: 0; padding: 0; color: #31537C; text-decoration: underline; cursor: pointer; }
.gs-manager-body .nav-tab-wrapper { display: flex; flex-wrap: wrap; gap: 4px; border-bottom: 1px solid #c9d3e3; margin: 0 0 12px; padding: 0; }
.gs-manager-body .nav-tab { padding: 6px 14px; border: 1px solid #c9d3e3; border-bottom: 0; border-radius: 10px 10px 0 0; background: #f6f8fb; color: #2E4F76; text-decoration: none; margin-bottom: -1px; }
.gs-manager-body .widefat { width: 100%; border-collapse: collapse; background: #fff; border: 1px solid #d5dce7; }
.gs-manager-body .widefat th, .gs-manager-body .widefat td { padding: 8px 10px; text-align: right; border-bottom: 1px solid #edf0f5; vertical-align: middle; }
.gs-manager-body .widefat thead th { background: #f3f6fa; font-weight: 700; }
.gs-manager-body .striped > tbody > tr:nth-child(odd) { background: #fafbfd; }
.gs-manager-body .form-table { border-collapse: collapse; width: 100%; }
.gs-manager-body .form-table th { width: 200px; text-align: right; vertical-align: top; padding: 14px 0 14px 10px; }
.gs-manager-body .form-table td { padding: 10px 0; }
.gs-manager-body .description { color: #5b6b80; font-size: 13px; }
.gs-manager-body .regular-text { width: 25em; }
.gs-manager-body .large-text { width: 100%; }
.gs-manager-body .notice { background: #fff; border: 1px solid #d5dce7; border-inline-start: 4px solid #A8D5C6; border-radius: 10px; padding: 2px 14px; margin: 10px 0; }
.gs-manager-body .notice-error { border-inline-start-color: #b4475c; }
.gs-manager-body .notice-warning { border-inline-start-color: #e0a100; }
.gs-manager-body code { background: #eef2f7; padding: 1px 5px; border-radius: 4px; }
.gs-manager-body .gs-save-bar { background: rgba(238, 242, 247, .96); }

/* Login */
.gs-login { max-width: 400px; margin: 8vh auto; padding: 32px 28px 22px; background: #2E4F76; color: #fff; border-radius: 20px; text-align: center; box-shadow: 0 16px 40px rgba(31, 56, 88, .25); }
.gs-login-logo { height: 64px; width: auto; }
.gs-login h1 { font-family: "Varela Round", "Assistant", sans-serif; font-weight: 400; font-size: 24px; margin: 10px 0 4px; }
.gs-login-divider { height: 22px; margin: 6px 0 18px; background: repeat-x center / auto 22px; }
.gs-login-form { display: grid; gap: 12px; text-align: right; }
.gs-login-form label { display: grid; gap: 4px; font-weight: 600; }
.gs-login-form input[type=text], .gs-login-form input[type=password] { border: 0; border-radius: 10px; padding: 10px 12px; font-size: 16px; color: #1F3858; }
.gs-login-remember { display: flex !important; align-items: center; gap: 8px; font-weight: 400 !important; color: #C9D3E3; }
.gs-login-form button { margin-top: 6px; padding: 12px; border: 0; border-radius: 10px; background: #F8B4C0; color: #1F3858; font-family: "Varela Round", "Assistant", sans-serif; font-size: 18px; cursor: pointer; box-shadow: 3px 3px 0 rgba(0, 0, 0, .18); }
.gs-login-form button:hover { background: #fff; }
.gs-login-error { background: #F8B4C0; color: #1F3858; border-radius: 10px; padding: 8px 12px; font-weight: 600; }
.gs-login-link { color: #BAC6D9 !important; font-size: 14px; }

@media (max-width: 700px) {
	.gs-manager-body .form-table th, .gs-manager-body .form-table td { display: block; width: auto; padding: 6px 0; }
	.gs-manager-body .regular-text { width: 100%; }
	.gs-topnav a { padding: 6px 10px; font-size: 14px; }
}
.gs-manager-body .button.button-primary { background: #F8B4C0; border-color: #F8B4C0; color: #1F3858; font-weight: 600; box-shadow: 2px 2px 0 rgba(31, 56, 88, .2); }
.gs-manager-body .button.button-primary:hover { background: #2E4F76; border-color: #2E4F76; color: #fff; }
.gs-manager-body .nav-tab.nav-tab-active { background: #2E4F76; border-color: #2E4F76; color: #fff; }
.gs-manager-body .wp-header-end { display: none; }
@media (max-width: 700px) {
	.gs-manager-main { padding: 0 10px 30px; }
	.gs-manager-body .gs-brand { padding: 10px 14px 28px; gap: 12px; }
	.gs-manager-body .gs-brand-logo { height: 34px; }
	.gs-manager-body .gs-brand h1 { font-size: 19px; }
	.gs-manager-body .gs-years { gap: 4px; }
	.gs-manager-body .gs-years .button { font-size: 13px; padding: 3px 10px; min-height: 30px; }
	.gs-manager-body .gs-years small { display: none; }
	.gs-manager-body .gs-months .nav-tab { font-size: 13px; padding: 4px 9px; }
	.gs-manager-body .gs-actions .button { font-size: 13px; white-space: normal; }
}

/* Gan shifts – assistant page. Matches the Ofek website: navy, pink buttons, Varela Round + Assistant. */
.gs-front {
	--o-navy: #2E4F76; --o-band: #284669; --o-card: #31537C; --o-deep: #1F3858;
	--o-ink: #FFFFFF; --o-muted: #C9D3E3; --o-pink: #F8B4C0; --o-sage: #A8D5C6; --o-sky: #BAC6D9; --o-lilac: #D7BFD8;
	--o-display: "Varela Round", "Assistant", system-ui, sans-serif;
	--o-body: "Assistant", system-ui, "Segoe UI", Arial, sans-serif;
	direction: rtl; text-align: right; max-width: 680px; margin: 0 auto; padding: 22px 16px 8px;
	background: var(--o-navy); color: var(--o-ink); font-family: var(--o-body); font-size: 17px; line-height: 1.6; border-radius: 18px;
}
.gs-front * { box-sizing: border-box; }
.gs-front h2, .gs-front h3 { font-family: var(--o-display); font-weight: 600; color: var(--o-ink); line-height: 1.25; }
.gs-f-head { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; }
.gs-f-logo { height: 46px; width: auto; }
.gs-f-hello { margin: 0; font-size: 24px; }
.gs-f-divider { height: 22px; margin: 10px 0 16px; background: repeat-x center / auto 22px; }
.gs-f-ok { background: var(--o-sage); color: var(--o-deep); border-radius: 14px; padding: 12px 14px; margin-bottom: 14px; font-weight: 700; }
.gs-f-msg { background: var(--o-card); border-radius: 14px; padding: 12px 14px; color: var(--o-ink); }
.gs-f-box { background: var(--o-card); border: 1px solid rgba(255, 255, 255, .25); border-radius: 18px; padding: 16px; margin-bottom: 16px; }
.gs-f-box h3 { margin: 0 0 4px; font-size: 21px; display: flex; align-items: center; gap: 10px; }
.gs-f-box h3::before { content: ""; flex: none; width: 22px; height: 19px; background: var(--o-pink);
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 82.5'%3E%3Cpath d='M99.87 16.74C100 9.6 96.77 4.24 88.16 2.34 80.56.66 72.25 3.97 67.56 8.82c-4.68 4.86-6.47 10.95-7.8 16.89-2.47-5.99-5.04-12.11-10.08-17.08C44.64 3.66 36.53 0 28.37.91 20.78 1.75 14.59 6.42 11.73 11.84 0 34.08 43.26 68.84 62.99 82.46c7.6-9.11 36.5-44.94 36.88-65.72Z'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 82.5'%3E%3Cpath d='M99.87 16.74C100 9.6 96.77 4.24 88.16 2.34 80.56.66 72.25 3.97 67.56 8.82c-4.68 4.86-6.47 10.95-7.8 16.89-2.47-5.99-5.04-12.11-10.08-17.08C44.64 3.66 36.53 0 28.37.91 20.78 1.75 14.59 6.42 11.73 11.84 0 34.08 43.26 68.84 62.99 82.46c7.6-9.11 36.5-44.94 36.88-65.72Z'/%3E%3C/svg%3E") center / contain no-repeat; }
.gs-f-sub { color: var(--o-muted); font-size: 15px; margin: 0 0 6px; }
.gs-f-note { background: rgba(255, 255, 255, .08); border-radius: 10px; padding: 8px 12px; }
.gs-f-help { font-size: 15px; color: var(--o-muted); }
.gs-f-help b { color: var(--o-ink); }
.gs-f-quick { display: flex; flex-wrap: wrap; gap: 8px; margin: 10px 0 12px; }
.gs-front button { font-family: var(--o-display); cursor: pointer; }
.gs-f-quick button { border: 1.5px solid rgba(255, 255, 255, .6); background: transparent; color: var(--o-ink); border-radius: 999px; padding: 6px 14px; font-size: 15px; }
.gs-f-quick button:hover, .gs-f-quick button:focus-visible { background: #fff; color: var(--o-navy); }
.gs-f-week { border-top: 2px solid rgba(255, 255, 255, .18); padding-top: 4px; margin-top: 6px; }
.gs-f-day { display: grid; grid-template-columns: 1fr auto; gap: 6px 10px; align-items: center; padding: 9px 0; border-bottom: 1px solid rgba(255, 255, 255, .1); }
.gs-f-date { font-weight: 700; }
.gs-f-date small { display: block; font-weight: 400; color: var(--o-muted); font-size: 13px; }
.gs-f-choice { display: flex; gap: 6px; }
.gs-f-choice label { display: inline-flex; align-items: center; gap: 4px; border: 1.5px solid rgba(255, 255, 255, .55); border-radius: 999px; padding: 6px 14px; cursor: pointer; font-family: var(--o-display); font-size: 15px; user-select: none; color: var(--o-ink); }
.gs-f-choice input { position: absolute; opacity: 0; pointer-events: none; }
.gs-f-day[data-state="yes"] .gs-f-yes { background: var(--o-sage); border-color: var(--o-sage); color: var(--o-deep); }
.gs-f-day[data-state="no"] .gs-f-no { background: var(--o-pink); border-color: var(--o-pink); color: var(--o-deep); }
.gs-f-choice label:focus-within { outline: 3px solid var(--o-pink); outline-offset: 2px; }
.gs-f-hours { grid-column: 1 / -1; display: none; font-size: 15px; color: var(--o-muted); }
.gs-f-day[data-state="yes"] .gs-f-hours { display: block; }
.gs-f-hours input { font-size: 16px; width: 7.2em; padding: 3px 6px; border: 0; border-radius: 8px; direction: ltr; background: #fff; color: var(--o-navy); }
.gs-f-hours.is-dev { color: var(--o-pink); font-weight: 700; }
.gs-f-hours.is-dev input { background: #FFE3E8; outline: 2px solid var(--o-pink); }
.gs-f-day.is-closed { opacity: .6; }
.gs-f-closed { color: var(--o-muted); font-size: 15px; }
.gs-f-submit { position: sticky; bottom: 0; background: var(--o-card); padding: 12px 0; display: flex; justify-content: space-between; align-items: center; gap: 8px; border-top: 1px solid rgba(255, 255, 255, .2); margin-top: 8px; }
.gs-f-submit button { background: var(--o-pink); color: var(--o-navy); border: 1.5px solid var(--o-pink); padding: 11px 28px; font-size: 18px; box-shadow: 3px 3px 0 rgba(0, 0, 0, .18); }
.gs-f-submit button::after { content: " ↖"; }
.gs-f-submit button:hover, .gs-f-submit button:focus-visible { background: #fff; border-color: #fff; }
.gs-f-progress { font-size: 14px; color: var(--o-muted); }
.gs-f-mine { list-style: none; margin: 0; padding: 0; }
.gs-f-mine li { display: flex; justify-content: space-between; padding: 7px 0; border-bottom: 1px solid rgba(255, 255, 255, .1); }
.gs-f-mine li.is-dev b { background: var(--o-pink); color: var(--o-navy); border-radius: 6px; padding: 0 8px; direction: ltr; }
.gs-f-reg { color: var(--o-muted); font-size: 15px; }

/* [gan_holidays] – same table as the website's holiday page */
.gs-hol-wrap { overflow-x: auto; border: 1px solid rgba(255, 255, 255, .25); background: #31537C; direction: rtl; }
.gs-hol { width: 100%; border-collapse: collapse; min-width: 560px; font-family: "Assistant", system-ui, sans-serif; color: #fff; font-variant-numeric: tabular-nums; }
.gs-hol th { font-family: "Varela Round", "Assistant", sans-serif; font-weight: 400; font-size: 17px; text-align: right; background: #1F3858; color: #fff; padding: 12px 14px; }
.gs-hol td { padding: 12px 14px; border-top: 1px solid rgba(255, 255, 255, .2); vertical-align: top; }
.gs-hol td:first-child { font-family: "Varela Round", "Assistant", sans-serif; color: #F8B4C0; }
.gs-hol small { display: block; color: #C9D3E3; font-size: 14px; margin-top: 4px; }

.gs-f-range { display: inline-flex; align-items: center; gap: 6px; flex-wrap: nowrap; }

/* ===== pending port to the plugin: 24-hour time pickers ===== */
select.gs-time { direction: ltr; font-variant-numeric: tabular-nums; }
.gs-times select.gs-time { padding: 0 2px; min-height: 26px; font-size: 12px; }
.gs-con select.gs-time { width: 100%; }
.gs-con select[name$="[t]"] { order: 3; }
.gs-con select[name$="[f]"] { order: 4; }
.gs-f-hours select.gs-time { font-size: 16px; padding: 3px 6px; border: 0; border-radius: 8px; background: #fff; color: #2E4F76; font-family: inherit; }
.gs-f-hours.is-dev select.gs-time { background: #FFE3E8; outline: 2px solid #F8B4C0; }

/* ===== pending port: half-filled dot for "hours differ from regular" ===== */
.gs-dot-dev { box-sizing: border-box; border: 1.5px solid #6FB39E; background: linear-gradient(90deg, #6FB39E 50%, transparent 50%); }
.gs-pick.is-dev .gs-edit::before { content: ""; display: inline-block; box-sizing: border-box; width: 9px; height: 9px; border-radius: 50%; border: 1.5px solid #6FB39E; background: linear-gradient(90deg, #6FB39E 50%, transparent 50%); margin-right: 4px; vertical-align: -1px; }


:root { color-scheme: light; }
html, body { margin: 0; background: #EEF2F7; color: #1F3858; }
body { direction: rtl; font-family: "Assistant", system-ui, "Segoe UI", Arial, sans-serif; -webkit-text-size-adjust: 100%; }
#sim-app { min-height: calc(100vh - 46px); }
.sim-login-bg { background: #EEF2F7; padding: 1px 16px; }
.sim-btn-primary { background: #F8B4C0; border-color: #F8B4C0; font-weight: 600; }
.sim-btn:hover, .sim-bar button:hover { background: #2E4F76; color: #fff; }
.sim-modal { position: fixed; inset: 0; z-index: 100; background: rgba(31, 56, 88, .55); display: flex; align-items: center; justify-content: center; padding: 16px; }
.sim-modal-box { background: #fff; color: #1F3858; border-radius: 16px; padding: 18px 20px; max-width: min(960px, 100%); max-height: calc(100vh - 32px); overflow: auto; box-shadow: 0 16px 40px rgba(31, 56, 88, .3); font-size: 16px; }
.sim-modal-box h3 { font-family: "Varela Round", "Assistant", sans-serif; font-weight: 400; margin: 0 0 8px; color: #2E4F76; }
.sim-modal-btns { display: flex; gap: 8px; margin-top: 14px; }
.sim-small { font-size: 14px; color: #5b6b80; }

/* ===== app ===== */
#sim-app { min-height: 100vh; }
.gs-form-page { background: #2E4F76; padding: 12px 0 24px; min-height: 100vh; box-sizing: border-box; }
body.gs-form-body, body.gs-form-body html { background: #2E4F76; }
.gs-login-link { color: #BAC6D9; font-size: 14px; }
@media print {
	body.gs-printing .gs-topnav, body.gs-printing .sim-modal { display: none !important; }
	body.gs-printing .gs-manager-main { padding: 0; max-width: none; }
	body.gs-printing, body.gs-printing #sim-app { background: #fff; }
}
