/* 问道餐饮区块。颜色取主题的预设色（没有时用回退值），夜读配色随主题变量变化。 */
.rdn {
	--rdn-line: color-mix(in srgb, currentColor 16%, transparent);
	--rdn-soft: color-mix(in srgb, currentColor 6%, transparent);
	--rdn-muted: color-mix(in srgb, currentColor 62%, transparent);
	--rdn-accent: var(--wp--preset--color--accent-3, var(--wp--preset--color--primary, #a23b22));
}
.rdn-search {
	display: flex;
	flex-wrap: wrap;
	gap: .5rem;
	margin: 0 0 1rem;
}
.rdn-search input[type="search"] {
	flex: 1 1 14rem;
	min-width: 0;
}
.rdn-search input[type="search"],
.rdn-search select {
	padding: .5rem .75rem;
	border: 1px solid var(--rdn-line);
	border-radius: 4px;
	background: transparent;
	color: inherit;
	font: inherit;
}
.rdn-search button {
	cursor: pointer;
}
.rdn-count,
.rdn-note,
.rdn-empty {
	margin: .5rem 0;
	font-size: .875rem;
	color: var(--rdn-muted);
}
.rdn-empty {
	padding: 1rem 1.25rem;
	border: 1px dashed var(--rdn-line);
	border-radius: 6px;
}
.rdn-cards {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(14rem, 1fr));
	gap: 1rem;
	margin: 0;
	padding: 0;
	list-style: none;
}
.rdn-card {
	margin: 0;
	padding: 1rem 1.125rem;
	border: 1px solid var(--rdn-line);
	border-radius: 8px;
	background: var(--rdn-soft);
}
.rdn-card__img {
	display: block;
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	margin: 0 0 .75rem;
	border-radius: 4px;
}
.rdn-card__title {
	margin: 0;
	font-size: 1.0625rem;
	line-height: 1.4;
}
.rdn-card__sub,
.rdn-card__meta,
.rdn-card__chips,
.rdn-card__link {
	margin: .25rem 0 0;
	font-size: .875rem;
}
.rdn-card__sub,
.rdn-card__meta {
	color: var(--rdn-muted);
}
.rdn-card__chips {
	display: flex;
	flex-wrap: wrap;
	gap: .25rem;
	margin-top: .625rem;
}
.rdn-card__link {
	margin-top: .625rem;
}
.rdn-chip {
	display: inline-block;
	padding: .0625rem .5rem;
	border: 1px solid var(--rdn-line);
	border-radius: 999px;
	font-size: .75rem;
	line-height: 1.6;
	white-space: nowrap;
}
.rdn-chip--allergen {
	border-color: color-mix(in srgb, var(--rdn-accent) 45%, transparent);
	color: var(--rdn-accent);
}
.rdn-chip--none {
	color: var(--rdn-muted);
}
.rdn-spicy {
	font-size: .75rem;
	white-space: nowrap;
}
.rdn-tablewrap {
	overflow-x: auto;
}
.rdn-table {
	width: 100%;
	border-collapse: collapse;
	font-size: .9375rem;
}
.rdn-table th,
.rdn-table td {
	padding: .5rem .75rem;
	border-bottom: 1px solid var(--rdn-line);
	text-align: start;
	vertical-align: top;
}
.rdn-table thead th {
	border-bottom-width: 2px;
	font-size: .8125rem;
	font-weight: 600;
	color: var(--rdn-muted);
	white-space: nowrap;
}
.rdn-table tbody th {
	font-weight: 600;
}
.rdn-table td .rdn-chip {
	margin: 0 .25rem .25rem 0;
}
.rdn-num {
	white-space: nowrap;
	font-variant-numeric: tabular-nums;
}
.rdn-pager {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 1rem;
	margin: 1.25rem 0 0;
	font-size: .875rem;
}
.rdn-pager span {
	color: var(--rdn-muted);
}
.rdn-stats__list {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(8rem, 1fr));
	gap: 1rem;
	margin: 0;
}
.rdn-stats__list > div {
	padding: 1rem;
	border: 1px solid var(--rdn-line);
	border-radius: 8px;
	text-align: center;
}
.rdn-stats__list dd {
	margin: 0;
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.2;
	font-variant-numeric: tabular-nums;
	color: var(--rdn-accent);
}
.rdn-stats__list dt {
	font-size: .875rem;
	color: var(--rdn-muted);
}

