body.eat-page {
	--eat-ink: #2f3430;
	--eat-muted: #7b766b;
	--eat-paper: #fffaf1;
	--eat-paper-warm: #fff3df;
	--eat-cream: #fbf2e3;
	--eat-mint: #8bcdb8;
	--eat-mint-dark: #347866;
	--eat-matcha: #dce8b8;
	--eat-coral: #ed9275;
	--eat-tomato: #de765f;
	--eat-blue: #a8c8d5;
	--eat-honey: #f4d184;
	--eat-pink: #f4c2be;
	--eat-line: rgba(98, 84, 63, 0.16);
	--eat-soft-line: rgba(98, 84, 63, 0.1);
	--eat-shadow: 0 16px 36px rgba(88, 70, 46, 0.11);
	--eat-radius: 8px;
}

body.eat-page * {
	box-sizing: border-box;
}

body.eat-page {
	margin: 0;
	min-width: 320px;
	min-height: 100vh;
	color: var(--eat-ink);
	background:
		linear-gradient(90deg, rgba(255, 255, 255, 0.24) 1px, transparent 1px),
		linear-gradient(180deg, rgba(255, 255, 255, 0.2) 1px, transparent 1px),
		var(--eat-cream);
	background-size: 22px 22px;
	font-family: "Inter", "Noto Sans SC", "Microsoft YaHei", Arial, sans-serif;
	line-height: 1.5;
	letter-spacing: 0;
}

body.eat-page button,
body.eat-page select,
body.eat-page textarea {
	font: inherit;
}

body.eat-page button {
	cursor: pointer;
}

body.eat-page button:disabled {
	cursor: not-allowed;
}

.eat-topbar {
	position: sticky;
	top: 10px;
	z-index: 10;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	width: min(1040px, calc(100% - 36px));
	min-height: 64px;
	margin: 16px auto 12px;
	padding: 0 12px 0 20px;
	border: 1px solid hsl(0 0% 100% / 0.78);
	border-radius: 999px;
	background: hsl(42 50% 98% / 0.82);
	box-shadow: 0 20px 55px hsl(222 28% 12% / 0.1);
	backdrop-filter: blur(22px) saturate(1.2);
	-webkit-backdrop-filter: blur(22px) saturate(1.2);
}

.eat-back-link {
	display: inline-flex;
	align-items: center;
	min-height: 40px;
	padding: 0 12px;
	border-radius: 999px;
	color: var(--eat-ink);
	text-decoration: none;
	font-size: 0.98rem;
	font-weight: 840;
	white-space: nowrap;
	transition: color 180ms ease, background 180ms ease, transform 180ms ease;
}

.eat-back-link:hover,
.eat-back-link:focus-visible {
	background: hsl(158 45% 32% / 0.1);
	color: var(--eat-mint-dark);
	transform: translateY(-1px);
}

.eat-topbar-note,
.eat-kicker,
.eat-panel-label {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin: 0;
	color: var(--eat-mint-dark);
	font-size: 0.78rem;
	font-weight: 900;
	letter-spacing: 0;
}

.eat-topbar-note {
	min-height: 38px;
	padding: 8px 12px;
	border: 1px solid hsl(158 45% 32% / 0.18);
	border-radius: 999px;
	background: hsl(158 42% 72% / 0.16);
	color: var(--eat-mint-dark);
	white-space: nowrap;
}

.eat-shell {
	width: min(1040px, calc(100% - 36px));
	margin: 0 auto;
	padding: 16px 0 54px;
}

.eat-hero {
	position: relative;
	overflow: hidden;
	margin: 6px 0 18px;
	padding: 22px;
	border: 1px solid var(--eat-line);
	border-radius: var(--eat-radius);
	background:
		linear-gradient(135deg, rgba(255, 255, 255, 0.78), rgba(255, 246, 229, 0.72)),
		var(--eat-paper);
	box-shadow: var(--eat-shadow);
}

.eat-hero::before {
	content: "";
	position: absolute;
	top: -1px;
	right: 22px;
	width: 72px;
	height: 18px;
	border: 1px solid rgba(98, 84, 63, 0.12);
	border-top: 0;
	border-radius: 0 0 6px 6px;
	background: rgba(244, 209, 132, 0.42);
	transform: rotate(1deg);
}

.eat-hero::after {
	content: "🍜";
	position: absolute;
	right: 24px;
	bottom: 18px;
	color: rgba(222, 118, 95, 0.38);
	font-size: 3rem;
	line-height: 1;
	pointer-events: none;
}

.eat-hero h1 {
	position: relative;
	margin: 9px 0 8px;
	font-size: 3.65rem;
	line-height: 1;
	letter-spacing: 0;
}

.eat-lead {
	position: relative;
	max-width: 540px;
	margin: 0;
	color: #695f51;
	font-size: 1.02rem;
	font-weight: 700;
}

.eat-hero-notes {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 18px;
}

.eat-current-row {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 16px;
}

