/* =========================================================
   IDD Menu Traiteur — LAYOUT v3 (pattern plan-salle)
   ========================================================= */

#idd-menu-traiteur.idd-mt-root { --idd-mt-tools-w: 320px; }
#idd-menu-traiteur[hidden] { display: none !important; }
#idd-menu-traiteur .idd-tool-toolbar [hidden],
#idd-menu-traiteur .idd-tool-panel [hidden] { display: none !important; }
#idd-menu-traiteur > .idd-mt__layout > .idd-mt__sidebar { display: none !important; }

.idd-mt-root .idd-tool-toolbar {
	position: fixed; left: 0; right: 0;
	bottom: env(safe-area-inset-bottom, 0px);
	z-index: 40; margin: 0; border-radius: 0;
	border-left: 0; border-right: 0; border-bottom: 0;
	box-shadow: 0 -6px 24px -10px rgba(29,24,25,0.12);
	overflow-x: auto; overflow-y: hidden;
}

@media (max-width: 1023px) {
	#idd-menu-traiteur.idd-mt-root .idd-mt__layout {
		display: block;
		padding-bottom: calc(120px + env(safe-area-inset-bottom, 0px));
	}
	.idd-mt-tools-collapse, .idd-mt-tools-expand { display: none !important; }
}

@media (min-width: 1024px) {
	#idd-menu-traiteur.idd-mt-root {
		display: grid;
		grid-template-columns: var(--idd-mt-tools-w) 1fr;
		grid-template-areas: "tools workspace";
		min-height: calc(100vh - var(--app-header-h, 60px));
		gap: 0;
	}
	#idd-menu-traiteur.idd-mt-root.is-tools-collapsed { grid-template-columns: 0 1fr; }

	#idd-menu-traiteur.idd-mt-root .idd-mt__layout {
		grid-area: workspace;
		display: block;
		min-width: 0;
		padding: clamp(20px, 2.4vw, 36px) clamp(20px, 3vw, 40px);
		padding-bottom: calc(125px + env(safe-area-inset-bottom, 0px));
	}

	#idd-menu-traiteur .idd-tool-panel {
		grid-area: tools;
		position: sticky !important;
		top: calc(var(--app-header-h, 60px) + var(--app-adminbar-h, 0px));
		right: auto !important; bottom: auto !important; left: auto !important;
		width: auto !important;
		height: calc(100vh - var(--app-header-h, 60px) - var(--app-adminbar-h, 0px) - 64px - env(safe-area-inset-bottom, 0px)) !important;
		min-height: 0 !important;
		max-height: calc(100vh - var(--app-header-h, 60px) - var(--app-adminbar-h, 0px) - 64px - env(safe-area-inset-bottom, 0px));
		overflow: hidden; transform: none !important; visibility: visible !important;
		z-index: 1;
		background: var(--app-surface, #fff) !important;
		border-top-left-radius: 0 !important; border-top-right-radius: 0 !important;
		box-shadow: none !important;
		border-left: 0; border-right: 1px solid var(--app-line, #E2D9CC);
		display: flex; flex-direction: column;
		transition: margin-left .25s, opacity .25s;
		padding-bottom: 0 !important;
	}
	#idd-menu-traiteur .idd-tool-panel::before { display: none; }
	#idd-menu-traiteur .idd-tool-panel__header { flex-shrink: 0; }
	#idd-menu-traiteur .idd-tool-panel__body { flex: 1 1 0; min-height: 0; overflow-y: auto; overscroll-behavior: contain; }
	#idd-menu-traiteur .idd-tool-panel__footer { flex-shrink: 0; }

	#idd-menu-traiteur.is-tools-collapsed .idd-tool-panel {
		margin-left: calc(-1 * var(--idd-mt-tools-w));
		opacity: 0; pointer-events: none;
	}

	#idd-menu-traiteur .idd-tool-toolbar__burger,
	#idd-menu-traiteur .idd-tool-panel__close,
	#idd-menu-traiteur .idd-tool-panel-backdrop { display: none !important; }

	.idd-mt-tools-collapse {
		display: inline-flex; appearance: none; background: transparent;
		border: 0; color: var(--app-muted, #718096); cursor: pointer;
		width: 32px; height: 32px; align-items: center; justify-content: center;
		border-radius: 8px;
	}
	.idd-mt-tools-collapse:hover { background: var(--app-surface-2, #F4EFE6); color: var(--app-ink, #2D3748); }
	.idd-mt-tools-collapse svg { width: 16px; height: 16px; }

	.idd-mt-tools-expand {
		display: none; position: fixed;
		left: calc(var(--app-sidebar-w, 260px) + 0px);
		top: 50%; transform: translateY(-50%);
		background: var(--app-brand, #B5637A); color: #fff;
		border: 0; width: 28px; height: 56px;
		border-radius: 0 8px 8px 0; cursor: pointer;
		z-index: 20; align-items: center; justify-content: center;
	}
	#idd-menu-traiteur.idd-mt-root.is-tools-collapsed .idd-mt-tools-expand { display: inline-flex; }
	.idd-mt-tools-expand svg { width: 14px; height: 14px; }
}

@media print {
	#idd-menu-traiteur.idd-mt-root { display: block !important; grid-template-columns: none !important; padding: 0 !important; }
	#idd-menu-traiteur .idd-tool-toolbar, #idd-menu-traiteur .idd-tool-panel,
	#idd-menu-traiteur .idd-tool-panel-backdrop, .idd-mt-tools-expand { display: none !important; }
	#idd-menu-traiteur .idd-mt__layout { padding: 0 !important; }
}
