.rm-obal { max-width: 780px; margin: 0 auto; }

.rm-navigace {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 1rem;
	margin: 0 0 1.5rem;
	padding: .6rem 1rem;
	background: #f5f2ec;
	border-radius: 8px;
}
.rm-navigace .rm-datum { font-weight: 700; text-transform: capitalize; }
.rm-navigace .rm-sipka { text-decoration: none; white-space: nowrap; }

.rm-menicko {
	margin: 0 0 1.75rem;
	padding: 1rem 1.25rem;
	border: 1px solid #e3ddd2;
	border-radius: 10px;
	background: #fff;
}
.rm-restaurace { margin: 0 0 .5rem; font-size: 1.15rem; }
.rm-restaurace a { text-decoration: none; }
.rm-doba { font-size: .8rem; font-weight: 400; color: #7a7367; margin-left: .5rem; }

.rm-tabulka { width: 100%; border-collapse: collapse; margin: 0; }
.rm-tabulka td { padding: .35rem 0; border: 0; border-bottom: 1px dashed #eae4d9; vertical-align: top; }
.rm-tabulka tr:last-child td { border-bottom: 0; }
.rm-tabulka .rm-cena { text-align: right; white-space: nowrap; font-weight: 600; width: 90px; }
.rm-polevka td { color: #6d675c; }
.rm-detail { font-size: .78rem; color: #9a927f; white-space: nowrap; }
.rm-sekce-label { margin: .75rem 0 .25rem; font-size: 1rem; color: #6d675c; }

.rm-prazdne { color: #7a7367; font-style: italic; }
.rm-info { list-style: none; padding: 0; margin: 1rem 0; }
.rm-info li { margin: .2rem 0; }

@media (max-width: 480px) {
	.rm-navigace { flex-direction: column; gap: .25rem; }
}

/* ---------- Frontend správa pro restauratéry ---------- */

.rmf { max-width: 860px; margin: 0 auto; }

.rmf-hlavicka { display: flex; justify-content: space-between; align-items: baseline; flex-wrap: wrap; gap: .5rem; }
.rmf-hlavicka h2 { margin: 0; }
.rmf-uzivatel { font-size: .85rem; color: #7a7367; }

.rmf-zprava { padding: .5rem .9rem; background: #e8f5e9; border: 1px solid #bbdcbd; border-radius: 8px; }
.rmf-zprava.rmf-varovani { background: #fff7e6; border-color: #eddcb0; }

.rmf-tlacitko {
	display: inline-block; padding: .55rem 1.1rem; background: #2c5f2d; color: #fff !important;
	border: 0; border-radius: 8px; text-decoration: none; font-weight: 600; cursor: pointer; font-size: 1rem;
}
.rmf-tlacitko:hover { background: #234b24; }

.rmf-seznam { list-style: none; padding: 0; margin: 1rem 0; }
.rmf-polozka {
	display: flex; align-items: center; gap: .6rem; flex-wrap: wrap;
	padding: .7rem .9rem; margin: 0 0 .5rem; background: #fff;
	border: 1px solid #e3ddd2; border-radius: 10px;
}
.rmf-polozka.rmf-dnes { border-color: #2c5f2d; box-shadow: 0 0 0 1px #2c5f2d; }
.rmf-nazev { font-weight: 600; text-decoration: none; text-transform: capitalize; flex: 1 1 auto; }

.rmf-badge { font-size: .72rem; padding: .15rem .5rem; border-radius: 99px; white-space: nowrap; }
.rmf-rucne    { background: #ece9e2; color: #57524a; }
.rmf-tabulka  { background: #e3f0e4; color: #2c5f2d; }
.rmf-upraveno { background: #e5ecf6; color: #2b4c7e; }
.rmf-konflikt { background: #fdecd2; color: #9a5b00; }

.rmf-smazat-form { margin: 0; }
.rmf-smazat { background: none; border: 0; cursor: pointer; font-size: 1rem; padding: .2rem; }

.rmf-formular .rmf-pole { display: flex; gap: .8rem; flex-wrap: wrap; align-items: end; margin: 0 0 1rem; }
.rmf-formular label { font-size: .85rem; font-weight: 600; }
.rmf-formular input, .rmf-formular select { padding: .4rem .5rem; border: 1px solid #cfc8ba; border-radius: 6px; font-size: 1rem; max-width: 100%; }
.rmf-formular .rmf-siroke { width: 320px; max-width: 100%; }
.rmf-ulozit { font-size: 1.05rem; }

/* Editor jídel (sdílený s administrací) */
.rm-jidla-editor { width: 100%; border-collapse: collapse; background: #fff; }
.rm-jidla-editor th, .rm-jidla-editor td { padding: .45rem .5rem; text-align: left; vertical-align: top; border-bottom: 1px solid #eee7da; }
.rm-jidla-editor .rm-slozeni select { margin: 0 .15rem .3rem 0; }
.rm-jidla-editor .rm-cislo { font-weight: 700; }

/* Mobil: řádky tabulky jako karty */
@media (max-width: 700px) {
	.rm-jidla-editor thead { display: none; }
	.rm-jidla-editor, .rm-jidla-editor tbody { display: block; }
	.rm-jidla-editor tr {
		display: block; margin: 0 0 .9rem; padding: .6rem .7rem;
		border: 1px solid #e3ddd2; border-radius: 10px;
	}
	.rm-jidla-editor td { display: block; border: 0; padding: .25rem 0; }
	.rm-jidla-editor td[data-label]::before {
		content: attr(data-label); display: block;
		font-size: .75rem; font-weight: 700; color: #7a7367;
	}
	.rm-jidla-editor .rm-slozeni select { width: 100%; margin: 0 0 .35rem; }
	.rm-jidla-editor .rm-slozeni .rm-novy { width: 100% !important; }
	.rmf-formular .rmf-pole label { flex: 1 1 100%; }
	.rmf-formular .rmf-siroke, .rmf-formular input[type="date"] { width: 100%; }
}