.eat-current-row span {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	min-height: 36px;
	padding: 7px 10px;
	border: 1px solid rgba(52, 120, 102, 0.16);
	border-radius: var(--eat-radius);
	background: rgba(234, 246, 232, 0.76);
	color: #45665d;
	font-size: 0.9rem;
	font-weight: 900;
}

.eat-hero-actions {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1.2fr) minmax(0, 0.95fr);
	gap: 10px;
	max-width: 520px;
	margin-top: 18px;
}

.eat-intro-card {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 10px;
	align-items: center;
	max-width: 620px;
	margin-top: 14px;
	padding: 11px 12px;
	border: 1px dashed rgba(52, 120, 102, 0.22);
	border-radius: var(--eat-radius);
	background: rgba(255, 250, 241, 0.76);
	color: #5e6356;
	box-shadow: 0 10px 22px rgba(98, 84, 63, 0.07);
}

.eat-intro-card[hidden] {
	display: none;
}

.eat-intro-copy {
	display: grid;
	gap: 2px;
	min-width: 0;
	font-size: 0.88rem;
	font-weight: 750;
}

.eat-intro-copy strong {
	color: #3f6f62;
	font-size: 0.92rem;
	font-weight: 900;
}

.eat-intro-close {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 34px;
	padding: 7px 10px;
	border: 1px solid rgba(52, 120, 102, 0.18);
	border-radius: var(--eat-radius);
	background: rgba(234, 246, 232, 0.88);
	color: #347866;
	font-size: 0.82rem;
	font-weight: 900;
	white-space: nowrap;
	transition: transform 160ms ease, border-color 160ms ease, background 160ms ease, color 160ms ease, box-shadow 160ms ease;
}

.eat-hero-notes span {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 8px 10px;
	border: 1px solid var(--eat-soft-line);
	border-radius: var(--eat-radius);
	background: rgba(255, 255, 255, 0.66);
	color: #60594d;
	font-size: 0.9rem;
	font-weight: 800;
}

.eat-mood-chip {
	box-shadow: 0 8px 16px rgba(98, 84, 63, 0.06);
}

.eat-mood-chip:nth-child(1) {
	background: rgba(255, 244, 221, 0.82);
}

.eat-mood-chip:nth-child(2) {
	background: rgba(235, 247, 242, 0.84);
}

.eat-mood-chip:nth-child(3) {
	background: rgba(247, 239, 217, 0.86);
}

.eat-tool-grid {
	display: grid;
	grid-template-columns: minmax(0, 0.92fr) minmax(340px, 1.08fr);
	gap: 18px;
	align-items: start;
}

body.eat-page.eat-options-collapsed .eat-tool-grid {
	grid-template-columns: minmax(0, 720px);
	justify-content: center;
}

.eat-panel,
.eat-ticket,
.eat-dialog-panel {
	border: 1px solid var(--eat-line);
	border-radius: var(--eat-radius);
	background: rgba(255, 250, 241, 0.94);
	box-shadow: var(--eat-shadow);
}

.eat-control-panel {
	position: relative;
	padding: 18px;
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.72), transparent 54%),
		rgba(255, 250, 241, 0.94);
}

.eat-control-panel::after {
	content: "🍪";
	position: absolute;
	top: 16px;
	right: 18px;
	color: rgba(244, 194, 190, 0.75);
	font-size: 1.35rem;
	pointer-events: none;
}

.eat-result-panel {
	position: sticky;
	top: 76px;
	padding: 0;
	border: 0;
	background: transparent;
	box-shadow: none;
}

.eat-panel-head {
	display: grid;
	gap: 6px;
	margin-bottom: 18px;
	padding-right: 38px;
}

.eat-panel-copy {
	margin: 0;
	color: var(--eat-muted);
	font-size: 0.9rem;
	font-weight: 800;
}

.eat-panel-head h2,
.eat-empty-state h2,
.eat-result h2,
.eat-dialog-head h2 {
	margin: 0;
	font-size: 1.24rem;
	line-height: 1.2;
	letter-spacing: 0;
}

.eat-field-group {
	display: grid;
	gap: 10px;
	margin-top: 18px;
}

.eat-field-label,
.eat-form-label {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin: 0;
	color: #5d5d50;
	font-size: 0.88rem;
	font-weight: 900;
}