/* 0.1.4 问道店铺主页 */
.rdn-shop { display: flex; flex-direction: column; padding: 0; overflow: hidden; background: var(--rdn-soft); }
.rdn-shop > :not(.rdn-shop__link) { padding: 0 1.125rem; }
.rdn-shop > :last-child { padding-bottom: 1rem; }
.rdn-shop__link { display: block; color: inherit; text-decoration: none; }
.rdn-shop__link .rdn-card__img { margin: 0 0 .75rem; border-radius: 0; }
.rdn-shop__link .rdn-card__title { padding: 0 1.125rem; }
.rdn-shop__link:hover .rdn-card__title { text-decoration: underline; }
.rdn-shop__ph { display: flex; align-items: center; justify-content: center; aspect-ratio: 16 / 7; font-size: 2rem; background: var(--rdn-soft); border-bottom: 1px solid var(--rdn-line); opacity: .8; }
.rdn-more { margin: 1rem 0 0; text-align: right; }

/* 0.2.0 问道店家专区 */
.rdn-zone { display: grid; gap: 1.25rem; }
.rdn-zone h3 { margin: 0 0 .5rem; }
.rdn-zone h4 { margin: .75rem 0 .25rem; font-size: 1rem; }
.rdn-zone__box, .rdn-zone__welcome { padding: 1rem 1.25rem; border: 1px solid var(--rdn-line); border-radius: 8px; }
.rdn-zone__welcome { background: var(--rdn-soft); }
.rdn-zone__chips, .rdn-zone__acts { display: flex; flex-wrap: wrap; gap: .5rem; margin: .5rem 0 0; }
.rdn-zone__todo ul { margin: 0; padding-left: 1.25rem; }
.rdn-zone__form[hidden] { display: none; }
.rdn-zone__form { display: flex; flex-wrap: wrap; align-items: flex-end; gap: .5rem .75rem; margin: .5rem 0; }
.rdn-zone__form label { display: flex; flex-direction: column; gap: .25rem; font-size: .875rem; flex: 1 1 12rem; min-width: 0; }
.rdn-zone__form label.rdn-zone__check { flex-direction: row; align-items: center; flex: 0 1 auto; }
.rdn-zone__form input:not([type="checkbox"]), .rdn-zone__form select, .rdn-zone__form textarea { padding: .5rem .75rem; border: 1px solid var(--rdn-line); border-radius: 4px; background: transparent; color: inherit; font: inherit; width: 100%; box-sizing: border-box; }
.rdn-zone__form button, .rdn-zone__btn { display: inline-block; padding: .5rem 1rem; border: 1px solid var(--rdn-accent); border-radius: 4px; background: var(--rdn-accent); color: #fff; font: inherit; text-decoration: none; cursor: pointer; }
.rdn-zone__btn--ghost { background: transparent; color: inherit; border-color: var(--rdn-line); }
.rdn-zone__form button:disabled { opacity: .6; cursor: wait; }
.rdn-zone__form .rdn-zone__btn--danger, .rdn-zone__danger summary { color: #b3261e; }
.rdn-zone__form .rdn-zone__btn--danger { background: transparent; border-color: #b3261e; }
.rdn-zone__link { padding: 0; border: 0; background: none; color: var(--rdn-accent); font: inherit; text-decoration: underline; cursor: pointer; }
.rdn-zone__msg { margin: .25rem 0 0; font-size: .875rem; min-height: 1.2em; }
.rdn-zone__msg.is-error { color: #b3261e; }
.rdn-zone__devices { margin: 0; padding-left: 1.25rem; }
.rdn-zone__role--owner { background: var(--rdn-accent); color: #fff; }
.rdn-zone__plans tr.is-current td { font-weight: 600; }
.rdn-zone details { margin: .5rem 0; }
.rdn-zone details > summary { cursor: pointer; font-weight: 600; }
.rdn-card--new { display: flex; align-items: center; justify-content: center; border-style: dashed; }
