/**
 * Meal Plan Builder (Étrendkészítő) styles
 *
 * BEM prefix: myg-mealplan-
 *
 * @since 2.3.0
 */

/* ───────── Layout ───────── */

.myg-mealplan {
	max-width: 900px;
	margin: 0 auto;
	padding: 16px;
	font-family: var(--myg-font-family, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif);
	color: var(--myg-text-color, #333);
}

/* ───────── Buttons ───────── */

.myg-mealplan-btn {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	padding: 8px 16px;
	border: 1px solid var(--myg-border-color, #ddd);
	border-radius: 6px;
	background: #fff;
	color: var(--myg-text-color, #333);
	font-size: 14px;
	cursor: pointer;
	transition: background 0.15s, border-color 0.15s;
}

.myg-mealplan-btn:hover {
	background: #f5f5f5;
	border-color: #bbb;
}

.myg-mealplan-btn--primary {
	background: var(--myg-primary-color, #ff8630);
	color: #fff;
	border-color: var(--myg-primary-color, #ff8630);
}

.myg-mealplan-btn--primary:hover {
	background: var(--myg-primary-hover, #e5751a);
	border-color: var(--myg-primary-hover, #e5751a);
}

.myg-mealplan-btn--danger {
	color: #d32f2f;
	border-color: #d32f2f;
}

.myg-mealplan-btn--danger:hover {
	background: #ffebee;
}

.myg-mealplan-btn--small {
	padding: 4px 10px;
	font-size: 13px;
}

.myg-mealplan-btn--icon {
	padding: 4px 8px;
	border: none;
	background: transparent;
	font-size: 16px;
	line-height: 1;
	opacity: 0.5;
}

.myg-mealplan-btn--icon:hover {
	opacity: 1;
	background: transparent;
}

.myg-mealplan-btn--disabled {
	opacity: 0.5;
	cursor: not-allowed;
}

.myg-mealplan-btn--disabled:hover {
	opacity: 0.55;
}

/* ───────── Login Required ───────── */

.myg-mealplan-login-required {
	text-align: center;
	padding: 40px 20px;
}

/* ───────── Plan List ───────── */

.myg-mealplan-list__header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 20px;
}

.myg-mealplan-list__header h2 {
	margin: 0;
	font-size: 22px;
}

.myg-mealplan-list__items {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.myg-mealplan-list__empty {
	text-align: center;
	padding: 40px 20px;
	color: #888;
	font-size: 15px;
}

.myg-mealplan-list__card {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 14px 18px;
	border: 1px solid var(--myg-border-color, #e0e0e0);
	border-radius: 8px;
	background: #fff;
	cursor: pointer;
	transition: box-shadow 0.15s, border-color 0.15s;
}

.myg-mealplan-list__card:hover {
	border-color: var(--myg-primary-color, #ff8630);
	box-shadow: 0 2px 8px rgba(0,0,0,0.08);
}

.myg-mealplan-list__card-info {
	flex: 1;
}

.myg-mealplan-list__card-name {
	font-size: 16px;
	font-weight: 600;
	margin-bottom: 4px;
}

.myg-mealplan-list__card-meta {
	font-size: 13px;
	color: #888;
}

.myg-mealplan-list__card-actions {
	display: flex;
	gap: 4px;
}

/* ═══════════════════════════════════════════════════════════
   Diet Editor (.myg-diet-*) - Étrendkészítő szerkesztő
   Hierarchy: editor > day > meal > option (collapsible)
   ═══════════════════════════════════════════════════════════ */

/* ───────── Editor (hidden by default, shown via JS) ───────── */

.myg-diet-editor {
	display: none;
}

/* ───────── Editor Header ───────── */

.myg-diet-editor__header {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 20px;
	padding-bottom: 12px;
	border-bottom: 1px solid var(--myg-border-color, #e0e0e0);
}

.myg-diet-editor__back {
	padding: 6px 12px;
	border: none;
	background: none;
	font-size: 18px;
	cursor: pointer;
	color: var(--myg-text-color, #333);
}

.myg-diet-editor__back:hover {
	color: var(--myg-primary-color, #ff8630);
}

.myg-diet-editor__title {
	flex: 1;
	font-size: 20px;
	font-weight: 600;
	border: 1px solid transparent;
	border-radius: 4px;
	padding: 4px 8px;
	background: transparent;
}

.myg-diet-editor__title:focus {
	outline: none;
	border-color: var(--myg-primary-color, #ff8630);
	background: #fff;
}

.myg-diet-editor__save-status {
	font-size: 13px;
	color: #888;
	white-space: nowrap;
}

.myg-diet-editor__description-wrap {
	margin-bottom: 16px;
}

.myg-diet-editor__description {
	width: 100%;
	font-size: 14px;
	font-family: inherit;
	padding: 8px 10px;
	border: 1px solid var(--myg-border-color, #e0e0e0);
	border-radius: 6px;
	resize: vertical;
	min-height: 40px;
	background: #fff;
	color: var(--myg-text-color, #333);
	box-sizing: border-box;
}

.myg-diet-editor__description:focus {
	outline: none;
	border-color: var(--myg-primary-color, #ff8630);
}

.myg-diet-editor__add-day {
	margin-top: 16px;
}

/* ───────── Sticky Actions Bar ───────── */

.myg-diet-editor__actions-bar {
	position: sticky;
	bottom: 0;
	display: flex;
	justify-content: flex-end;
	align-items: center;
	gap: 8px;
	padding: 10px 14px;
	margin-top: 16px;
	background: #fff;
	border-top: 1px solid var(--myg-border-color, #e0e0e0);
	box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.06);
	z-index: 10;
}

.myg-diet-editor__actions-bar:empty {
	display: none;
}

/* ───────── Day Block (.myg-diet-day) ───────── */

.myg-diet-day {
	border: 1px solid var(--myg-border-color, #e0e0e0);
	border-radius: 10px;
	margin-bottom: 16px;
	background: #fff;
	overflow: hidden;
}

/* Day Header */
.myg-diet-day-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 10px 14px;
	background: #f8f8f8;
	border-bottom: 1px solid var(--myg-border-color, #e0e0e0);
}

.myg-diet-day-header__left {
	display: flex;
	align-items: center;
	gap: 8px;
}

.myg-diet-day-header__title {
	font-size: 16px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.5px;
}

/* ───────── Shared Macro Badges (day & meal headers) ───────── */

.myg-diet-macros {
	display: flex;
	align-items: center;
	gap: 6px;
	margin-left: 8px;
	flex-wrap: wrap;
}

.myg-diet-macro {
	display: inline-block;
	font-size: 12px;
	font-weight: 600;
	padding: 2px 8px;
	border-radius: 4px;
	white-space: nowrap;
	line-height: 1.4;
}

.myg-diet-macro--kcal {
	background: #fff8e1;
	color: #f57f17;
}

.myg-diet-macro--protein {
	background: #e3f2fd;
	color: #1565c0;
}

.myg-diet-macro--carbs {
	background: #fff3e0;
	color: #e65100;
}

.myg-diet-macro--fat {
	background: #fce4ec;
	color: #c62828;
}

.myg-diet-day-header__actions {
	display: flex;
	align-items: center;
	gap: 2px;
}

/* Day Meals Container */
.myg-diet-day__meals {
	padding: 12px 14px;
}

/* Day Footer */
.myg-diet-day-footer {
	padding: 10px 14px;
	border-top: 1px solid var(--myg-border-color, #e0e0e0);
}

/* ───────── Meal Block (.myg-diet-meal) ───────── */

.myg-diet-meal {
	border: 1px solid #eee;
	border-radius: 8px;
	margin-bottom: 10px;
	background: #fdfdfd;
	overflow: hidden;
}

.myg-diet-meal__header {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 4px;
	padding: 8px 12px;
	border-bottom: 1px solid #eee;
	background: #fafafa;
}

.myg-diet-meal__name {
	font-size: 14px;
	font-weight: 600;
	border: 1px solid transparent;
	border-radius: 3px;
	padding: 2px 6px;
	background: transparent;
	min-width: 100px;
}

.myg-diet-meal__name:focus {
	outline: none;
	border-color: var(--myg-primary-color, #ff8630);
	background: #fff;
}

.myg-diet-meal__actions {
	display: flex;
	align-items: center;
	gap: 2px;
	margin-left: auto;
}

.myg-diet-meal__body {
	padding: 8px 12px;
}

/* ───────── Option Tabs (Editor) ───────── */

.myg-diet-meal__tabs {
	display: flex;
	gap: 0;
	border-bottom: 2px solid #e0e0e0;
	margin-bottom: 0;
}

.myg-diet-tab {
	padding: 6px 16px;
	border: none;
	background: none;
	cursor: pointer;
	font-size: 13px;
	font-weight: 600;
	color: #999;
	border-bottom: 2px solid transparent;
	margin-bottom: -2px;
	transition: color 0.15s, border-color 0.15s;
}

.myg-diet-tab:hover {
	color: #666;
}

.myg-diet-tab--active {
	color: var(--myg-primary-color, #ff8630);
	border-bottom-color: var(--myg-primary-color, #ff8630);
}

.myg-diet-tab--empty {
	color: #ccc;
}

.myg-diet-tab--empty.myg-diet-tab--active {
	color: var(--myg-primary-color, #ff8630);
	border-bottom-color: var(--myg-primary-color, #ff8630);
}

/* ───────── Option Block (.myg-diet-option) ───────── */

/* A option - Primary Card */
.myg-diet-option--primary {
	margin-bottom: 8px;
	padding: 10px;
	border-radius: 8px;
	background: #fff;
	border: 2px solid var(--myg-primary-color, #ff8630);
}

/* B/C option - Secondary Card */
.myg-diet-option--secondary {
	margin-bottom: 8px;
	padding: 8px;
	border-radius: 6px;
	background: #f5f5f5;
	border: 1px solid #ddd;
}

/* Header row */
.myg-diet-option__header {
	display: flex;
	align-items: center;
	gap: 6px;
	flex-wrap: wrap;
}

/* Show bottom margin only when body is visible */
.myg-diet-option:not(.myg-diet-option--collapsed) .myg-diet-option__header {
	margin-bottom: 6px;
}

/* Toggle button (chevron) */
.myg-diet-option__toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	padding: 0;
	border: none;
	background: none;
	cursor: pointer;
	flex-shrink: 0;
	color: #999;
	transition: transform 0.2s;
}

.myg-diet-option__toggle:hover {
	color: #555;
}

.myg-diet-option__chevron {
	font-size: 10px;
	line-height: 1;
	transition: transform 0.2s;
}

/* Chevron rotated when collapsed */
.myg-diet-option--collapsed .myg-diet-option__chevron {
	transform: rotate(-90deg);
}

/* Label */
.myg-diet-option--primary .myg-diet-option__label {
	font-size: 13px;
	font-weight: 700;
	color: var(--myg-primary-color, #ff8630);
}

.myg-diet-option--secondary .myg-diet-option__label {
	font-size: 12px;
	font-weight: 600;
	color: #888;
}

/* Inline macros in header */
.myg-diet-option__macros {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 11px;
	color: #888;
	margin-left: 4px;
}

.myg-diet-option__macro-kcal {
	font-weight: 600;
	color: #555;
}

/* Actions */
.myg-diet-option__actions {
	display: flex;
	align-items: center;
	gap: 4px;
	margin-left: auto;
}

/* Collapsible body */
.myg-diet-option__body {
	/* Visible by default */
}

.myg-diet-option--collapsed .myg-diet-option__body {
	display: none;
}

.myg-diet-option__items {
	display: flex;
	flex-direction: column;
	gap: 4px;
}

/* Responsive: stack header on small screens */
@media (max-width: 480px) {
	.myg-diet-option__macros {
		flex-basis: 100%;
		order: 10;
		margin-left: 30px;
	}
}

/* ───────── Item Row ───────── */

.myg-mealplan-item {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 4px 8px;
	border-radius: 4px;
	background: #fff;
	border: 1px solid #eee;
	font-size: 13px;
}

.myg-mealplan-item__info {
	display: flex;
	align-items: center;
	gap: 8px;
	flex: 1;
	min-width: 0;
}

.myg-mealplan-item__name {
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.myg-mealplan-item__name--recipe,
a.myg-mealplan-item__name--recipe {
	color: var(--myg-primary-color, #ff8630);
	text-decoration: underline;
	cursor: pointer;
}

a.myg-mealplan-item__name--recipe:hover {
	color: var(--myg-primary-hover, #e5751a);
}

.myg-mealplan-item__qty {
	color: #888;
	white-space: nowrap;
	font-size: 12px;
}

.myg-mealplan-item__kcal {
	color: #888;
	white-space: nowrap;
	font-size: 12px;
}

.myg-mealplan-item__type {
	font-size: 11px;
	padding: 1px 6px;
	border-radius: 3px;
	background: #e8f5e9;
	color: #388e3c;
	white-space: nowrap;
}

.myg-mealplan-item__type--recipe {
	background: #fff3e0;
	color: #e65100;
}

.myg-mealplan-item__edit {
	padding: 2px 6px;
	border: none;
	background: none;
	cursor: pointer;
	font-size: 14px;
	opacity: 0.6;
}

.myg-mealplan-item__edit:hover {
	opacity: 1;
}

.myg-mealplan-item__delete {
	padding: 2px 6px;
	border: none;
	background: none;
	cursor: pointer;
	color: #bbb;
	font-size: 14px;
}

.myg-mealplan-item__delete:hover {
	color: #d32f2f;
}


/* ───────── Picker Modal (hidden by default) ───────── */

.myg-mealplan-picker {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 10000;
	align-items: center;
	justify-content: center;
}

.myg-mealplan-picker.active {
	display: flex;
}

.myg-mealplan-picker__backdrop {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(0, 0, 0, 0.5);
}

.myg-mealplan-picker__content {
	position: relative;
	width: 90%;
	max-width: 520px;
	max-height: 80vh;
	background: #fff;
	border-radius: 12px;
	box-shadow: 0 8px 32px rgba(0,0,0,0.2);
	display: flex;
	flex-direction: column;
	overflow: hidden;
}

.myg-mealplan-picker__header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 14px 18px;
	border-bottom: 1px solid #eee;
}

.myg-mealplan-picker__title {
	font-size: 17px;
	font-weight: 600;
	margin: 0;
}

.myg-mealplan-picker__close {
	padding: 4px 8px;
	border: none;
	background: none;
	font-size: 20px;
	cursor: pointer;
	color: #999;
}

.myg-mealplan-picker__close:hover {
	color: #333;
}

.myg-mealplan-picker__tabs {
	display: flex;
	border-bottom: 1px solid #eee;
}

.myg-mealplan-picker__tab {
	flex: 1;
	padding: 10px 16px;
	border: none;
	background: none;
	font-size: 14px;
	cursor: pointer;
	color: #888;
	border-bottom: 2px solid transparent;
	transition: color 0.15s, border-color 0.15s;
}

.myg-mealplan-picker__tab:hover {
	color: var(--myg-text-color, #333);
}

.myg-mealplan-picker__tab.active {
	color: var(--myg-primary-color, #ff8630);
	border-bottom-color: var(--myg-primary-color, #ff8630);
}

.myg-mealplan-picker__search-wrap {
	padding: 12px 18px;
}

.myg-mealplan-picker__search {
	width: 100%;
	padding: 10px 14px;
	border: 1px solid #ddd;
	border-radius: 8px;
	font-size: 14px;
	box-sizing: border-box;
}

.myg-mealplan-picker__search:focus {
	outline: none;
	border-color: var(--myg-primary-color, #ff8630);
}

.myg-mealplan-picker__search-wrap--hidden {
	display: none;
}

.myg-mealplan-picker__panel {
	display: none;
	flex: 1;
	overflow-y: auto;
	min-height: 150px;
	max-height: 50vh;
}

.myg-mealplan-picker__panel.active {
	display: block;
}

.myg-mealplan-picker__results,
.myg-mealplan-picker__panel-list {
	padding: 0 18px 12px;
}

.myg-mealplan-picker__loading,
.myg-mealplan-picker__no-results {
	text-align: center;
	padding: 20px;
	color: #888;
	font-size: 14px;
}

.myg-mealplan-picker__result {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 10px 12px;
	border-radius: 6px;
	cursor: pointer;
	transition: background 0.1s;
}

.myg-mealplan-picker__result:hover {
	background: #f5f5f5;
}

.myg-mealplan-picker__result-info {
	flex: 1;
	min-width: 0;
}

.myg-mealplan-picker__result-name {
	font-size: 14px;
	font-weight: 500;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.myg-mealplan-picker__result-meta {
	font-size: 12px;
	color: #888;
	margin-top: 2px;
}

.myg-mealplan-picker__result-macros {
	font-size: 11px;
	color: #999;
	margin-top: 2px;
}

/* ───────── Recipe thumbnail ───────── */

.myg-mealplan-picker__result-thumb {
	width: var(--myg-picker-thumb-size, 48px);
	height: var(--myg-picker-thumb-size, 48px);
	flex-shrink: 0;
	margin-right: 10px;
	border-radius: var(--myg-border-radius-sm, 4px);
	overflow: hidden;
	background: var(--myg-bg-muted, #f8f9fa);
}

.myg-mealplan-picker__result-thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.myg-mealplan-picker__result-add {
	padding: 4px 12px;
	border: 1px solid var(--myg-primary-color, #ff8630);
	border-radius: var(--myg-border-radius-sm, 4px);
	background: none;
	color: var(--myg-primary-color, #ff8630);
	font-size: var(--myg-picker-add-size, 18px);
	font-weight: bold;
	cursor: pointer;
	line-height: 1;
	flex-shrink: 0;
	transition: background var(--myg-transition-fast, 0.15s), color var(--myg-transition-fast, 0.15s);
}

.myg-mealplan-picker__result-add:hover {
	background: var(--myg-primary-color, #ff8630);
	color: #fff;
}

/* ───────── Favorites section (products tab) ───────── */

.myg-mealplan-picker__favorites-section {
	padding: 0 12px 8px;
	border-bottom: 1px solid #eee;
	margin-bottom: 4px;
}

.myg-mealplan-picker__favorites-title {
	font-size: 11px;
	font-weight: 700;
	color: #888;
	letter-spacing: 0.05em;
	padding: 8px 0 4px;
}

.myg-mealplan-picker__result--favorite {
	display: flex;
	align-items: center;
}

.myg-mealplan-picker__result-kcal {
	font-size: var(--myg-font-size-sm, 13px);
	font-weight: 600;
	color: var(--myg-primary-color, #ff8630);
	white-space: nowrap;
	margin-left: auto;
	margin-right: 8px;
}

.myg-mealplan-picker__result-delete {
	background: none;
	border: none;
	color: var(--myg-text-light, #bbb);
	font-size: var(--myg-picker-icon-size, 16px);
	cursor: pointer;
	padding: 4px 6px;
	line-height: 1;
	border-radius: var(--myg-border-radius-sm, 4px);
	flex-shrink: 0;
	transition: color var(--myg-transition-fast, 0.15s), background var(--myg-transition-fast, 0.15s);
}

.myg-mealplan-picker__result-delete:hover {
	color: var(--myg-danger-color, #e74c3c);
	background: rgba(231, 76, 60, 0.08);
}

.myg-mealplan-picker__result-edit {
	background: none;
	border: none;
	color: var(--myg-text-light, #bbb);
	font-size: var(--myg-picker-icon-size, 16px);
	cursor: pointer;
	padding: 4px 6px;
	line-height: 1;
	border-radius: var(--myg-border-radius-sm, 4px);
	flex-shrink: 0;
	transition: color var(--myg-transition-fast, 0.15s), background var(--myg-transition-fast, 0.15s);
}

.myg-mealplan-picker__result-edit:hover {
	color: var(--myg-primary-color, #ff8630);
	background: rgba(var(--myg-primary-rgb, 255, 134, 48), 0.08);
}

/* ───────── Save as Meal Modal ───────── */

.myg-mealplan-save-meal-modal {
	display: none;
	position: fixed;
	top: 0; left: 0; right: 0; bottom: 0;
	z-index: 10002;
	align-items: center;
	justify-content: center;
}

.myg-mealplan-save-meal-modal.active {
	display: flex;
}

.myg-mealplan-save-meal-modal__backdrop {
	position: absolute;
	top: 0; left: 0; right: 0; bottom: 0;
	background: rgba(0,0,0,0.5);
}

.myg-mealplan-save-meal-modal__content {
	position: relative;
	background: #fff;
	border-radius: 12px;
	padding: 20px;
	width: 90%;
	max-width: 400px;
	box-shadow: 0 8px 32px rgba(0,0,0,0.2);
}

.myg-mealplan-save-meal-modal__content h3 {
	margin: 0 0 8px;
	font-size: 1.1em;
}

.myg-mealplan-save-meal-modal__desc {
	font-size: 0.85em;
	color: #666;
	margin: 0 0 12px;
}

.myg-mealplan-save-meal-modal__preview {
	font-size: 0.9em;
	font-weight: 600;
	color: var(--myg-primary-color, #ff8630);
	margin-bottom: 12px;
}

.myg-mealplan-save-meal-modal__field {
	margin-bottom: 16px;
}

.myg-mealplan-save-meal-modal__field label {
	display: block;
	font-size: 0.85em;
	font-weight: 600;
	margin-bottom: 4px;
	color: #555;
}

.myg-mealplan-save-meal-modal__name {
	width: 100%;
	padding: 8px 12px;
	border: 1px solid #ddd;
	border-radius: 8px;
	font-size: 0.95em;
	box-sizing: border-box;
}

.myg-mealplan-save-meal-modal__actions {
	display: flex;
	gap: 8px;
	justify-content: flex-end;
}

/* Toast */
.myg-diet-editor__toast {
	position: fixed;
	bottom: 20px;
	left: 50%;
	transform: translateX(-50%) translateY(100px);
	background: #333;
	color: #fff;
	padding: 10px 20px;
	border-radius: 8px;
	font-size: 0.9em;
	z-index: 10003;
	opacity: 0;
	transition: transform 0.3s, opacity 0.3s;
	pointer-events: none;
}

.myg-diet-editor__toast.active {
	transform: translateX(-50%) translateY(0);
	opacity: 1;
}

/* ───────── Edit Saved Meal Modal ───────── */

.myg-mealplan-edit-sm {
	position: fixed;
	top: 0; left: 0; right: 0; bottom: 0;
	z-index: 10002;
	display: flex;
	align-items: center;
	justify-content: center;
}

.myg-mealplan-edit-sm__backdrop {
	position: absolute;
	top: 0; left: 0; right: 0; bottom: 0;
	background: rgba(0,0,0,0.5);
}

.myg-mealplan-edit-sm__content {
	position: relative;
	background: #fff;
	border-radius: 12px;
	padding: 20px;
	width: 90%;
	max-width: 480px;
	max-height: 85vh;
	overflow-y: auto;
	box-shadow: 0 8px 32px rgba(0,0,0,0.2);
}

.myg-mealplan-edit-sm__title {
	margin: 0 0 12px;
	font-size: 1.1em;
}

.myg-mealplan-edit-sm__field {
	margin-bottom: 12px;
}

.myg-mealplan-edit-sm__field label {
	display: block;
	font-size: 0.85em;
	font-weight: 600;
	margin-bottom: 4px;
	color: #555;
}

.myg-mealplan-edit-sm__name {
	width: 100%;
	padding: 8px 12px;
	border: 1px solid #ddd;
	border-radius: 8px;
	font-size: 0.95em;
	box-sizing: border-box;
}

.myg-mealplan-edit-sm__summary {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	padding: 8px 12px;
	margin: 8px 0 4px;
	background: #f5f7fa;
	border-radius: 8px;
	font-size: 0.88em;
}

.myg-mealplan-edit-sm__summary-kcal {
	font-weight: 700;
	color: var(--myg-primary-color, #ff8630);
}

.myg-mealplan-edit-sm__summary-macros {
	color: #555;
}

.myg-mealplan-edit-sm__items {
	max-height: 250px;
	overflow-y: auto;
	margin: 12px 0;
}

.myg-mealplan-edit-sm__item {
	display: flex;
	align-items: center;
	padding: 8px 10px;
	border-bottom: 1px solid #eee;
	gap: 8px;
}

.myg-mealplan-edit-sm__item-info {
	flex: 1;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.myg-mealplan-edit-sm__item-name {
	font-size: 0.95em;
	font-weight: 500;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.myg-mealplan-edit-sm__item-macros {
	font-size: 0.78em;
	color: #888;
}

.myg-mealplan-edit-sm__item-controls {
	display: flex;
	align-items: center;
	gap: 4px;
	flex-shrink: 0;
}

.myg-mealplan-edit-sm__item-qty {
	min-width: 36px;
	padding: 4px 6px;
	font-size: 0.85em;
	font-weight: 600;
	text-align: center;
}

.myg-mealplan-edit-sm__item-unit {
	font-size: 0.82em;
	color: #666;
	min-width: 20px;
}

.myg-mealplan-edit-sm__item-edit {
	width: 28px;
	height: 28px;
	border: none;
	border-radius: 50%;
	background: var(--myg-primary-color, #ff8630);
	color: #fff;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	font-size: 0.85em;
}

.myg-mealplan-edit-sm__item-edit:hover { opacity: 0.85; }

.myg-mealplan-edit-sm__item-remove {
	width: 28px;
	height: 28px;
	border: none;
	border-radius: 50%;
	background: #e74c3c;
	color: #fff;
	font-size: 1.2em;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	line-height: 1;
}

.myg-mealplan-edit-sm__item-remove:hover { background: #d32f2f; }

.myg-mealplan-edit-sm__empty {
	text-align: center;
	color: #999;
	padding: 16px 0;
	font-size: 0.9em;
}

.myg-mealplan-edit-sm__search {
	margin: 8px 0 12px;
}

.myg-mealplan-edit-sm__search-input {
	width: 100%;
	padding: 8px 12px;
	border: 1px solid #ddd;
	border-radius: 8px;
	font-size: 0.95em;
	box-sizing: border-box;
}

.myg-mealplan-edit-sm__search-results {
	max-height: 250px;
	overflow-y: auto;
	border: 1px solid #ddd;
	border-top: none;
	border-radius: 0 0 8px 8px;
}

.myg-mealplan-edit-sm__search-results:empty { display: none; }

.myg-mealplan-edit-sm__search-results .myg-search-card {
	border-bottom: 1px solid #eee;
}

.myg-mealplan-edit-sm__search-result {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 8px 12px;
	cursor: pointer;
	transition: background 0.15s;
}

.myg-mealplan-edit-sm__search-result:hover {
	background: rgba(255, 134, 48, 0.06);
}

.myg-mealplan-edit-sm__search-result-name {
	flex: 1;
	font-size: 0.9em;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.myg-mealplan-edit-sm__search-result-action {
	font-size: 0.82em;
	color: var(--myg-primary-color, #ff8630);
	margin-left: 8px;
	white-space: nowrap;
	font-weight: 600;
}

.myg-mealplan-edit-sm__no-results {
	padding: 12px;
	text-align: center;
	color: #999;
	font-size: 0.9em;
}

.myg-mealplan-edit-sm__actions {
	display: flex;
	gap: 8px;
	justify-content: flex-end;
	margin-top: 12px;
}

/* ───────── Quantity Modal (hidden by default) ───────── */

.myg-mealplan-qty-modal {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 10001;
	align-items: center;
	justify-content: center;
}

.myg-mealplan-qty-modal.active {
	display: flex;
}

.myg-mealplan-qty-modal__backdrop {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(0, 0, 0, 0.5);
}

.myg-mealplan-qty-modal__content {
	position: relative;
	width: 90%;
	max-width: 360px;
	padding: 24px;
	background: #fff;
	border-radius: 12px;
	box-shadow: 0 8px 32px rgba(0,0,0,0.2);
}

.myg-mealplan-qty-modal__name {
	font-size: 16px;
	font-weight: 600;
	margin: 0 0 16px;
}

.myg-mealplan-qty-modal__input {
	display: flex;
	gap: 8px;
	margin-bottom: 16px;
}

.myg-mealplan-qty-modal__quantity {
	flex: 1;
	padding: 10px 12px;
	border: 1px solid #ddd;
	border-radius: 6px;
	font-size: 16px;
	text-align: center;
}

.myg-mealplan-qty-modal__quantity:focus {
	outline: none;
	border-color: var(--myg-primary-color, #ff8630);
}

.myg-mealplan-qty-modal__unit {
	padding: 10px 12px;
	border: 1px solid #ddd;
	border-radius: 6px;
	font-size: 14px;
	min-width: 80px;
}

.myg-mealplan-qty-modal__preview {
	display: flex;
	gap: 12px;
	padding: 10px;
	background: #f8f8f8;
	border-radius: 6px;
	margin-bottom: 16px;
	font-size: 13px;
	justify-content: center;
}

.myg-mealplan-qty-modal__preview-item {
	text-align: center;
}

.myg-mealplan-qty-modal__preview-value {
	font-weight: 600;
	display: block;
}

.myg-mealplan-qty-modal__preview-label {
	color: #888;
	font-size: 11px;
}

.myg-mealplan-qty-modal__actions {
	display: flex;
	gap: 8px;
	justify-content: flex-end;
}

/* ───────── Correction link in qty modal ───────── */

.myg-mealplan-qty-modal__correction {
	text-align: center;
	margin-bottom: 16px;
}

.myg-mealplan-qty-modal__correction-link {
	font-size: 13px;
	color: var(--myg-primary-color, #ff8630);
	text-decoration: underline;
	cursor: pointer;
}

.myg-mealplan-qty-modal__correction-link:hover {
	color: var(--myg-primary-hover, #e5751a);
}

/* ───────── Servings Modal ───────── */

.myg-mealplan-servings-modal {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 10001;
	align-items: center;
	justify-content: center;
}

.myg-mealplan-servings-modal.active {
	display: flex;
}

.myg-mealplan-servings-modal__backdrop {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(0, 0, 0, 0.5);
}

.myg-mealplan-servings-modal__content {
	position: relative;
	width: 90%;
	max-width: 360px;
	padding: 24px;
	background: #fff;
	border-radius: 12px;
	box-shadow: 0 8px 32px rgba(0,0,0,0.2);
}

.myg-mealplan-servings-modal__title {
	font-size: 17px;
	font-weight: 600;
	margin: 0 0 12px;
	text-align: center;
}

.myg-mealplan-servings-modal__info {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 16px;
}

.myg-mealplan-servings-modal__name {
	font-weight: 500;
	font-size: 14px;
}

.myg-mealplan-servings-modal__total {
	font-size: 13px;
	color: #888;
}

.myg-mealplan-servings-modal__input {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	margin-bottom: 16px;
}

.myg-mealplan-servings-modal__value {
	width: 80px;
	padding: 8px;
	border: 1px solid #ddd;
	border-radius: 6px;
	font-size: 16px;
	text-align: center;
}

.myg-mealplan-servings-modal__value:focus {
	outline: none;
	border-color: var(--myg-primary-color, #ff8630);
}

.myg-mealplan-servings-modal__preview {
	text-align: center;
	padding: 10px;
	background: #f8f8f8;
	border-radius: 6px;
	margin-bottom: 16px;
}

.myg-mealplan-servings-modal__kcal {
	font-weight: 600;
	font-size: 15px;
}

.myg-mealplan-servings-modal__actions {
	display: flex;
	gap: 8px;
	justify-content: flex-end;
}

/* ───────── Saved Meal Modal ───────── */

.myg-mealplan-saved-meal-modal {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 10001;
	align-items: center;
	justify-content: center;
}

.myg-mealplan-saved-meal-modal.active {
	display: flex;
}

.myg-mealplan-saved-meal-modal__backdrop {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(0, 0, 0, 0.5);
}

.myg-mealplan-saved-meal-modal__content {
	position: relative;
	width: 90%;
	max-width: 420px;
	max-height: 80vh;
	padding: 24px;
	background: #fff;
	border-radius: 12px;
	box-shadow: 0 8px 32px rgba(0,0,0,0.2);
	overflow-y: auto;
}

.myg-mealplan-saved-meal-modal__name {
	font-size: 16px;
	font-weight: 600;
	margin: 0 0 12px;
}

.myg-mealplan-saved-meal-modal__macros {
	display: flex;
	gap: 12px;
	padding: 8px;
	background: #f8f8f8;
	border-radius: 6px;
	margin-bottom: 12px;
	font-size: 13px;
	justify-content: center;
}

.myg-mealplan-saved-meal-modal__multiplier {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 12px;
}

.myg-mealplan-saved-meal-modal__multiplier label {
	font-size: 14px;
	font-weight: 500;
}

.myg-mealplan-saved-meal-modal__mult-value {
	width: 60px;
	padding: 6px;
	border: 1px solid #ddd;
	border-radius: 6px;
	font-size: 14px;
	text-align: center;
}

.myg-mealplan-saved-meal-modal__mult-value:focus {
	outline: none;
	border-color: var(--myg-primary-color, #ff8630);
}

.myg-mealplan-saved-meal-modal__select-all {
	display: block;
	font-weight: 600;
	font-size: 14px;
	margin-bottom: 8px;
	padding-bottom: 8px;
	border-bottom: 1px solid #eee;
	cursor: pointer;
}

.myg-mealplan-saved-meal-modal__items {
	margin-bottom: 16px;
}

.myg-mealplan-saved-meal-modal__item {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 6px 0;
	font-size: 14px;
	cursor: pointer;
}

.myg-mealplan-saved-meal-modal__item-name {
	flex: 1;
}

.myg-mealplan-saved-meal-modal__item-kcal {
	color: #888;
	font-size: 13px;
}

.myg-mealplan-saved-meal-modal__actions {
	display: flex;
	gap: 8px;
	justify-content: flex-end;
}

/* ───────── Custom Food Modal ───────── */

.myg-mealplan-custom-modal {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 10001;
	align-items: center;
	justify-content: center;
}

.myg-mealplan-custom-modal.active {
	display: flex;
}

.myg-mealplan-custom-modal__backdrop {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(0, 0, 0, 0.5);
}

.myg-mealplan-custom-modal__content {
	position: relative;
	width: 90%;
	max-width: 420px;
	padding: 24px;
	background: #fff;
	border-radius: 12px;
	box-shadow: 0 8px 32px rgba(0,0,0,0.2);
}

.myg-mealplan-custom-modal__content h3 {
	font-size: 17px;
	font-weight: 600;
	margin: 0 0 16px;
}

.myg-mealplan-custom-modal__form {
	margin-bottom: 16px;
}

.myg-mealplan-custom-modal__field {
	margin-bottom: 10px;
}

.myg-mealplan-custom-modal__field label {
	display: block;
	font-size: 13px;
	font-weight: 500;
	margin-bottom: 4px;
}

.myg-mealplan-custom-modal__field input,
.myg-mealplan-custom-modal__field select {
	width: 100%;
	padding: 8px 10px;
	border: 1px solid #ddd;
	border-radius: 6px;
	font-size: 14px;
	box-sizing: border-box;
}

.myg-mealplan-custom-modal__field input:focus,
.myg-mealplan-custom-modal__field select:focus {
	outline: none;
	border-color: var(--myg-primary-color, #ff8630);
}

.myg-mealplan-custom-modal__field-row {
	display: flex;
	gap: 10px;
}

.myg-mealplan-custom-modal__field-row .myg-mealplan-custom-modal__field {
	flex: 1;
}

.myg-mealplan-custom-modal__actions {
	display: flex;
	gap: 8px;
	justify-content: flex-end;
}

/* ───────── Panel empty/create button ───────── */

.myg-mealplan-picker__panel-empty {
	text-align: center;
	padding: 20px;
	color: #888;
	font-size: 14px;
}

.myg-mealplan-picker__create-btn {
	display: block;
	width: calc(100% - 36px);
	margin: 8px 18px;
	padding: 10px;
	border: 2px dashed #ddd;
	border-radius: 8px;
	background: none;
	color: var(--myg-primary-color, #ff8630);
	font-size: 14px;
	font-weight: 500;
	cursor: pointer;
	transition: border-color 0.15s, background 0.15s;
}

.myg-mealplan-picker__create-btn:hover {
	border-color: var(--myg-primary-color, #ff8630);
	background: #fff8f0;
}

/* ───────── Toast (hidden by default) ───────── */

.myg-mealplan-toast {
	display: none;
	position: fixed;
	bottom: 24px;
	left: 50%;
	transform: translateX(-50%);
	padding: 10px 20px;
	background: #333;
	color: #fff;
	border-radius: 8px;
	font-size: 14px;
	z-index: 10002;
	box-shadow: 0 4px 12px rgba(0,0,0,0.3);
}

/* ───────── Public View ───────── */

.myg-mealplan-public {
	max-width: 900px;
	margin: 0 auto;
	padding: 24px 16px;
	font-family: var(--myg-font-family, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif);
	color: var(--myg-text-color, #333);
}

.myg-mealplan-public__header {
	text-align: center;
	margin-bottom: 24px;
	padding-bottom: 16px;
	border-bottom: 2px solid var(--myg-primary-color, #ff8630);
}

.myg-mealplan-public__title {
	font-size: 24px;
	font-weight: 700;
	margin: 0 0 8px;
}

.myg-mealplan-public__description {
	font-size: 15px;
	color: #666;
	margin: 0 0 8px;
}

.myg-mealplan-public__meta {
	font-size: 14px;
	color: #888;
	margin: 0;
}

.myg-mealplan-public__footer {
	text-align: center;
	margin-top: 32px;
	padding-top: 16px;
	border-top: 1px solid var(--myg-border-color, #e0e0e0);
	font-size: 13px;
	color: #999;
}

.myg-mealplan-public__footer a {
	color: var(--myg-primary-color, #ff8630);
	text-decoration: none;
}

/* Read-only meal name in public view */
.myg-mealplan-meal__name-text {
	font-size: 14px;
	font-weight: 600;
	padding: 2px 6px;
}

/* Day header with inline macros */
.myg-mealplan-day__header {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 6px;
	padding: 10px 12px;
	background: #fafafa;
	border-bottom: 2px solid var(--myg-primary-color, #ff8630);
	margin-bottom: 8px;
}

.myg-mealplan-day__title {
	font-size: 16px;
	font-weight: 700;
	text-transform: uppercase;
}

.myg-mealplan-day__macros {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 11px;
	color: #888;
	margin-left: 8px;
}

.myg-mealplan-day__macro-kcal {
	font-weight: 600;
	color: #555;
}

/* Meal header with inline macros */
.myg-mealplan-meal__header {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 4px;
	padding: 8px 12px;
	border-bottom: 1px solid #eee;
	background: #fafafa;
}

.myg-mealplan-meal__header-macros {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 11px;
	color: #888;
	margin-left: 4px;
}

.myg-mealplan-meal__header-macro-kcal {
	font-weight: 600;
	color: #555;
}

/* Option with toggle/chevron/macros/collapsed */
.myg-mealplan-option {
	margin-bottom: 6px;
	padding: 8px;
	border-radius: 6px;
	border: 1px solid #eee;
	background: #fff;
}

.myg-mealplan-option--b { background: #f5f5f5; }
.myg-mealplan-option--c { background: #f5f5f5; }

.myg-mealplan-option__header {
	display: flex;
	align-items: center;
	gap: 6px;
	flex-wrap: wrap;
}

.myg-mealplan-option:not(.myg-mealplan-option--collapsed) .myg-mealplan-option__header {
	margin-bottom: 6px;
}

.myg-mealplan-option__toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	padding: 0;
	border: none;
	background: none;
	cursor: pointer;
	color: #999;
	transition: transform 0.2s;
}

.myg-mealplan-option__toggle:hover { color: #555; }

.myg-mealplan-option__chevron {
	font-size: 10px;
	line-height: 1;
	transition: transform 0.2s;
}

.myg-mealplan-option--collapsed .myg-mealplan-option__chevron {
	transform: rotate(-90deg);
}

.myg-mealplan-option__label {
	font-size: 13px;
	font-weight: 600;
}

.myg-mealplan-option__macros {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 11px;
	color: #888;
	margin-left: 4px;
}

.myg-mealplan-option__macro-kcal {
	font-weight: 600;
	color: #555;
}

.myg-mealplan-option--collapsed .myg-mealplan-option__items {
	display: none;
}

/* ───────── Share Info Box (Editor) ───────── */

.myg-mealplan-share {
	margin-top: 16px;
	margin-bottom: 0;
	padding: 12px 16px;
	border: 1px solid var(--myg-border-color, #e0e0e0);
	border-radius: 8px;
	background: #fafafa;
}

.myg-mealplan-share__link-row {
	display: flex;
	align-items: center;
	gap: 10px;
	flex-wrap: wrap;
	margin-bottom: 12px;
}

.myg-mealplan-share__label {
	font-weight: 600;
	color: var(--myg-text-color, #333);
}

.myg-mealplan-share__link {
	flex: 1;
	min-width: 0;
	padding: 6px 10px;
	border: 1px solid #ddd;
	border-radius: 4px;
	font-size: 13px;
	background: #fff;
	color: var(--myg-text-color, #333);
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.myg-mealplan-share__copied {
	font-size: 13px;
	color: #388e3c;
	display: none;
}

.myg-mealplan-share__buttons {
	display: flex;
	align-items: center;
	gap: 8px;
	flex-wrap: wrap;
	margin-bottom: 12px;
	padding-top: 12px;
	border-top: 1px solid var(--myg-border-color, #e0e0e0);
}

.myg-mealplan-share__social-btn {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 8px 14px;
	border-radius: 20px;
	font-size: 13px;
	font-weight: 500;
	text-decoration: none;
	color: white;
	transition: transform 0.2s, box-shadow 0.2s;
}

.myg-mealplan-share__social-btn:hover {
	transform: translateY(-2px);
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
	color: white;
}

.myg-mealplan-share__social-btn svg {
	flex-shrink: 0;
}

.myg-mealplan-share__social-btn--whatsapp {
	background: #25D366;
}

.myg-mealplan-share__social-btn--messenger {
	background: #0084FF;
}

.myg-mealplan-share__social-btn--viber {
	background: #7360F2;
}

.myg-mealplan-share__social-btn--email {
	background: #666;
}

.myg-mealplan-share__disable-row {
	padding-top: 12px;
	border-top: 1px solid var(--myg-border-color, #e0e0e0);
}

@media (max-width: 600px) {
	.myg-mealplan-share__link-row,
	.myg-mealplan-share__buttons {
		flex-direction: column;
		align-items: flex-start;
	}

	.myg-mealplan-share__link {
		width: 100%;
	}
}

/* ───────── PDF Export Panel ───────── */

.myg-mealplan-pdf-wrap {
	margin-bottom: 12px;
}

.myg-mealplan-pdf-panel {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 10000;
	display: flex;
	align-items: center;
	justify-content: center;
}

.myg-mealplan-pdf-panel__backdrop {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(0, 0, 0, 0.5);
}

.myg-mealplan-pdf-panel__content {
	position: relative;
	width: 90%;
	max-width: 480px;
	max-height: 80vh;
	background: #fff;
	border-radius: 12px;
	box-shadow: 0 8px 32px rgba(0,0,0,0.2);
	display: flex;
	flex-direction: column;
	overflow: hidden;
}

.myg-mealplan-pdf-panel__header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 14px 18px;
	border-bottom: 1px solid #eee;
}

.myg-mealplan-pdf-panel__title {
	font-size: 17px;
	font-weight: 600;
	margin: 0;
}

.myg-mealplan-pdf-panel__close {
	padding: 4px 8px;
	border: none;
	background: none;
	font-size: 20px;
	cursor: pointer;
	color: #999;
}

.myg-mealplan-pdf-panel__close:hover {
	color: #333;
}

.myg-mealplan-pdf-panel__body {
	flex: 1;
	overflow-y: auto;
	padding: 14px 18px;
}

.myg-mealplan-pdf-panel__select-all {
	display: block;
	font-weight: 600;
	margin-bottom: 12px;
	padding-bottom: 8px;
	border-bottom: 1px solid #eee;
	cursor: pointer;
}

.myg-mealplan-pdf-panel__day {
	margin-bottom: 10px;
}

.myg-mealplan-pdf-panel__day > label {
	display: block;
	margin-bottom: 4px;
	cursor: pointer;
}

.myg-mealplan-pdf-panel__meal {
	display: block;
	margin-left: 24px;
	margin-bottom: 2px;
	cursor: pointer;
	color: #555;
}

.myg-mealplan-pdf-panel__actions {
	display: flex;
	justify-content: flex-end;
	gap: 8px;
	padding: 12px 18px;
	border-top: 1px solid #eee;
}

/* ───────── List Picker (inside PDF/Shopping panel) ───────── */

.myg-mealplan-pdf-panel__list-picker {
	margin-bottom: 14px;
	padding-bottom: 12px;
	border-bottom: 1px solid #eee;
}

.myg-mealplan-pdf-panel__list-picker-label {
	font-size: 14px;
	font-weight: 600;
	margin-bottom: 8px;
	color: var(--myg-text-color, #333);
}

.myg-mealplan-pdf-panel__list-option {
	display: flex;
	align-items: center;
	gap: 6px;
	padding: 8px 10px;
	margin-bottom: 4px;
	border-radius: 6px;
	border: 1px solid #eee;
	background: #fafafa;
	cursor: pointer;
	font-size: 14px;
	transition: border-color 0.15s, background 0.15s;
}

.myg-mealplan-pdf-panel__list-option:hover {
	border-color: #ccc;
	background: #f5f5f5;
}

.myg-mealplan-pdf-panel__list-option--active {
	border-color: var(--myg-primary-color, #ff8630);
	background: #fff8f0;
}

.myg-mealplan-pdf-panel__list-option--active:hover {
	border-color: var(--myg-primary-color, #ff8630);
	background: #fff8f0;
}

.myg-mealplan-pdf-panel__list-count {
	font-size: 12px;
	color: #888;
}

.myg-mealplan-pdf-panel__new-name-wrap {
	margin-top: 4px;
	margin-bottom: 4px;
	padding-left: 24px;
}

.myg-mealplan-pdf-panel__new-name {
	width: 100%;
	padding: 6px 10px;
	border: 1px solid #ddd;
	border-radius: 6px;
	font-size: 14px;
	box-sizing: border-box;
}

.myg-mealplan-pdf-panel__new-name:focus {
	outline: none;
	border-color: var(--myg-primary-color, #ff8630);
}

/* ───────── Day Accordion (Editor) ───────── */

.myg-diet-day-header {
	cursor: pointer;
}

.myg-diet-day-header__toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	padding: 0;
	border: none;
	background: none;
	cursor: pointer;
	flex-shrink: 0;
	color: #999;
}

.myg-diet-day-header__toggle:hover {
	color: #555;
}

.myg-diet-day-header__chevron {
	font-size: 10px;
	line-height: 1;
	transition: transform 0.2s;
}

.myg-diet-day--collapsed .myg-diet-day-header__chevron {
	transform: rotate(-90deg);
}

.myg-diet-day--collapsed .myg-diet-day__meals,
.myg-diet-day--collapsed .myg-diet-day-footer {
	display: none;
}

.myg-diet-day--collapsed .myg-diet-day-header {
	border-bottom: none;
}

/* ───────── Day Accordion (Public) ───────── */

.myg-mealplan-day__header {
	cursor: pointer;
}

.myg-mealplan-day__toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	padding: 0;
	border: none;
	background: none;
	cursor: pointer;
	flex-shrink: 0;
	color: #999;
}

.myg-mealplan-day__toggle:hover {
	color: #555;
}

.myg-mealplan-day__chevron {
	font-size: 10px;
	line-height: 1;
	transition: transform 0.2s;
}

.myg-mealplan-day--collapsed .myg-mealplan-day__chevron {
	transform: rotate(-90deg);
}

.myg-mealplan-day--collapsed .myg-mealplan-day__body {
	display: none;
}

.myg-mealplan-day--collapsed .myg-mealplan-day__header {
	border-bottom-color: transparent;
	margin-bottom: 0;
}

/* ───────── Option Tabs (Public View) ───────── */

.myg-mealplan-meal__tabs {
	display: flex;
	gap: 0;
	border-bottom: 2px solid #e0e0e0;
	margin-bottom: 0;
}

.myg-mealplan-tab {
	padding: 6px 16px;
	border: none;
	background: none;
	cursor: pointer;
	font-size: 13px;
	font-weight: 600;
	color: #999;
	border-bottom: 2px solid transparent;
	margin-bottom: -2px;
	transition: color 0.15s, border-color 0.15s;
}

.myg-mealplan-tab:hover {
	color: #666;
}

.myg-mealplan-tab--active {
	color: var(--myg-primary-color, #ff8630);
	border-bottom-color: var(--myg-primary-color, #ff8630);
}

/* ───────── Responsive ───────── */

@media (max-width: 600px) {
	.myg-mealplan {
		padding: 8px;
	}

	.myg-mealplan-list__header {
		flex-direction: column;
		gap: 12px;
		align-items: stretch;
	}

	.myg-diet-editor__header {
		flex-wrap: wrap;
	}

	.myg-diet-editor__title {
		font-size: 17px;
	}

	.myg-diet-macros {
		flex-basis: 100%;
		margin-left: 0;
		margin-top: 4px;
		gap: 4px;
	}

	.myg-mealplan-item__kcal {
		display: none;
	}

	.myg-mealplan-item__info {
		gap: 4px;
	}

	.myg-mealplan-picker__content {
		width: 95%;
		max-height: 90vh;
	}

	.myg-mealplan-picker__tab {
		padding: 10px 8px;
		font-size: 12px;
	}

	.myg-mealplan-qty-modal__content {
		width: 95%;
	}

	.myg-mealplan-servings-modal__content,
	.myg-mealplan-saved-meal-modal__content,
	.myg-mealplan-custom-modal__content {
		width: 95%;
	}

	.myg-mealplan-custom-modal__field-row {
		flex-direction: column;
		gap: 0;
	}

	.myg-mealplan-public {
		padding: 12px 8px;
	}

	.myg-mealplan-public__title {
		font-size: 20px;
	}

	.myg-mealplan-day__macros {
		flex-basis: 100%;
		margin-left: 0;
		margin-top: 2px;
	}

	.myg-mealplan-meal__header-macros {
		flex-basis: 100%;
		order: 10;
		margin-left: 0;
		margin-top: 4px;
	}

	.myg-mealplan-tab {
		padding: 6px 10px;
		font-size: 12px;
	}

	.myg-mealplan-share__row {
		flex-direction: column;
		align-items: stretch;
	}
}
