/* Güncel TycoonCore içerik senkronizasyonu: dünya temaları ve gerçek ItemsAdder varlıkları. */
:root {
	--tc-world-agriculture: #829c35;
}

body[data-world="agriculture"], body[data-world-preview="agriculture"] {
	--wx-canvas: #d9e9b5;
	--wx-bottom: #c7a96a;
	--wx-header: #e7efc9;
	--wx-header-2: #c3d990;
	--wx-panel: #f2f7dd;
	--wx-panel-2: #dce8b4;
	--wx-border: #657a32;
	--wx-accent: #829c35;
	--wx-title: #344613;
	--wx-text: #3f4b26;
	--wx-muted: #6d7651;
	--wx-nav-text: #3b4d16;
	--wx-hero: #1c2908;
	--world-paper: #eef4d8;
	--world-deep: #344613;
	--world-accent: #829c35;
	--world-rgb: 130, 156, 53;
	--preview-page: #192d0f;
	--preview-paper: #273e18;
	--preview-accent: #9ac36c;
	--preview-deep: #4c712b;
	--preview-line: #7ba255;
	--canvas-image: url("../img/worlds/agriculture-minecraft-20260713.jpg");
}

html[data-color-theme="dark"] body[data-world="agriculture"],
html[data-color-theme="dark"] body[data-world-preview="agriculture"] {
	--wx-canvas: #101805;
	--wx-bottom: #261d08;
	--wx-header: #172009;
	--wx-header-2: #304010;
	--wx-panel: #1c290d;
	--wx-panel-2: #304018;
	--wx-border: #819b43;
	--wx-accent: #a5c95a;
	--wx-title: #f8fbe9;
	--wx-text: #e8efd3;
	--wx-muted: #bac69b;
	--wx-nav-text: #f1f6dc;
	--wx-hero: #050802;
	--world-paper: #1c290d;
	--world-deep: #f1f6dc;
	--world-accent: #a5c95a;
	--preview-page: #101805;
	--preview-paper: #1c290d;
	--preview-accent: #a5c95a;
	--preview-deep: #304010;
	--preview-line: #819b43;
}

.tc-plugin-item-texture {
	display: block;
	width: 64px;
	height: 64px;
	object-fit: contain;
	image-rendering: pixelated;
}

.tc-item-entry {
	min-width: 0;
	border: 1px solid var(--tc-border, var(--tc-line));
	background: var(--tc-surface-2);
	transition: border-color .18s ease, background-color .18s ease;
}

.tc-item-entry[open] {
	grid-column: 1 / -1;
	border-color: var(--tc-primary);
	background: var(--tc-surface, var(--tc-surface-2));
}

.tc-item-entry > summary {
	list-style: none;
	cursor: pointer;
	user-select: none;
}

.tc-item-entry > summary::-webkit-details-marker { display: none; }

.tc-item-entry .tc-item-card {
	border: 0;
	border-radius: 0;
	background: transparent;
	min-height: 130px;
}

.tc-item-entry .tc-item-card:focus-visible {
	outline: 3px solid var(--tc-primary);
	outline-offset: -3px;
}

.tc-item-card__toggle {
	display: flex;
	align-items: center;
	gap: 6px;
}

.tc-item-card__toggle i { transition: transform .2s ease; }
.tc-item-entry[open] .tc-item-card__toggle i { transform: rotate(180deg); }

.tc-item-detail {
	display: grid;
	grid-template-columns: minmax(0, .85fr) minmax(330px, 1.15fr);
	gap: 18px;
	padding: 18px;
	border-top: 1px solid var(--tc-border, var(--tc-line));
}

.tc-item-detail__copy h4 {
	margin: 4px 0 14px;
	font-size: 1.15rem;
}

.tc-item-fact {
	padding: 11px 0;
	border-top: 1px solid var(--tc-border, var(--tc-line));
}

.tc-item-fact strong { display: block; margin-bottom: 4px; font-size: .78rem; }
.tc-item-fact p { margin: 0; color: var(--tc-text-muted); font-size: .83rem; line-height: 1.55; }

.tc-crafting-window {
	align-self: start;
	padding: 14px;
	color: #242424;
	background: #c6c6c6;
	border: 3px solid #555;
	box-shadow: inset 3px 3px 0 #f7f7f7, inset -3px -3px 0 #8b8b8b;
	font-family: Nunito, sans-serif;
}

.tc-crafting-window__title {
	display: flex;
	align-items: center;
	gap: 9px;
	margin: 0 0 12px;
	padding: 2px 3px 9px;
	border-bottom: 2px solid #8b8b8b;
}

.tc-crafting-window__title img,
.tc-crafting-slot img {
	object-fit: contain;
	image-rendering: pixelated;
}