.eat-segmented,
.eat-time-grid,
.eat-chip-grid,
.eat-actions,
.eat-result-actions,
.eat-dialog-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.eat-segmented {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.eat-segmented-three {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.eat-choice-grid {
	display: grid;
	gap: 8px;
}

.eat-choice-grid-two {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.eat-choice-grid-three {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.eat-choice-grid-meal {
	grid-template-columns: repeat(auto-fit, minmax(92px, 1fr));
}

.eat-segment,
.eat-chip,
.eat-choice-card,
.eat-button,
.eat-quick-button,
.eat-link-button,
.eat-close-button,
.eat-dialog-text-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	min-height: 42px;
	border: 1px solid var(--eat-line);
	border-radius: var(--eat-radius);
	background: rgba(255, 255, 255, 0.72);
	color: var(--eat-ink);
	font-weight: 900;
	letter-spacing: 0;
	transition: transform 160ms ease, border-color 160ms ease, background 160ms ease, color 160ms ease, box-shadow 160ms ease;
}

.eat-segment,
.eat-chip {
	padding: 9px 11px;
	box-shadow: 0 7px 14px rgba(98, 84, 63, 0.06);
}

.eat-choice-card {
	min-width: 0;
	min-height: 46px;
	padding: 9px 10px;
	border-color: rgba(98, 84, 63, 0.13);
	background: rgba(255, 249, 239, 0.86);
	box-shadow: 0 7px 15px rgba(98, 84, 63, 0.06);
}

.eat-choice-card:nth-child(3n + 1):not(.is-active) {
	background: rgba(255, 244, 224, 0.88);
}

.eat-choice-card:nth-child(3n + 2):not(.is-active) {
	background: rgba(238, 248, 239, 0.88);
}

.eat-choice-card:nth-child(3n + 3):not(.is-active) {
	background: rgba(239, 247, 250, 0.9);
}

.eat-choice-icon {
	flex: 0 0 auto;
	font-size: 1rem;
	line-height: 1;
}

.eat-choice-title {
	min-width: 0;
	overflow-wrap: anywhere;
}

.eat-chip-grid .eat-chip,
.eat-time-grid .eat-chip {
	flex: 1 1 calc(50% - 8px);
}

.eat-segment:hover,
.eat-chip:hover,
.eat-choice-card:hover,
.eat-button:hover,
.eat-quick-button:hover,
.eat-link-button:hover,
.eat-close-button:hover,
.eat-intro-close:hover,
.eat-dialog-text-button:hover {
	transform: translateY(-1px);
}

.eat-segment:focus-visible,
.eat-chip:focus-visible,
.eat-choice-card:focus-visible,
.eat-button:focus-visible,
.eat-quick-button:focus-visible,
.eat-link-button:focus-visible,
.eat-close-button:focus-visible,
.eat-intro-close:focus-visible,
.eat-dialog-text-button:focus-visible,
.eat-back-link:focus-visible,
.eat-select:focus-visible,
.eat-textarea:focus-visible {
	outline: 3px solid rgba(139, 205, 184, 0.48);
	outline-offset: 2px;
}

.eat-segment.is-active,
.eat-chip.is-active,
.eat-choice-card.is-active {
	border-color: rgba(52, 120, 102, 0.28);
	background: #eaf6e8;
	color: #2c6d5d;
	box-shadow: inset 0 -3px 0 rgba(139, 205, 184, 0.34), 0 9px 18px rgba(52, 120, 102, 0.1);
}

.eat-chip:nth-child(3n + 1):not(.is-active) {
	background: rgba(255, 243, 223, 0.86);
}

.eat-chip:nth-child(3n + 2):not(.is-active) {
	background: rgba(239, 247, 234, 0.86);
}

.eat-chip:nth-child(3n + 3):not(.is-active) {
	background: rgba(240, 247, 250, 0.86);
}

.eat-preference-section {
	gap: 12px;
}

.eat-filter-group {
	gap: 9px;
}

.eat-filter-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(118px, 1fr));
	gap: 8px;
}

.eat-filter-grid-location {
	grid-template-columns: repeat(auto-fit, minmax(108px, 1fr));
}

.eat-filter-chip {
	min-height: 56px;
}

.eat-preference-head {
	display: grid;
	gap: 3px;
}

.eat-preference-subcopy {
	margin: 0;
	color: #7a7165;
	font-size: 0.8rem;
	font-weight: 700;
}

.eat-preference-groups {
	display: grid;
	gap: 12px;
}

.eat-preference-group {
	display: grid;
	gap: 8px;
	padding: 10px;
	border: 1px solid rgba(98, 84, 63, 0.1);
	border-radius: var(--eat-radius);
	background: rgba(255, 252, 245, 0.62);
}

.eat-preference-group-title {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin: 0;
	color: #667367;
	font-size: 0.78rem;
	font-weight: 900;
}

.eat-preference-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(116px, 1fr));
	gap: 8px;
}

.eat-preference-card {
	position: relative;
	display: flex;
	align-items: center;
	min-width: 0;
	min-height: 58px;
	padding: 9px 30px 9px 10px;
	border: 1px solid rgba(98, 84, 63, 0.14);
	border-radius: var(--eat-radius);
	background: rgba(255, 249, 239, 0.9);
	color: #3f433d;
	text-align: left;
	box-shadow: 0 8px 18px rgba(98, 84, 63, 0.07);
	transition: transform 160ms ease, border-color 160ms ease, background 160ms ease, color 160ms ease, box-shadow 160ms ease;
}

.eat-preference-card:nth-child(3n + 1):not(.is-active) {
	background: rgba(255, 244, 224, 0.92);
}

.eat-preference-card:nth-child(3n + 2):not(.is-active) {
	background: rgba(238, 248, 239, 0.9);
}

.eat-preference-card:nth-child(3n + 3):not(.is-active) {
	background: rgba(239, 247, 250, 0.9);
}

.eat-preference-card:hover {
	transform: translateY(-1px);
	border-color: rgba(52, 120, 102, 0.26);
	box-shadow: 0 11px 20px rgba(98, 84, 63, 0.1);
}