.tc-crafting-window__title strong,
.tc-crafting-window__title span { display: block; }
.tc-crafting-window__title strong { color: #242424 !important; font-size: .86rem; }
.tc-crafting-window__title span { color: #4b4b4b !important; font-size: .7rem; }

.tc-crafting-layout {
	display: grid;
	grid-template-columns: 156px 34px minmax(72px, 1fr);
	align-items: center;
	gap: 10px;
}

.tc-crafting-grid {
	display: grid;
	grid-template-columns: repeat(3, 48px);
	grid-template-rows: repeat(3, 48px);
	gap: 4px;
}

.tc-crafting-slot {
	position: relative;
	display: grid;
	place-items: center;
	width: 48px;
	height: 48px;
	background: #8b8b8b;
	border: 2px solid;
	border-color: #373737 #fff #fff #373737;
}

.tc-crafting-slot img { max-width: 40px; max-height: 40px; }
.tc-crafting-missing { color: #d7d7d7; font-size: 1.2rem; font-weight: 900; text-shadow: 1px 1px 0 #333; }
.tc-crafting-result .tc-crafting-slot { width: 58px; height: 58px; margin: 0 auto; }
.tc-crafting-result .tc-crafting-slot img { max-width: 48px; max-height: 48px; }

.tc-crafting-slot b,
.tc-crafting-slot em {
	position: absolute;
	right: 2px;
	bottom: 0;
	color: #fff;
	font-size: .7rem;
	font-style: normal;
	font-weight: 900;
	line-height: 1;
	text-shadow: 1px 1px 0 #222, -1px -1px 0 #222;
}

.tc-crafting-slot em {
	top: 2px;
	bottom: auto;
	padding: 2px 3px;
	background: #315b82;
}

.tc-crafting-arrow {
	position: relative;
	width: 31px;
	height: 16px;
	background: #6b6b6b;
}

.tc-crafting-arrow::after {
	content: "";
	position: absolute;
	right: -8px;
	top: -8px;
	border-top: 16px solid transparent;
	border-bottom: 16px solid transparent;
	border-left: 14px solid #6b6b6b;
}

.tc-furnace-layout {
	display: grid;
	grid-template-columns: 76px 74px minmax(90px, 1fr);
	align-items: center;
	justify-content: center;
	gap: 18px;
	min-height: 152px;
	padding: 4px 24px;
}

.tc-furnace-inputs {
	display: grid;
	grid-template-rows: 48px 32px 48px;
	justify-items: center;
	align-items: center;
}

.tc-furnace-flame {
	position: relative;
	width: 22px;
	height: 27px;
	background: #f39a25;
	clip-path: polygon(48% 0, 68% 28%, 84% 18%, 100% 58%, 82% 100%, 18% 100%, 0 58%, 22% 31%, 35% 47%);
	filter: drop-shadow(0 1px 0 #9b4c12);
}

.tc-furnace-flame::after {
	content: "";
	position: absolute;
	left: 7px;
	bottom: 2px;
	width: 9px;
	height: 13px;
	background: #ffe36b;
	clip-path: polygon(50% 0, 100% 55%, 76% 100%, 24% 100%, 0 55%);
}

.tc-furnace-fuel span {
	color: #d4d4d4;
	font-size: .58rem;
	font-weight: 900;
	text-shadow: 1px 1px 0 #3b3b3b;
}

.tc-furnace-progress {
	position: relative;
	width: 58px;
	height: 24px;
	background: #9a9a9a;
	border: 2px solid #6b6b6b;
}

.tc-furnace-progress::after {
	content: "";
	position: absolute;
	right: -18px;
	top: -8px;
	border-top: 18px solid transparent;
	border-bottom: 18px solid transparent;
	border-left: 19px solid #6b6b6b;
}

.tc-crafting-result { min-width: 0; text-align: center; }
.tc-crafting-result > strong { display: block; margin-top: 6px; color: #242424 !important; font-size: .7rem; line-height: 1.25; }

html[data-color-theme="dark"] .tc-wiki-panel .tc-crafting-window .tc-crafting-window__title strong,
html[data-color-theme="dark"] .tc-wiki-panel .tc-crafting-window .tc-crafting-result > strong {
	color: #242424 !important;
}

.tc-crafting-ingredients {
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
	margin: 12px 0 0;
	padding: 10px 0 0;
	border-top: 2px solid #8b8b8b;
	list-style: none;
}

.tc-crafting-ingredients li {
	padding: 4px 7px;
	color: #303030;
	background: #dedede;
	border: 1px solid #777;
	font-size: .66rem;
	font-weight: 800;
}

.tc-item-no-recipe {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	align-self: start;
	padding: 16px;
	border: 1px solid var(--tc-border, var(--tc-line));
	background: var(--tc-surface-2);
}

.tc-item-no-recipe > i { margin-top: 2px; color: var(--tc-primary); font-size: 1.35rem; }
.tc-item-no-recipe strong { display: block; margin-bottom: 4px; }
.tc-item-no-recipe p { margin: 0; color: var(--tc-text-muted); font-size: .82rem; line-height: 1.5; }

.tc-item-attribution {
	margin: 15px 0 0;
	color: var(--tc-text-muted);
	font-size: .68rem;
	line-height: 1.5;
}

.tc-item-attribution a { color: var(--tc-primary); text-decoration: underline; }

.tc-world-unlock-panel {
	margin-top: 18px;
	border-color: var(--wx-border, var(--tc-border));
	background: var(--wx-panel, var(--tc-surface));
}

.tc-world-unlock-panel__header {
	display: grid;
	grid-template-columns: 58px minmax(0, 1fr);
	align-items: start;
	gap: 14px;
	padding-bottom: 16px;
	border-bottom: 1px solid var(--wx-border, var(--tc-border));
}

.tc-world-unlock-panel__icon {
	display: grid;
	place-items: center;
	width: 58px;
	height: 58px;
	color: var(--wx-title, var(--tc-text));
	background: var(--wx-panel-2, var(--tc-surface-2));
	border: 1px solid var(--wx-border, var(--tc-border));
}

.tc-world-unlock-panel__icon i { font-size: 1.65rem; }
.tc-world-unlock-panel__header h2 { margin: 3px 0 5px; color: var(--wx-title, var(--tc-text)); }
.tc-world-unlock-panel__header p { margin: 0; color: var(--wx-muted, var(--tc-text-muted)); line-height: 1.6; }

.tc-world-unlock-steps {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px;
	margin-top: 16px;
}

.tc-world-unlock-step {
	display: grid;
	grid-template-columns: 34px minmax(0, 1fr);
	align-items: start;
	gap: 10px;
	min-width: 0;
	padding: 14px;
	color: var(--wx-text, var(--tc-text));
	background: var(--wx-panel-2, var(--tc-surface-2));
	border: 1px solid var(--wx-border, var(--tc-border));
}

.tc-world-unlock-step > i {
	display: grid;
	place-items: center;
	width: 34px;
	height: 34px;
	color: var(--wx-title, var(--tc-text));
	background: color-mix(in srgb, var(--wx-accent, var(--tc-primary)) 20%, transparent);
	border: 1px solid var(--wx-border, var(--tc-border));
	font-size: 1rem;
}

.tc-world-unlock-step strong { display: block; margin: 1px 0 5px; color: var(--wx-title, var(--tc-text)) !important; font-size: .84rem; }
.tc-world-unlock-step p { margin: 0; color: var(--wx-muted, var(--tc-text-muted)); font-size: .76rem; line-height: 1.55; }

/* Player-facing home and wiki refresh. */
.tc-home-hero__badges {
	display: flex;
	flex-wrap: wrap;
	gap: 7px;
	margin-top: 18px;
}

.tc-home-hero__badges span {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 6px 9px;
	color: #f7eef2;
	background: rgba(16, 10, 13, .62);
	border: 1px solid rgba(255, 255, 255, .25);
	font: 800 .7rem var(--tc-font-mono);
}

.tc-home-hero__badges i { color: #ff9abe; font-size: .9rem; }

.tc-home-pillars {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 14px;
}

.tc-home-pillars article {
	position: relative;
	min-width: 0;
	padding: 24px;
	background: var(--tc-surface);
	border: 2px solid var(--tc-line);
	border-top: 5px solid var(--tc-primary);
	box-shadow: var(--tc-shadow-sm);
}

.tc-home-pillars article > span {
	position: absolute;
	top: 16px;
	right: 18px;
	color: color-mix(in srgb, var(--tc-primary) 45%, var(--tc-text-muted));
	font: 900 1.7rem var(--tc-font-mono);
}

.tc-home-pillars article > i { color: var(--tc-primary); font-size: 2rem; }
.tc-home-pillars h3 { margin: 18px 0 8px; }
.tc-home-pillars p { min-height: 5.1em; margin: 0; color: var(--tc-text-muted); font-size: .84rem; line-height: 1.7; }
.tc-home-pillars a { display: inline-flex; align-items: center; gap: 5px; margin-top: 18px; color: var(--tc-primary); font-size: .77rem; font-weight: 900; text-decoration: none; }

.tc-home-progression-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
}

.tc-home-progression-grid > a {
	display: grid;
	grid-template-columns: 46px minmax(0, 1fr);
	gap: 13px;
	min-width: 0;
	padding: 18px;
	color: var(--tc-text) !important;
	background: var(--tc-surface);
	border: 2px solid var(--tc-line);
	text-decoration: none;
	transition: border-color .18s ease, transform .18s ease;
}

.tc-home-progression-grid > a:hover { border-color: var(--tc-primary); transform: translateY(-2px); }
.tc-home-progression-grid > a > i { display: grid; place-items: center; width: 46px; height: 46px; color: var(--tc-primary); background: color-mix(in srgb, var(--tc-primary) 12%, transparent); border: 1px solid color-mix(in srgb, var(--tc-primary) 45%, var(--tc-line)); font-size: 1.35rem; }
.tc-home-progression-grid h3 { margin: 1px 0 5px; font-size: 1rem; }
.tc-home-progression-grid p { margin: 0; color: var(--tc-text-muted); font-size: .78rem; line-height: 1.55; }

.tc-play-layout {
	display: grid;
	grid-template-columns: minmax(0, 1.35fr) minmax(300px, .65fr);
	align-items: start;
	gap: 18px;
}

.tc-play-layout > .tc-wiki-panel { margin-top: 0; }
.tc-play-card { position: sticky; top: calc(var(--tc-header-h) + 24px); padding: 24px; color: #fff; background: #331b27; border: 2px solid #bc6584; box-shadow: var(--tc-shadow); }
.tc-play-card h2 { margin: 6px 0 10px; color: #fff; font: 900 clamp(1.25rem, 3vw, 1.8rem) var(--tc-font-mono); overflow-wrap: anywhere; }
.tc-play-card p { margin: 0 0 18px; color: #ead8df; }
.tc-play-card .tc-btn + .tc-btn { margin-top: 8px; }

.tc-first-minutes .tc-wiki-list code { display: inline-block; margin-top: 7px; }
.tc-game-loop-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px;
}

.tc-game-loop-grid article {
	position: relative;
	min-width: 0;
	padding: 18px;
	background: var(--tc-surface-2);
	border: 1px solid var(--tc-line);
}

.tc-game-loop-grid article > span { position: absolute; top: 12px; right: 13px; color: var(--tc-text-dim); font: 900 .72rem var(--tc-font-mono); }
.tc-game-loop-grid article > i { color: var(--tc-primary); font-size: 1.45rem; }
.tc-game-loop-grid h3 { margin: 13px 0 6px; font-size: .95rem; }
.tc-game-loop-grid p { min-height: 4.7em; margin: 0 0 10px; color: var(--tc-text-muted); font-size: .76rem; line-height: 1.58; }
.tc-game-loop-grid code { font-size: .68rem; }
.tc-wiki-topic-heading { margin-top: 30px; }
.tc-wiki-topic-card { position: relative; color: var(--tc-text) !important; text-decoration: none !important; }
.tc-wiki-topic-card > span { display: inline-flex; align-items: center; gap: 5px; margin-top: 12px; color: var(--tc-primary); font-size: .72rem; font-weight: 900; }
.tc-world-roadmap { margin-top: 30px; }

.tc-world-route-groups {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
	margin-bottom: 22px;
}

.tc-world-route-group { min-width: 0; padding: 16px; background: var(--tc-surface); border: 2px solid var(--tc-line); }
.tc-world-route-group header { display: flex; align-items: center; gap: 9px; margin-bottom: 12px; }
.tc-world-route-group header i { color: var(--tc-primary); font-size: 1.25rem; }
.tc-world-route-group h2 { margin: 0; font-size: .95rem; }
.tc-world-route-group > div { display: grid; gap: 6px; }
.tc-world-route-group a { display: flex; justify-content: space-between; gap: 10px; padding: 7px 8px; color: var(--tc-text) !important; background: var(--tc-surface-2); border: 1px solid var(--tc-line); font-size: .73rem; text-decoration: none; }
.tc-world-route-group a:hover { border-color: var(--tc-primary); }
.tc-world-route-group a span { color: var(--tc-text-muted); font-family: var(--tc-font-mono); text-align: right; }
.tc-world-catalog { margin-top: 8px; }
.tc-world-catalog .tc-world-preview { min-height: 210px; }
.tc-world-catalog .tc-world-preview small { display: block; max-width: 95%; margin-top: 8px; color: #e4e8ec; font-size: .68rem; line-height: 1.45; }

.tc-world-chapter-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.3fr) minmax(280px, .7fr);
	gap: 14px;
}

.tc-world-chapter-grid > .tc-wiki-panel { margin-top: 0; }
.tc-world-highlight-list { display: grid; gap: 10px; margin: 16px 0 0; padding: 0; list-style: none; }
.tc-world-highlight-list li { display: grid; grid-template-columns: 26px minmax(0, 1fr); align-items: start; gap: 9px; color: var(--wx-text, var(--tc-text)); font-size: .82rem; line-height: 1.55; }
.tc-world-highlight-list i { display: grid; place-items: center; width: 26px; height: 26px; color: var(--wx-title, var(--tc-primary)); background: color-mix(in srgb, var(--wx-accent, var(--tc-primary)) 17%, transparent); border: 1px solid var(--wx-border, var(--tc-line)); }
.tc-world-next-panel p { margin: 12px 0 18px; color: var(--wx-muted, var(--tc-text-muted)); line-height: 1.65; }
.tc-world-goals-panel { margin-top: 18px; }

.tc-world-detail-grid { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(280px, .85fr); gap: 14px; margin: 18px 0; }
.tc-world-detail-grid > .tc-wiki-panel { margin-top: 0; }
.tc-world-detail-heading { display: flex; align-items: center; gap: 11px; margin-bottom: 12px; }
.tc-world-detail-heading h2 { margin: 3px 0 0; }
.tc-world-detail-icon { display: grid; place-items: center; width: 42px; height: 42px; color: var(--wx-accent, var(--tc-primary)); background: color-mix(in srgb, var(--wx-accent, var(--tc-primary)) 14%, transparent); border: 1px solid color-mix(in srgb, var(--wx-accent, var(--tc-primary)) 40%, var(--tc-line)); }
.tc-world-detail-icon i { font-size: 1.15rem; }
.tc-world-detail-copy, .tc-world-lore-panel p { color: var(--wx-muted, var(--tc-text-muted)); font-size: .78rem; line-height: 1.62; }
.tc-world-detail-copy { margin: 0 0 12px; }
.tc-world-lore-panel h2 { margin: 4px 0 11px; }
.tc-world-lore-panel p { margin: 0 0 9px; }
.tc-world-lore-panel p:last-child { margin-bottom: 0; }
.tc-world-power-rule { display: flex; align-items: flex-start; gap: 7px; padding: 9px; color: var(--wx-muted, var(--tc-text-muted)); background: color-mix(in srgb, var(--wx-accent, var(--tc-primary)) 7%, var(--tc-surface-2)); border-left: 3px solid var(--wx-accent, var(--tc-primary)); font-size: .68rem; line-height: 1.5; }
.tc-world-power-rule i { flex: 0 0 auto; color: var(--wx-accent, var(--tc-primary)); }
.tc-world-recipe { margin-top: 14px; }
.tc-world-recipe ul { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; margin: 7px 0 0; padding: 0; list-style: none; }
.tc-world-recipe li { display: flex; flex-direction: column; gap: 2px; min-width: 0; padding: 8px; background: var(--tc-surface-2); border: 1px solid var(--tc-line); }
.tc-world-recipe li strong { color: var(--wx-accent, var(--tc-primary)); font: 900 .72rem var(--tc-font-mono); }
.tc-world-recipe li span { overflow: hidden; color: var(--tc-text-muted); font-size: .64rem; text-overflow: ellipsis; white-space: nowrap; }
.tc-world-power-id { display: inline-block; margin-top: 12px; color: var(--tc-text-muted); font-size: .62rem; }
.tc-world-discoveries-panel { margin: 0 0 18px; }
.tc-world-discoveries-panel .tc-wiki-panel__heading { margin-bottom: 0; }
.tc-world-discovery-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin: 14px 0 0; padding: 0; list-style: none; }
.tc-world-discovery-list li { display: flex; align-items: flex-start; gap: 7px; padding: 9px; color: var(--tc-text-muted); background: var(--tc-surface-2); border: 1px solid var(--tc-line); font-size: .68rem; line-height: 1.45; }
.tc-world-discovery-list i { flex: 0 0 auto; color: var(--wx-accent, var(--tc-primary)); }

.tc-gem-rarity-guide { margin: 18px 0; padding: 18px; background: var(--tc-surface); border: 2px solid var(--tc-line); box-shadow: var(--tc-shadow-sm); }
.tc-gem-rarity-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 8px; }
.tc-gem-rarity-card { min-width: 0; padding: 13px; background: var(--tc-surface-2); border: 1px solid var(--tc-line); border-top: 4px solid var(--rarity-color); }
.tc-gem-rarity-card > span { color: var(--rarity-color); font: 900 .68rem var(--tc-font-mono); }
.tc-gem-rarity-card h3 { margin: 5px 0 7px; font-size: .88rem; }
.tc-gem-rarity-card p { margin: 0; color: var(--tc-text-muted); font-size: .66rem; line-height: 1.5; }
.tc-gem-unlock-copy { margin-top: 8px !important; color: var(--tc-text) !important; font-size: .78rem; font-weight: 900; }

.tc-rank-shared-strip {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 8px;
	margin: 18px 0;
}

.tc-rank-shared-strip > div { display: grid; grid-template-columns: 38px minmax(0, 1fr); align-items: center; gap: 10px; padding: 12px; background: var(--tc-surface); border: 1px solid var(--tc-line); }
.tc-rank-shared-strip i { display: grid; place-items: center; width: 38px; height: 38px; color: var(--tc-primary); background: color-mix(in srgb, var(--tc-primary) 12%, transparent); border: 1px solid color-mix(in srgb, var(--tc-primary) 35%, var(--tc-line)); }
.tc-rank-shared-strip strong, .tc-rank-shared-strip span { display: block; }
.tc-rank-shared-strip strong { color: var(--tc-text); font-size: .76rem; }
.tc-rank-shared-strip span { color: var(--tc-text-muted); font-size: .67rem; line-height: 1.45; }

.tc-rank-showcase {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
	margin-bottom: 18px;
}

.tc-rank-card { display: flex; flex-direction: column; min-width: 0; padding: 20px; background: var(--tc-surface); border: 2px solid var(--tc-line); border-top: 6px solid var(--rank-color); box-shadow: var(--tc-shadow-sm); }
.tc-rank-card__header { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; padding-bottom: 14px; border-bottom: 1px solid var(--tc-line); }
.tc-rank-card__header span { color: var(--tc-text-muted); font-size: .68rem; }
.tc-rank-card__header h2 { margin: 3px 0 0; color: var(--rank-color); font-size: 1.5rem; }
.tc-rank-card__price { flex: none; text-align: right; }
.tc-rank-card__price strong { display: block; color: var(--tc-text); font: 900 1.15rem var(--tc-font-mono); }
.tc-rank-card__price span { display: block; }
.tc-rank-card__metrics { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 6px; margin: 14px 0; }
.tc-rank-card__metrics div { min-width: 0; padding: 9px 7px; background: var(--tc-surface-2); border: 1px solid var(--tc-line); text-align: center; }
.tc-rank-card__metrics span, .tc-rank-card__metrics strong { display: block; }
.tc-rank-card__metrics span { min-height: 2.2em; color: var(--tc-text-muted); font-size: .58rem; line-height: 1.25; }
.tc-rank-card__metrics strong { margin-top: 4px; color: var(--rank-color); font: 900 .84rem var(--tc-font-mono); }
.tc-rank-card__perks { display: grid; gap: 8px; margin: 0 0 14px; padding: 0; list-style: none; }
.tc-rank-card__perks li { display: grid; grid-template-columns: 24px minmax(0, 1fr); align-items: start; gap: 8px; color: var(--tc-text-muted); font-size: .74rem; line-height: 1.45; }
.tc-rank-card__perks i { color: var(--rank-color); font-size: 1rem; }
.tc-rank-card__details { margin-bottom: 8px; background: var(--tc-surface-2); border: 1px solid var(--tc-line); }
.tc-rank-card__details summary { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 10px 11px; color: var(--tc-text); cursor: pointer; font-size: .74rem; font-weight: 900; list-style: none; }
.tc-rank-card__details summary::-webkit-details-marker { display: none; }
.tc-rank-card__details summary i { transition: transform .18s ease; }
.tc-rank-card__details[open] summary i { transform: rotate(180deg); }
.tc-rank-card__details > p { margin: 0; padding: 0 11px 11px; color: var(--tc-text-muted); font-size: .66rem; }
.tc-rank-reward-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 5px; margin: 0; padding: 0 11px 10px; list-style: none; }
.tc-rank-reward-list li { padding: 6px 7px; color: var(--tc-text-muted); background: var(--tc-surface); border: 1px solid var(--tc-line); font-size: .66rem; }
.tc-rank-reward-list strong { color: var(--rank-color); }
.tc-rank-command-list { display: grid; gap: 6px; margin: 0; padding: 0 11px 11px; list-style: none; }
.tc-rank-command-list li { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 8px; align-items: start; color: var(--tc-text-muted); font-size: .67rem; line-height: 1.45; }
.tc-rank-card > .tc-btn { margin-top: auto; }

.tc-boss-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; margin-bottom: 18px; }
.tc-boss-card { min-width: 0; padding: 20px; background: var(--tc-surface); border: 2px solid var(--tc-line); border-top: 5px solid var(--tc-primary); box-shadow: var(--tc-shadow-sm); }
.tc-boss-card header { display: flex; align-items: center; gap: 12px; margin-bottom: 14px; }
.tc-boss-card header span { color: var(--tc-text-muted); font: 800 .68rem var(--tc-font-mono); }
.tc-boss-card h2 { margin: 3px 0 0; font-size: 1.25rem; }
.tc-boss-card dl { display: grid; gap: 8px; margin: 0; }
.tc-boss-card dl > div { padding: 10px; background: var(--tc-surface-2); border: 1px solid var(--tc-line); }
.tc-boss-card dt { margin-bottom: 3px; color: var(--tc-primary); font-size: .66rem; font-weight: 900; text-transform: uppercase; letter-spacing: .06em; }
.tc-boss-card dd { margin: 0; color: var(--tc-text-muted); font-size: .77rem; line-height: 1.55; }
.tc-holding-war-grid .tc-wiki-card > i { color: var(--tc-primary); font-size: 1.35rem; }
.tc-holding-war-grid code { display: inline-block; margin-top: 8px; }
.tc-holding-command-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }

.tc-item-catalog-toolbar { display: grid; grid-template-columns: minmax(0, 1fr) minmax(200px, .34fr); gap: 9px; margin-bottom: 14px; }
.tc-item-search, .tc-item-category { display: flex; align-items: center; min-width: 0; min-height: 44px; background: var(--tc-surface-2); border: 1px solid var(--tc-line); }
.tc-item-search { gap: 8px; padding: 0 12px; }
.tc-item-search i { color: var(--tc-primary); }
.tc-item-search input, .tc-item-category select { width: 100%; min-width: 0; color: var(--tc-text); background: transparent; border: 0; outline: 0; font: 700 .78rem var(--tc-font-body); }
.tc-item-category { padding-left: 10px; }
.tc-item-category > span { flex: none; color: var(--tc-text-muted); font-size: .65rem; font-weight: 900; }
.tc-item-category select { height: 42px; padding: 0 9px; }
.tc-item-category option { color: #171217; background: #fff; }

[data-item-entry][hidden] { display: none !important; }

/* Header account identity: use the same LeaderOS skin avatar as the profile page. */
.tc-nav__avatar {
	overflow: hidden;
	padding: 0 !important;
}

.tc-nav__avatar-image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	image-rendering: pixelated;
}

/* professional.css hides both nodes and leaves only its pseudo status light. */
@media (min-width: 1180px) {
	.tc-nav__online::before { display: none; }
	.tc-nav__online .tc-nav__online-dot { display: block; }
	.tc-nav__online .tc-nav__online-text { display: inline; }
}

/* The complete account cluster is wider when a player is signed in. Use the
   drawer below 1600px instead of allowing page-dependent horizontal overflow. */
@media (min-width: 941px) and (max-width: 1799px) {
	.tc-nav__links { display: none !important; }
	.tc-nav__toggle { display: inline-flex !important; }
	.tc-nav__actions { transform: none; }
}

@media (max-width: 760px) {
	.tc-home-pillars, .tc-home-progression-grid, .tc-game-loop-grid, .tc-world-route-groups, .tc-gem-rarity-grid, .tc-rank-shared-strip, .tc-rank-showcase, .tc-boss-grid { grid-template-columns: 1fr; }
	.tc-home-pillars p, .tc-game-loop-grid p { min-height: 0; }
	.tc-play-layout, .tc-world-chapter-grid, .tc-world-detail-grid { grid-template-columns: 1fr; }
	.tc-play-card { position: static; }
	.tc-rank-card__metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.tc-rank-reward-list, .tc-holding-command-list { grid-template-columns: 1fr; }
	.tc-item-catalog-toolbar { grid-template-columns: 1fr; }
	.tc-item-detail { grid-template-columns: 1fr; padding: 14px; }
	.tc-crafting-window { padding: 12px; }
	.tc-crafting-layout { grid-template-columns: 144px 28px minmax(62px, 1fr); gap: 6px; }
	.tc-crafting-grid { grid-template-columns: repeat(3, 44px); grid-template-rows: repeat(3, 44px); gap: 4px; }
	.tc-crafting-slot { width: 44px; height: 44px; }
	.tc-crafting-slot img { max-width: 36px; max-height: 36px; }
	.tc-crafting-arrow { width: 24px; height: 13px; }
	.tc-crafting-arrow::after { right: -7px; top: -7px; border-top-width: 14px; border-bottom-width: 14px; border-left-width: 12px; }
	.tc-furnace-layout { grid-template-columns: 58px 54px minmax(72px, 1fr); gap: 12px; padding: 4px 8px; }
	.tc-furnace-progress { width: 40px; height: 20px; }
	.tc-furnace-progress::after { right: -15px; top: -7px; border-top-width: 15px; border-bottom-width: 15px; border-left-width: 16px; }
	.tc-world-unlock-panel__header { grid-template-columns: 46px minmax(0, 1fr); }
	.tc-world-unlock-panel__icon { width: 46px; height: 46px; }
	.tc-world-unlock-steps { grid-template-columns: 1fr; }
	.tc-world-recipe ul, .tc-world-discovery-list { grid-template-columns: 1fr; }
}

/* Block catalog renders: 3D model PNGs must not be treated as pixel sprites. */
.tc-item-card__eyebrow {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	min-width: 0;
}
.tc-item-card__eyebrow > span { min-width: 0; }
.tc-item-card__eyebrow > b {
	flex: 0 0 auto;
	padding: 3px 5px;
	border: 1px solid var(--tc-line-soft);
	background: color-mix(in srgb, var(--tc-primary) 8%, var(--tc-surface));
	color: var(--tc-primary);
	font: 800 .55rem var(--tc-font-mono);
	letter-spacing: .04em;
}
.tc-item-card__icon.is-3d-render {
	background: var(--tc-surface-3);
}
.tc-plugin-item-texture.is-3d-render {
	image-rendering: auto;
	filter: drop-shadow(0 4px 4px rgba(0, 0, 0, .24));
}
.tc-item-entry.is-block-item .tc-item-card {
	grid-template-columns: 112px minmax(0, 1fr);
	align-items: center;
}
.tc-item-entry.is-block-item .tc-item-card__icon.is-3d-render {
	width: 112px;
	height: 112px;
	border-color: var(--tc-line);
}
.tc-item-entry.is-block-item .tc-plugin-item-texture.is-3d-render {
	width: 104px;
	height: 104px;
	object-fit: contain;
}
.tc-item-detail__block-render {
	display: grid;
	width: min(100%, 260px);
	min-height: 226px;
	place-items: center;
	gap: 4px;
	margin: 4px 0 14px;
	padding: 10px;
	border: 1px solid var(--tc-line);
	background: var(--tc-surface-3);
}
.tc-item-detail__block-render img {
	display: block;
	width: 192px;
	height: 192px;
	object-fit: contain;
	filter: drop-shadow(0 8px 7px rgba(0, 0, 0, .25));
}
.tc-item-detail__block-render figcaption {
	color: var(--tc-text-muted);
	font: 800 .68rem var(--tc-font-mono);
	letter-spacing: .04em;
	text-transform: uppercase;
}
.tc-item-render-note {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	margin: 0 0 12px;
	padding: 9px 10px;
	border-left: 3px solid var(--tc-primary);
	background: color-mix(in srgb, var(--tc-primary) 7%, var(--tc-surface-2));
	color: var(--tc-text-muted);
	font-size: .74rem;
	line-height: 1.5;
}
.tc-item-render-note i { flex: 0 0 auto; color: var(--tc-primary); }

@media (max-width: 560px) {
	.tc-item-entry.is-block-item .tc-item-card {
		grid-template-columns: 88px minmax(0, 1fr);
		gap: 10px;
	}
	.tc-item-entry.is-block-item .tc-item-card__icon.is-3d-render {
		width: 88px;
		height: 88px;
	}
	.tc-item-entry.is-block-item .tc-plugin-item-texture.is-3d-render {
		width: 82px;
		height: 82px;
	}
	.tc-item-card__eyebrow { align-items: flex-start; flex-direction: column; }
	.tc-item-card__eyebrow > b { white-space: normal; }
	.tc-item-detail__block-render { width: 100%; }
}

.tc-wiki-storage-guide { margin-top: 16px; }
.tc-wiki-storage-guide__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 8px;
}
.tc-wiki-storage-guide__grid article {
	display: grid;
	grid-template-columns: 32px minmax(0, 1fr);
	align-items: start;
	gap: 9px;
	min-width: 0;
	padding: 12px;
	border: 1px solid var(--tc-line-soft);
	border-bottom: 2px solid var(--tc-line);
	background: var(--tc-surface-2);
}
.tc-wiki-storage-guide__grid article > i {
	display: grid;
	place-items: center;
	width: 32px;
	height: 32px;
	border: 1px solid var(--tc-line);
	background: var(--tc-surface);
	color: var(--tc-primary);
}
.tc-wiki-storage-guide__grid strong { display: block; font-size: .78rem; }
.tc-wiki-storage-guide__grid p { margin: 5px 0 0; color: var(--tc-text-muted); font-size: .72rem; line-height: 1.5; }
.tc-wiki-storage-guide__grid code { color: var(--tc-text); }
.tc-wiki-storage-guide .tc-wiki-actions { margin-top: 14px; }
@media (max-width: 760px) {
	.tc-wiki-storage-guide__grid { grid-template-columns: 1fr; }
}