.eat-preference-card:focus-visible {
	outline: 3px solid rgba(139, 205, 184, 0.52);
	outline-offset: 2px;
}

.eat-preference-card.is-active {
	border-color: rgba(52, 120, 102, 0.38);
	background: linear-gradient(135deg, rgba(232, 247, 235, 0.96), rgba(255, 241, 211, 0.9));
	color: #285f53;
	box-shadow: inset 0 -3px 0 rgba(139, 205, 184, 0.42), 0 12px 22px rgba(52, 120, 102, 0.12);
}

.eat-preference-icon {
	flex: 0 0 28px;
	width: 28px;
	font-size: 1.18rem;
	line-height: 1;
	text-align: center;
	filter: saturate(0.95);
}

.eat-preference-card.is-active .eat-preference-icon {
	transform: scale(1.06);
}

.eat-preference-copy {
	display: grid;
	min-width: 0;
	gap: 1px;
}

.eat-preference-title,
.eat-preference-hint {
	display: block;
	overflow-wrap: anywhere;
}

.eat-preference-title {
	font-size: 0.88rem;
	font-weight: 900;
	line-height: 1.2;
}

.eat-preference-hint {
	color: #7d766c;
	font-size: 0.72rem;
	font-weight: 800;
	line-height: 1.25;
}

.eat-preference-card.is-active .eat-preference-hint {
	color: #4f766e;
}

.eat-preference-check {
	position: absolute;
	top: 7px;
	right: 8px;
	display: grid;
	width: 18px;
	height: 18px;
	place-items: center;
	border-radius: 999px;
	background: rgba(52, 120, 102, 0.12);
	color: var(--eat-mint-dark);
	font-size: 0.78rem;
	font-weight: 900;
	line-height: 1;
	opacity: 0;
	transform: scale(0.72);
	transition: transform 160ms ease, opacity 160ms ease;
}

.eat-preference-card.is-active .eat-preference-check {
	opacity: 1;
	transform: scale(1);
}

.eat-preference-summary {
	margin: 0;
	padding: 8px 10px;
	border: 1px dashed rgba(52, 120, 102, 0.2);
	border-radius: var(--eat-radius);
	background: rgba(255, 255, 255, 0.52);
	color: #66705f;
	font-size: 0.8rem;
	font-weight: 800;
}

.eat-actions {
	display: grid;
	grid-template-columns: minmax(0, 1.25fr) minmax(0, 0.85fr);
	margin-top: 22px;
}

.eat-button {
	min-height: 48px;
	padding: 10px 16px;
}

.eat-button-primary {
	border-color: rgba(222, 118, 95, 0.3);
	background: #de765f;
	color: #fffdf8;
	box-shadow: 0 14px 24px rgba(222, 118, 95, 0.2);
}

.eat-button-secondary {
	background: rgba(255, 255, 255, 0.78);
	color: #45665d;
}

.eat-button-secondary.is-active {
	border-color: rgba(52, 120, 102, 0.28);
	background: #eaf6e8;
	color: #2c6d5d;
	box-shadow: inset 0 -3px 0 rgba(139, 205, 184, 0.34);
}

.eat-status {
	min-height: 1.35em;
	margin: 14px 0 0;
	color: var(--eat-muted);
	font-size: 0.9rem;
	font-weight: 800;
}

.eat-status[data-tone="success"] {
	color: var(--eat-mint-dark);
}

.eat-status[data-tone="error"] {
	color: #a34f42;
}

.eat-options-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 18px;
}

.eat-options-actions .eat-button {
	min-height: 44px;
	padding: 11px 16px;
	font-size: 0.92rem;
}

.eat-ticket {
	position: relative;
	min-height: 500px;
	padding: 20px;
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.76), transparent 46%),
		var(--eat-paper);
}

.eat-ticket::before,
.eat-ticket::after {
	content: "";
	position: absolute;
	top: 44px;
	width: 16px;
	height: 16px;
	border-radius: 50%;
	background: var(--eat-cream);
	border: 1px solid var(--eat-line);
}

.eat-ticket::before {
	left: -9px;
}

.eat-ticket::after {
	right: -9px;
}

.eat-empty-state {
	display: grid;
	align-content: center;
	min-height: 446px;
	gap: 10px;
	text-align: left;
}

.eat-empty-icon {
	display: grid;
	place-items: center;
	width: 58px;
	height: 58px;
	border: 1px solid rgba(222, 118, 95, 0.2);
	border-radius: var(--eat-radius);
	background: rgba(244, 209, 132, 0.28);
	font-size: 1.8rem;
	box-shadow: inset 0 -4px 0 rgba(255, 255, 255, 0.42);
}

.eat-empty-state p:last-child {
	margin: 0;
	color: var(--eat-muted);
	font-weight: 700;
}

.eat-result {
	display: grid;
	gap: 14px;
}

.eat-result[hidden],
.eat-empty-state[hidden] {
	display: none;
}

.eat-result-label {
	justify-content: center;
	text-align: center;
}

.eat-result-hero,
.eat-dialog-result-hero {
	display: grid;
	justify-items: center;
	gap: 10px;
	padding: 18px 14px 16px;
	border: 1px solid rgba(98, 84, 63, 0.12);
	border-radius: var(--eat-radius);
	background:
		radial-gradient(circle at 50% 0%, rgba(244, 209, 132, 0.28), transparent 54%),
		rgba(255, 252, 245, 0.78);
	text-align: center;
	box-shadow: inset 0 -4px 0 rgba(255, 255, 255, 0.42);
}

.eat-dialog-result-hero {
	padding: 20px 14px 16px;
	background:
		radial-gradient(circle at 50% 0%, rgba(139, 205, 184, 0.22), transparent 56%),
		rgba(255, 252, 245, 0.84);
}

.eat-result-icon {
	display: grid;
	width: 52px;
	height: 52px;
	place-items: center;
	border: 1px solid rgba(222, 118, 95, 0.2);
	border-radius: 999px;
	background: rgba(255, 243, 223, 0.9);
	font-size: 1.82rem;
	box-shadow: inset 0 -4px 0 rgba(244, 209, 132, 0.24), 0 8px 18px rgba(98, 84, 63, 0.07);
}

.eat-result-name {
	max-width: min(100%, 620px);
	margin: 0;
	color: #2f3430;
	font-size: clamp(2.15rem, 6vw, 3.15rem);
	line-height: 1.05;
	text-align: center;
	overflow-wrap: anywhere;
}

.eat-result-meta,
.eat-tag-list,
.eat-detail-list {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.eat-result-hero .eat-result-meta,
.eat-dialog-result-hero .eat-dialog-summary {
	justify-content: center;
}

.eat-result-meta span,
.eat-tag,
.eat-detail-list div {
	border: 1px solid var(--eat-line);
	border-radius: var(--eat-radius);
	background: rgba(255, 255, 255, 0.66);
}

.eat-result-meta span {
	padding: 7px 10px;
	color: #5f5a50;
	font-size: 0.88rem;
	font-weight: 900;
}

.eat-result-meta .eat-location-line,
.eat-dialog-summary .eat-location-line {
	color: #42655b;
}

.eat-reason {
	margin: 4px 0 0;
	padding: 13px 14px;
	border-left: 4px solid var(--eat-coral);
	border-radius: 0 var(--eat-radius) var(--eat-radius) 0;
	background: rgba(237, 146, 117, 0.12);
	color: #56483e;
	font-weight: 800;
}

.eat-result-reason,
.eat-dialog-reason {
	text-align: center;
}

.eat-result .eat-delivery-info {
	justify-content: center;
}

.eat-tag {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	padding: 6px 9px;
	color: #425c55;
	font-size: 0.82rem;
	font-weight: 900;
}

.eat-tag::before {
	content: "•";
	color: var(--eat-coral);
}

.eat-tag:nth-child(3n + 1) {
	background: rgba(220, 232, 184, 0.48);
}

.eat-tag:nth-child(3n + 2) {
	background: rgba(244, 209, 132, 0.24);
}

.eat-tag:nth-child(3n + 3) {
	background: rgba(168, 200, 213, 0.22);
}

.eat-detail-list {
	margin: 0;
}

.eat-detail-list div {
	flex: 1 1 150px;
	padding: 10px;
}

.eat-detail-list dt {
	color: var(--eat-muted);
	font-size: 0.76rem;
	font-weight: 900;
}

.eat-detail-list dd {
	margin: 4px 0 0;
	font-weight: 900;
}

.eat-note {
	margin: 0;
	color: var(--eat-muted);
	font-size: 0.9rem;
	font-weight: 700;
}

.eat-delivery-info {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 7px;
	margin-top: -2px;
}

.eat-delivery-pill {
	display: inline-flex;
	align-items: center;
	min-height: 30px;
	max-width: 100%;
	padding: 5px 9px;
	border: 1px solid rgba(168, 200, 213, 0.24);
	border-radius: var(--eat-radius);
	background: rgba(240, 247, 250, 0.78);
	color: #506672;
	font-size: 0.82rem;
	font-weight: 900;
	line-height: 1.25;
}

.eat-delivery-pill[data-tone="available"] {
	border-color: rgba(52, 120, 102, 0.2);
	background: rgba(234, 246, 232, 0.82);
	color: #347866;
}

.eat-delivery-pill[data-tone="possible"] {
	border-color: rgba(244, 209, 132, 0.36);
	background: rgba(255, 243, 223, 0.84);
	color: #755d35;
}

.eat-delivery-pill[data-tone="paused"] {
	border-color: rgba(222, 118, 95, 0.24);
	background: rgba(237, 146, 117, 0.12);
	color: #7a5047;
}

.eat-delivery-pill[data-tone="unavailable"] {
	border-color: rgba(98, 84, 63, 0.16);
	background: rgba(255, 255, 255, 0.68);
	color: #6a6258;
}

.eat-delivery-note,
.eat-delivery-platforms {
	margin: 0;
	color: var(--eat-muted);
	font-size: 0.82rem;
	font-weight: 800;
	line-height: 1.45;
}

.eat-delivery-note {
	flex: 1 1 220px;
}

.eat-delivery-platforms {
	flex: 1 1 100%;
	color: #6d746e;
}

.eat-advisory {
	margin: 0;
	padding: 10px 11px;
	border: 1px solid rgba(52, 120, 102, 0.14);
	border-radius: var(--eat-radius);
	background: rgba(234, 246, 232, 0.62);
	color: #51655e;
	font-size: 0.86rem;
	font-weight: 800;
	line-height: 1.45;
}

.eat-advisory[hidden] {
	display: none;
}

.eat-advisory[data-risk="中"] {
	border-color: rgba(244, 209, 132, 0.38);
	background: rgba(255, 243, 223, 0.78);
	color: #755d35;
}

.eat-advisory[data-risk="高"] {
	border-color: rgba(222, 118, 95, 0.28);
	background: rgba(237, 146, 117, 0.13);
	color: #7a5047;
}

.eat-quick-actions {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 8px;
	margin-top: 2px;
}

.eat-quick-button {
	min-height: 40px;
	padding: 8px 9px;
	border-color: rgba(222, 118, 95, 0.18);
	background: rgba(255, 243, 223, 0.74);
	color: #7a584c;
	font-size: 0.88rem;
	box-shadow: 0 7px 14px rgba(98, 84, 63, 0.06);
}

.eat-quick-button:nth-child(2) {
	border-color: rgba(52, 120, 102, 0.16);
	background: rgba(234, 246, 232, 0.76);
	color: #45665d;
}

.eat-quick-button:nth-child(3) {
	border-color: rgba(168, 200, 213, 0.2);
	background: rgba(240, 247, 250, 0.8);
	color: #506672;
}

.eat-result-actions {
	padding-top: 6px;
}

.eat-link-button {
	flex: 1 1 150px;
	min-height: 40px;
	padding: 8px 10px;
	color: #45665d;
	font-size: 0.88rem;
	background: rgba(255, 255, 255, 0.56);
}

body.eat-page.eat-result-dialog-fallback::before {
	content: "";
	position: fixed;
	inset: 0;
	z-index: 90;
	background: rgba(69, 55, 40, 0.22);
	backdrop-filter: blur(5px);
}

.eat-result-dialog {
	width: 100%;
	max-width: 100%;
	height: 100dvh;
	max-height: 100dvh;
	border: 0;
	padding: 0;
	background: transparent;
	color: var(--eat-ink);
}

.eat-result-dialog:not([open]) {
	display: none;
}

.eat-result-dialog[open] {
	position: fixed;
	inset: 0;
	z-index: 100;
	display: grid;
	place-items: center;
	margin: 0;
}

.eat-result-dialog::backdrop {
	background: rgba(69, 55, 40, 0.22);
	backdrop-filter: blur(5px);
}

.eat-result-dialog-panel {
	position: relative;
	display: grid;
	grid-template-rows: auto minmax(220px, 1fr) minmax(86px, auto) auto;
	gap: 14px;
	width: min(460px, calc(100vw - 32px));
	max-height: min(720px, calc(100dvh - 32px));
	overflow: hidden;
	padding: 18px;
	border: 1px solid rgba(98, 84, 63, 0.16);
	border-radius: var(--eat-radius);
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.82), transparent 56%),
		#fff8eb;
	box-shadow: 0 22px 52px rgba(88, 70, 46, 0.18);
}