/* =====================================================================
   World catalog preview — one background plane, never a card overlay
   =====================================================================

   The catalog used to paint the same artwork in body pseudo-elements, the
   catalog pseudo-elements and an absolutely positioned card-local layer.
   Those planes had different stacking contexts, which is why a hover could
   look like a square light in front of the navigation.  The JS stage below
   is the only artwork plane.  It is a direct body child, while every other
   page child remains above it through the existing layout z-index contract.
*/
body.tc-page.has-world-preview-layers {
	isolation: isolate;
}
body.tc-page.has-world-preview-layers > *:not(.tc-world-preview-stage) {
	position: relative;
	z-index: 1;
}
.tc-world-preview-stage {
	position: fixed !important;
	inset: 0 !important;
	z-index: 0 !important;
	overflow: hidden;
	pointer-events: none !important;
	opacity: 0;
	transition: opacity 360ms cubic-bezier(.22, .7, .2, 1);
}
body.tc-page.has-world-preview-layers.is-world-previewing .tc-world-preview-stage {
	opacity: .19;
}
html[data-color-theme="dark"] body.tc-page.has-world-preview-layers.is-world-previewing .tc-world-preview-stage {
	opacity: .24;
}
body.tc-page.has-world-preview-layers.is-world-preview-leaving .tc-world-preview-stage {
	opacity: 0;
}
.tc-world-preview-stage .tc-world-preview-layer {
	position: absolute !important;
	inset: -8% !important;
	width: auto !important;
	height: auto !important;
	z-index: 0 !important;
	display: block;
	pointer-events: none !important;
	opacity: 0;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: var(--world-preview-focus-x, 50%) var(--world-preview-focus-y, 44%);
	filter: saturate(.88) contrast(.94) brightness(.84);
	transform: translateZ(0) scale(1.015);
	border-radius: 0 !important;
	transition: opacity 360ms cubic-bezier(.22, .7, .2, 1), background-position 300ms ease;
	-webkit-mask-image: radial-gradient(ellipse 78% 76% at 50% 44%,
		#000 0%, rgba(0, 0, 0, .98) 40%, rgba(0, 0, 0, .62) 68%, rgba(0, 0, 0, .18) 88%, transparent 100%);
	mask-image: radial-gradient(ellipse 78% 76% at 50% 44%,
		#000 0%, rgba(0, 0, 0, .98) 40%, rgba(0, 0, 0, .62) 68%, rgba(0, 0, 0, .18) 88%, transparent 100%);
}

/* Disable every legacy image-bearing plane while the authoritative stage is active. */
body.tc-page.has-world-preview-layers.is-world-previewing::before,
body.tc-page.has-world-preview-layers.is-world-previewing::after,
body.tc-page.has-world-preview-layers.is-world-preview-leaving::before {
	display: none !important;
	background-image: none !important;
}
body.tc-page.has-world-preview-layers .tc-wiki-page::before,
body.tc-page.has-world-preview-layers .tc-world-catalog::before,
body.tc-page.has-world-preview-layers .tc-world-catalog::after {
	display: none !important;
	content: none !important;
}
body.tc-page.has-world-preview-layers .tc-world-catalog .tc-world-preview-layer {
	position: static !important;
	display: none !important;
}

@media (prefers-reduced-motion: reduce) {
	.tc-world-preview-stage,
	.tc-world-preview-stage .tc-world-preview-layer {
		transition-duration: 1ms !important;
	}
}

@media (max-width: 640px) {
	/* Touch devices do not have a hover preview; keep the page palette clean. */
	.tc-world-preview-stage {
		display: none !important;
	}
}