.eat-result-dialog[open] .eat-result-dialog-panel {
	animation: eat-dialog-rise 180ms ease-out;
}

.eat-result-dialog-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
}

.eat-dialog-result-main {
	display: grid;
	align-items: center;
	min-height: min(45dvh, 340px);
}

.eat-dialog-summary {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 8px;
}

.eat-dialog-detail-scroll {
	display: grid;
	gap: 10px;
	min-height: 0;
	max-height: 24dvh;
	overflow: auto;
	padding-right: 2px;
	scrollbar-width: thin;
}

.eat-dialog-summary span,
.eat-dialog-status {
	border: 1px solid var(--eat-line);
	border-radius: var(--eat-radius);
	background: rgba(255, 255, 255, 0.7);
}

.eat-dialog-summary span {
	padding: 7px 10px;
	color: #5f5a50;
	font-size: 0.88rem;
	font-weight: 900;
}

.eat-dialog-reason {
	margin: 0;
	padding: 12px 13px;
	border-left: 4px solid var(--eat-coral);
	border-radius: 0 var(--eat-radius) var(--eat-radius) 0;
	background: rgba(237, 146, 117, 0.12);
	color: #56483e;
	font-weight: 900;
}

.eat-dialog-tags {
	gap: 7px;
}

.eat-dialog-status {
	display: grid;
	gap: 4px;
	padding: 10px 11px;
}

.eat-dialog-status span {
	color: #2f7f68;
	font-weight: 900;
}

.eat-dialog-status small {
	color: var(--eat-muted);
	font-size: 0.82rem;
	line-height: 1.45;
	font-weight: 700;
}

.eat-result-dialog-actions {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 9px;
	padding-top: 2px;
}

.eat-result-dialog-actions .eat-button {
	width: 100%;
}

.eat-dialog-text-button {
	grid-column: 1 / -1;
	min-height: 40px;
	padding: 8px 10px;
	border-color: transparent;
	background: transparent;
	color: #766f64;
	font-size: 0.9rem;
	font-weight: 900;
}

@keyframes eat-dialog-rise {
	from {
		opacity: 0;
		transform: translateY(10px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

.eat-dialog {
	width: min(520px, calc(100% - 28px));
	border: 0;
	padding: 0;
	background: transparent;
}

.eat-dialog:not([open]) {
	display: none;
}

.eat-dialog::backdrop {
	background: rgba(69, 55, 40, 0.24);
	backdrop-filter: blur(6px);
}

.eat-dialog-panel {
	display: grid;
	gap: 12px;
	padding: 18px;
}

.eat-dialog-head {
	display: flex;
	align-items: start;
	justify-content: space-between;
	gap: 14px;
}

.eat-close-button {
	width: 42px;
	min-width: 42px;
	padding: 0;
	font-size: 1.3rem;
}

.eat-dialog-note {
	margin: 0;
	color: var(--eat-muted);
	font-size: 0.9rem;
	font-weight: 700;
}

.eat-select,
.eat-textarea {
	width: 100%;
	border: 1px solid var(--eat-line);
	border-radius: var(--eat-radius);
	background: rgba(255, 255, 255, 0.76);
	color: var(--eat-ink);
}

.eat-select {
	min-height: 44px;
	padding: 0 12px;
}

.eat-textarea {
	min-height: 106px;
	padding: 11px 12px;
	resize: vertical;
}

.eat-dialog-actions {
	justify-content: flex-end;
	margin-top: 4px;
}

@media (max-width: 820px) {
	.eat-topbar,
	.eat-shell {
		width: min(100% - 24px, 680px);
	}

	.eat-tool-grid {
		grid-template-columns: 1fr;
	}

	body.eat-page.eat-options-collapsed .eat-tool-grid {
		grid-template-columns: 1fr;
	}

	.eat-result-panel {
		position: static;
	}

	.eat-ticket,
	.eat-empty-state {
		min-height: 360px;
	}

	.eat-hero h1 {
		font-size: 3rem;
	}
}

@media (max-width: 480px) {
	.eat-topbar {
		top: 8px;
		min-height: 54px;
		padding: 0 10px 0 14px;
		gap: 8px;
	}

	.eat-back-link {
		min-height: 36px;
		padding-inline: 8px;
		font-size: 0.9rem;
	}

	.eat-topbar-note {
		min-height: 34px;
		padding: 6px 9px;
		font-size: 0.68rem;
	}

	.eat-shell {
		padding-top: 6px;
	}

	.eat-hero {
		padding: 18px 16px;
	}

	.eat-hero h1 {
		font-size: 2.45rem;
	}

	.eat-hero-actions,
	.eat-quick-actions {
		grid-template-columns: 1fr;
	}

	.eat-intro-card {
		grid-template-columns: 1fr;
	}

	.eat-intro-close {
		width: 100%;
	}

	.eat-hero::after {
		right: 14px;
		bottom: 14px;
		font-size: 2.25rem;
	}

	.eat-control-panel,
	.eat-result-panel,
	.eat-ticket {
		padding: 14px;
	}

	.eat-result-panel {
		padding: 0;
	}

	.eat-segmented-three,
	.eat-actions {
		grid-template-columns: 1fr;
	}

	.eat-choice-grid-meal {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.eat-choice-card {
		min-height: 48px;
		padding: 8px 9px;
	}

	.eat-chip-grid .eat-chip,
	.eat-time-grid .eat-chip,
	.eat-button,
	.eat-quick-button,
	.eat-link-button,
	.eat-dialog-text-button {
		flex-basis: 100%;
		width: 100%;
	}

	.eat-preference-group {
		padding: 9px;
	}

	.eat-filter-grid,
	.eat-preference-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.eat-preference-card {
		min-height: 56px;
		padding: 9px 27px 9px 8px;
	}

	.eat-preference-icon {
		flex-basis: 24px;
		width: 24px;
		font-size: 1.06rem;
	}

	.eat-preference-title {
		font-size: 0.82rem;
	}

	.eat-preference-hint,
	.eat-preference-summary {
		font-size: 0.7rem;
	}

	.eat-result-hero,
	.eat-dialog-result-hero {
		padding: 15px 10px 14px;
	}

	.eat-result-icon {
		width: 46px;
		height: 46px;
		font-size: 1.58rem;
	}

	.eat-result-name {
		font-size: 2rem;
	}

	.eat-result-dialog {
		width: 100%;
	}

	.eat-result-dialog-panel {
		padding: 16px;
		grid-template-rows: auto minmax(230px, 1fr) minmax(74px, auto) auto;
		width: calc(100vw - 32px);
		max-height: calc(100dvh - 24px);
	}

	.eat-dialog-result-main {
		min-height: min(42dvh, 300px);
	}

	.eat-dialog-detail-scroll {
		max-height: 20dvh;
	}

	.eat-result-dialog-actions {
		grid-template-columns: 1fr;
	}

	.eat-panel-head {
		padding-right: 32px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.eat-segment,
	.eat-chip,
	.eat-choice-card,
	.eat-preference-card,
	.eat-preference-check,
	.eat-intro-close,
	.eat-button,
	.eat-quick-button,
	.eat-link-button,
	.eat-close-button,
	.eat-dialog-text-button {
		transition: none;
	}

	.eat-segment:hover,
	.eat-chip:hover,
	.eat-choice-card:hover,
	.eat-preference-card:hover,
	.eat-intro-close:hover,
	.eat-button:hover,
	.eat-quick-button:hover,
	.eat-link-button:hover,
	.eat-close-button:hover,
	.eat-dialog-text-button:hover {
		transform: none;
	}

	.eat-result-dialog[open] .eat-result-dialog-panel {
		animation: none;
	}
}

/* Forge redesign system, 2026-06-01 */
body.eat-page{--eat-ink:hsl(222 24% 13%);--eat-muted:hsl(36 12% 43%);--eat-paper:hsl(42 50% 98%);--eat-paper-warm:hsl(38 78% 93%);--eat-cream:hsl(42 48% 95%);--eat-mint:hsl(158 42% 72%);--eat-mint-dark:hsl(158 45% 32%);--eat-matcha:hsl(78 44% 83%);--eat-coral:hsl(16 74% 67%);--eat-tomato:hsl(10 68% 56%);--eat-blue:hsl(205 36% 76%);--eat-honey:hsl(40 82% 70%);--eat-pink:hsl(3 66% 84%);--eat-line:hsl(34 24% 70%/.32);--eat-soft-line:hsl(34 24% 70%/.2);--eat-shadow:0 22px 56px hsl(30 32% 24%/.12);--eat-radius:24px;background:radial-gradient(circle at 10% 8%,hsl(40 82% 70%/.22),transparent 26vw),radial-gradient(circle at 88% 12%,hsl(158 42% 72%/.2),transparent 24vw),linear-gradient(135deg,hsl(42 50% 97%),hsl(38 74% 94%) 62%,hsl(66 42% 92%));background-size:auto;font-family:ForgeDisplay,"Satoshi","Geist","Microsoft YaHei",system-ui,sans-serif;letter-spacing:-.01em}body.eat-page::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,hsl(34 24% 70%/.12) 1px,transparent 1px),linear-gradient(180deg,hsl(34 24% 70%/.1) 1px,transparent 1px);background-size:44px 44px;mask-image:linear-gradient(180deg,#000,transparent 72%)}.eat-topbar-note,.eat-kicker,.eat-panel-label,.eat-field-label,.eat-preference-group-title{font-family:ForgeMono,ui-monospace,monospace;letter-spacing:.08em;text-transform:uppercase}.eat-hero,.eat-panel,.eat-ticket,.eat-dialog-panel,.eat-result-dialog-panel,.eat-intro-card{border-radius:30px;border-color:var(--eat-line);background:hsl(42 50% 98%/.82);box-shadow:var(--eat-shadow);backdrop-filter:blur(16px) saturate(1.08)}.eat-hero{padding:clamp(24px,4vw,40px);min-height:410px;display:grid;align-content:end}.eat-hero::before{right:34px;width:92px;border-radius:0 0 999px 999px}.eat-hero::after{font-size:4.6rem;opacity:.42}.eat-hero h1{font-size:clamp(4rem,13vw,7.8rem);letter-spacing:-.08em;line-height:.86}.eat-lead{font-size:clamp(1.06rem,2vw,1.28rem);line-height:1.62}.eat-current-row span,.eat-mood-chip,.eat-tag-list span,.eat-choice-card,.eat-filter-button,.eat-quick-button{border-radius:999px}.eat-button{border-radius:999px;min-height:48px;font-weight:860}.eat-button-primary{background:var(--eat-ink);border-color:var(--eat-ink);color:hsl(42 50% 98%);box-shadow:0 18px 34px hsl(222 24% 13%/.16)}.eat-button-primary:hover{background:var(--eat-mint-dark);border-color:var(--eat-mint-dark)}.eat-button-secondary,.eat-link-button,.eat-dialog-text-button{background:hsl(42 50% 98%/.62);border-color:var(--eat-line);color:var(--eat-ink)}.eat-tool-grid{gap:18px}.eat-result-name{letter-spacing:-.05em}.eat-result-icon,.eat-empty-icon{border-radius:26px;background:linear-gradient(145deg,var(--eat-paper-warm),hsl(158 42% 72%/.36))}.eat-detail-list,.eat-delivery-info,.eat-dialog-status{border-radius:22px;background:hsl(0 0% 100%/.52)}.eat-select,.eat-textarea{border-radius:18px;border-color:var(--eat-line);background:hsl(0 0% 100%/.62)}@media(max-width:680px){.eat-shell{width:min(100% - 26px,1040px)}.eat-hero-actions{grid-template-columns:1fr}}
