/* PWData — tema escuro simples */

html {
	box-sizing: border-box;
	font-size: 16px;
}

*, *::before, *::after {
	box-sizing: inherit;
}

body {
	margin: 0;
	min-height: 100vh;
	display: flex;
	flex-direction: column;
	font-family: Georgia, "Times New Roman", serif;
	background: #12141a;
	color: #c8cdda;
	line-height: 1.45;
}

a {
	color: #7eb8ff;
	text-decoration: none;
}

a:hover {
	text-decoration: underline;
}

code {
	font-family: Consolas, "Courier New", monospace;
	font-size: 0.9em;
	background: #1a1d26;
	padding: 0.1em 0.35em;
	border-radius: 3px;
}

.sr-only {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	border: 0;
}

/* Header */
.site-header {
	background: #1a1d26;
	border-bottom: 1px solid #2a3142;
	padding: 0.75rem 1.25rem;
}

.site-header__inner {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.75rem 1rem;
	max-width: 960px;
	margin: 0 auto;
}

.site-logo {
	font-weight: bold;
	font-size: 1.15rem;
	color: #e8e6e3;
}

.site-logo:hover {
	text-decoration: none;
	color: #fff;
}

.site-header__nav {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.25rem;
}

.site-header__nav-link {
	display: inline-block;
	padding: 0.35rem 0.65rem;
	font-size: 0.88rem;
	color: #9aa3b5;
	text-decoration: none;
	border-radius: 4px;
	white-space: nowrap;
}

.site-header__nav-link:hover {
	color: #e8e6e3;
	background: #232732;
}

.site-header__nav-link--current {
	color: #e8e6e3;
	background: #2a3142;
	border: 1px solid #3a4458;
}

.site-header__search {
	flex: 1 1 10rem;
	min-width: 0;
	max-width: 26rem;
}

.site-header__search-fieldset {
	border: 0;
	margin: 0;
	padding: 0;
	min-width: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
	align-items: center;
}

.site-header__search-fieldset:disabled {
	opacity: 0.55;
	pointer-events: none;
}

.site-header__search-input {
	flex: 1;
	min-width: 6rem;
}

.site-header__search-btn {
	flex-shrink: 0;
	font-size: 0.88rem;
	padding: 0.35rem 0.65rem;
}

.site-header__context-hint {
	max-width: 960px;
	margin: 0 auto;
	padding: 0.35rem 1.25rem 0.65rem;
	font-size: 0.82rem;
	color: #9aa3b2;
	line-height: 1.35;
	border-top: 1px solid rgba(255, 255, 255, 0.05);
}

.context-form {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.5rem;
	margin-left: auto;
}

.context-form__select {
	min-width: 9rem;
}

/* Main */
.main {
	flex: 1;
	width: 100%;
	max-width: 720px;
	margin: 0 auto;
	padding: 2rem 1.25rem 3rem;
}

.search-hero {
	text-align: center;
	padding: 2rem 0 1rem;
}

.search-hero__title {
	margin: 0 0 1.25rem;
	font-size: 1.5rem;
	font-weight: normal;
	color: #e8e6e3;
}

.search-form {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	justify-content: center;
	gap: 0.5rem;
	max-width: 520px;
	margin: 0 auto;
}

.input {
	background: #1a1d26;
	border: 1px solid #3d4558;
	color: #e8e6e3;
	padding: 0.5rem 0.75rem;
	border-radius: 4px;
	font: inherit;
}

.input:focus {
	outline: none;
	border-color: #5c6a8a;
}

.search-form__fieldset {
	border: 0;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	justify-content: center;
	gap: 0.5rem;
	flex: 1 1 100%;
	min-width: 0;
}

.search-form__fieldset:disabled {
	opacity: 0.55;
	pointer-events: none;
}

.search-form__input {
	flex: 1 1 200px;
	min-width: 0;
}

.btn {
	background: #2d3a52;
	border: 1px solid #4a5a78;
	color: #e8e6e3;
	padding: 0.5rem 1rem;
	border-radius: 4px;
	font: inherit;
	cursor: pointer;
}

.btn:hover {
	background: #3a4a66;
}

.msg {
	padding: 0.75rem 1rem;
	border-radius: 4px;
	margin: 1rem 0;
}

.msg--error {
	background: #3a2222;
	border: 1px solid #6a3a3a;
	color: #f0c0c0;
}

/* Results */
.results__title {
	font-size: 1.1rem;
	font-weight: normal;
	margin: 2rem 0 0.75rem;
	color: #a0aab6;
}

.results__empty {
	color: #8a93a8;
}

.results-section {
	margin-top: 1.5rem;
}

.results-section:first-child {
	margin-top: 0.5rem;
}

.results-section__title {
	font-size: 1rem;
	font-weight: 600;
	margin: 0 0 0.5rem;
	color: #c5cdd8;
	letter-spacing: 0.02em;
}

.results-section__emoji {
	display: inline-block;
	margin-right: 0.4em;
	font-style: normal;
	line-height: 1;
	vertical-align: -0.05em;
}

.results__back {
	margin: 0 0 0.75rem;
}

.results__back-link {
	color: #8ab4e8;
	text-decoration: none;
	font-size: 0.9rem;
}

.results__back-link:hover {
	text-decoration: underline;
}

.results-section__more {
	margin-top: 0.5rem;
	text-align: right;
}

.btn--more {
	font-size: 0.88rem;
	padding: 0.35rem 0.75rem;
}

.results-table__row--clickable {
	cursor: pointer;
}

.results-table__row--clickable:hover {
	background: #232732;
}

.item-detail-fab__row--clickable {
	cursor: pointer;
}

.item-detail-fab__row--clickable:hover {
	background: rgba(35, 39, 50, 0.65);
}

.recipe-detail__dl {
	display: grid;
	grid-template-columns: minmax(8rem, 12rem) 1fr;
	gap: 0.35rem 1rem;
	margin: 0;
	font-size: 0.92rem;
}

.recipe-detail__dl dt {
	color: #8a93a8;
	margin: 0;
}

.recipe-detail__dl dd {
	margin: 0;
	color: #e8e6e3;
}

.recipe-detail__target-list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.recipe-detail__target {
	display: flex;
	align-items: flex-start;
	gap: 0.75rem;
	margin-bottom: 0.85rem;
}

.recipe-detail__target:last-child {
	margin-bottom: 0;
}

.recipe-detail__target-text {
	display: flex;
	flex-direction: column;
	gap: 0.2rem;
}

.recipe-detail__mats {
	margin-top: 0.25rem;
}

.recipe-detail__npc-list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.recipe-detail__npc {
	margin-bottom: 1rem;
	font-size: 0.95rem;
	line-height: 1.45;
}

.recipe-detail__npc:last-child {
	margin-bottom: 0;
}

.recipe-detail__npc-matches {
	margin: 0.35rem 0 0 1rem;
	padding: 0;
	color: #a8b2c3;
	font-size: 0.9rem;
}

.recipe-detail__npc-matches li {
	margin-bottom: 0.2rem;
}

.mission-detail__note code {
	font-size: 0.88em;
}

.mission-detail__award-block {
	margin-bottom: 1.75rem;
	padding-bottom: 1.25rem;
	border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.mission-detail__award-block:last-child {
	margin-bottom: 0;
	padding-bottom: 0;
	border-bottom: none;
}

.mission-detail__award-title {
	font-size: 1.05rem;
	font-weight: 600;
	margin: 0 0 0.65rem;
	color: #c5cdd8;
}

.mission-detail__award-raw {
	margin-bottom: 1rem;
}

.mission-detail__parsed-label {
	font-size: 0.88rem;
	color: #8a93a8;
	margin: 0 0 0.5rem;
}

.mission-detail__reward-list {
	margin-top: 0.35rem;
}

.mission-detail__reward-line {
	align-items: center;
}

.mission-detail__reward-meta {
	flex: 1;
	min-width: 0;
}

.mission-detail__reward-bits {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.5rem 0.75rem;
	font-size: 0.9rem;
	color: #a8b2c3;
}

.mission-detail__reward-qty {
	font-weight: 600;
	color: #e8e6e3;
}

.mission-detail__award-empty {
	margin: 0.35rem 0 0;
	font-size: 0.9rem;
}

/* Página detalhe monstro / item */
.monster-detail,
.item-detail {
	max-width: 52rem;
	margin: 0 auto;
	padding: 0 1rem 2rem;
}

.monster-detail__back {
	margin: 0 0 1rem;
}

.monster-detail__back-link {
	color: #8ab4e8;
	text-decoration: none;
	font-size: 0.9rem;
}

.monster-detail__back-link:hover {
	text-decoration: underline;
}

.monster-detail__empty {
	color: #8a93a8;
}

.monster-detail__header {
	margin-bottom: 1.25rem;
}

.monster-detail__title {
	font-size: 1.35rem;
	font-weight: 600;
	margin: 0 0 0.75rem;
	color: #e8e6e3;
	line-height: 1.35;
}

.monster-detail__title-meta {
	font-weight: normal;
	color: #8a93a8;
	font-size: 0.95rem;
}

.monster-detail__title-code {
	font-size: 0.88em;
	color: #a8b2c3;
}

.item-detail__name {
	margin: 0.75rem 0 0;
	font-size: 1.1rem;
	font-weight: 600;
}

.item-detail__fields {
	margin-top: 1.5rem;
}

.item-detail__summary {
	margin-top: 0.5rem;
}

.item-detail__desc {
	color: #e8e6e3;
	line-height: 1.55;
}

.item-detail__desc .item-ext-desc {
	white-space: pre-line;
	word-wrap: break-word;
	overflow-wrap: anywhere;
}

.item-detail__lists {
	margin-top: 2rem;
	display: flex;
	flex-direction: column;
	gap: 2rem;
}

.item-detail__block {
	margin: 0;
}

.item-detail__empty {
	color: #8a93a8;
	font-size: 0.95rem;
	margin: 0.5rem 0 0;
}

.item-detail__hint {
	color: #8a93a8;
	font-size: 0.9rem;
	margin: 0 0 0.75rem;
	max-width: 42rem;
}

.item-detail-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.95rem;
	margin-top: 0.5rem;
}

.item-detail-table th,
.item-detail-table td {
	padding: 0.45rem 0.6rem;
	text-align: left;
	vertical-align: top;
	border-bottom: 1px solid #2a3140;
}

.item-detail-table thead th {
	color: #a8b2c3;
	font-weight: 600;
	font-size: 0.88rem;
}

.item-detail-table--wide .item-detail-table__materials {
	min-width: 12rem;
}

.item-detail-table__th-pct,
.item-detail-table__th-prob,
.item-detail-table__th-price,
.item-detail-table__pct {
	white-space: nowrap;
	width: 1%;
}

.item-detail-fab__cell--price {
	text-align: right;
	font-variant-numeric: tabular-nums;
}

.item-detail-table__name a,
.item-detail-table__recipe-name {
	color: #e8e6e3;
	text-decoration: none;
}

.item-detail-table__name a:hover {
	text-decoration: underline;
	color: #8ab4e8;
}

.item-detail-table__id {
	color: #6b7280;
	font-size: 0.88em;
	margin-left: 0.2rem;
}

.item-detail-materials {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
}

.item-detail-materials__li {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.35rem 0.5rem;
}

.item-detail-materials__li a {
	color: #8ab4e8;
	text-decoration: none;
}

.item-detail-materials__li a:hover {
	text-decoration: underline;
}

.item-detail-materials__icon {
	border-radius: 4px;
	background: #1a1d26;
	flex-shrink: 0;
}

.item-detail-materials__num {
	color: #a8b2c3;
	font-size: 0.9em;
}

.item-detail-materials__prob {
	color: #8a93a8;
	font-size: 0.88em;
	margin-left: 0.25rem;
}

.item-detail-materials--compact .item-detail-materials__prob {
	display: inline-block;
}

.item-detail__more {
	margin: 0.65rem 0 0;
	text-align: right;
}

/* Fabricação: resultado (ícone + nome) | preço | materiais (ícones + qtd) */
.item-detail-table--fab .item-detail-fab__cell {
	vertical-align: middle;
}

.item-detail-table--fab .item-detail-fab__cell--out {
	width: 36%;
	min-width: 12rem;
}

.item-detail-table--fab .item-detail-fab__cell--mats {
	width: 52%;
	min-width: 10rem;
}

.item-detail-fab__out {
	display: flex;
	align-items: center;
	gap: 0.75rem;
}

.item-detail-fab__out-img {
	flex-shrink: 0;
	width: 56px;
	height: 56px;
	object-fit: contain;
	border-radius: 6px;
	background: #1a1d26;
}

.item-detail-fab__out-text {
	min-width: 0;
}

.item-detail-fab__out-text .results-table__name-text {
	font-size: 1.05rem;
	font-weight: 600;
}

.item-detail-fab__mats {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: flex-end;
	gap: 0.45rem;
}

.item-detail-mat-icon {
	display: block;
	text-decoration: none;
	line-height: 0;
}

.item-detail-mat-icon:focus-visible {
	outline: 2px solid #8ab4e8;
	outline-offset: 2px;
	border-radius: 6px;
}

.item-detail-mat-icon__wrap {
	position: relative;
	display: block;
	width: 40px;
	height: 40px;
}

.item-detail-mat-icon__img {
	width: 40px;
	height: 40px;
	object-fit: contain;
	border-radius: 5px;
	background: #1a1d26;
	display: block;
}

.item-detail-mat-icon__placeholder {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border-radius: 5px;
	background: #2a3140;
	color: #6b7280;
	font-size: 0.95rem;
	font-weight: 600;
}

.item-detail-mat-icon__qty {
	position: absolute;
	right: 1px;
	bottom: 1px;
	min-width: 1rem;
	padding: 1px 4px;
	text-align: center;
	font-size: 10px;
	font-weight: 700;
	line-height: 1.25;
	color: #f5f5f5;
	background: rgba(12, 14, 18, 0.92);
	border-radius: 4px;
	box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.06);
	pointer-events: none;
}

.item-detail-mat-icon:hover .item-detail-mat-icon__img,
.item-detail-mat-icon:hover .item-detail-mat-icon__placeholder {
	box-shadow: 0 0 0 1px #4a5a78;
}

/* Usado em receitas: resultados empilhados (sem nome de receita) */
.item-detail-table--ruse .item-detail-fab__cell--out {
	min-width: 14rem;
}

.item-detail-ruse__outputs {
	display: flex;
	flex-direction: column;
	gap: 0.65rem;
}

.item-detail-ruse__out-line {
	display: flex;
	align-items: center;
	gap: 0.65rem;
}

.item-detail-ruse__name {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 0.35rem 0.5rem;
	min-width: 0;
}

.item-detail-ruse__name a {
	text-decoration: none;
	font-weight: 600;
}

.item-detail-ruse__name a:hover {
	text-decoration: underline;
}

.item-detail-ruse__prob {
	font-size: 0.82rem;
	color: #8a93a8;
	white-space: nowrap;
}

.item-detail-ruse__empty {
	color: #6b7280;
}

.item-detail-fab__out-img--placeholder {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 56px;
	height: 56px;
	flex-shrink: 0;
	border-radius: 6px;
	background: #2a3140;
	color: #6b7280;
	font-weight: 600;
	font-size: 1rem;
}

.item-list-full__meta {
	color: #8a93a8;
	font-size: 0.95rem;
	margin: 0 0 1rem;
}

.item-list-full .monster-detail__header {
	margin-bottom: 1rem;
}

.monster-detail__icon-wrap {
	margin-top: 0.5rem;
}

.monster-detail__icon {
	width: 64px;
	height: 64px;
	object-fit: contain;
	border-radius: 6px;
	background: #1a1d26;
}

.monster-summary {
	display: grid;
	grid-template-columns: 7rem 1fr;
	gap: 0.4rem 1rem;
	margin: 0 0 1.75rem;
	font-size: 0.95rem;
}

.monster-summary dt {
	margin: 0;
	color: #a8b2c3;
	font-weight: 500;
}

.monster-summary dd {
	margin: 0;
	color: #e8e6e3;
}

.monster-summary__name {
	font-weight: 600;
}

.npc-detail .monster-summary__name {
	color: rgb(255, 255, 0);
	text-shadow: 0 0 1px rgba(0, 0, 0, 0.6), 0 0 2px rgba(0, 0, 0, 0.35);
}

.monster-section__title {
	font-size: 1.05rem;
	font-weight: 600;
	margin: 0 0 0.75rem;
	color: #c5cdd8;
}

.monster-subsection__title {
	font-size: 0.95rem;
	font-weight: 600;
	margin: 1rem 0 0.5rem;
	color: #a8b2c3;
}

.monster-locations {
	margin-bottom: 2rem;
}

.monster-map {
	margin-bottom: 1.75rem;
}

.monster-map:last-child {
	margin-bottom: 0;
}

.monster-map__bar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	margin: 0 0 0.5rem;
}

.monster-map__title {
	font-size: 0.95rem;
	font-weight: 600;
	margin: 0;
	flex: 1;
	min-width: 0;
	color: #a8b2c3;
}

.monster-map__fs-close {
	flex-shrink: 0;
	padding: 0.35rem 0.75rem;
	font-size: 0.8rem;
	font-weight: 600;
	color: #e8e6e3;
	background: #2a3344;
	border: 1px solid #4a5568;
	border-radius: 6px;
	cursor: pointer;
	line-height: 1.2;
}

.monster-map__fs-close:hover {
	background: #354056;
}

.monster-map__fs-close:focus-visible {
	outline: 2px solid #5a7ab0;
	outline-offset: 2px;
}

.monster-map__fs-hint {
	margin: -0.25rem 0 0.5rem;
	font-size: 0.75rem;
	color: #8a96a8;
	line-height: 1.35;
}

.monster-map--collapsed .monster-map__fs-hint {
	display: none;
}

.monster-map__frame {
	position: relative;
	display: block;
	width: 100%;
	border: 1px solid #3a4458;
	border-radius: 8px;
	overflow: hidden;
	background: #14161c;
	line-height: 0;
	transition: box-shadow 0.2s ease;
	outline: none;
}

.monster-map__viewport {
	position: relative;
	width: 100%;
	overflow: hidden;
}

.monster-map__zoom-layer {
	position: relative;
	display: block;
	width: 100%;
	transform-origin: 0 0;
	will-change: transform;
}

.monster-map--collapsed .monster-map__frame {
	max-width: 200px;
	cursor: zoom-in;
	box-shadow: 0 2px 12px rgba(0, 0, 0, 0.25);
}

.monster-map--expanded {
	position: fixed;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	z-index: 10050;
	display: flex;
	flex-direction: column;
	padding: 0.65rem 0.85rem 0.85rem;
	box-sizing: border-box;
	background: rgba(12, 14, 20, 0.94);
	backdrop-filter: blur(4px);
}

.monster-map--expanded .monster-map__bar {
	margin-bottom: 0.35rem;
	flex-shrink: 0;
}

.monster-map--expanded .monster-map__fs-hint {
	display: block;
	margin: 0 0 0.5rem;
	flex-shrink: 0;
}

.monster-map--expanded .monster-map__frame {
	flex: 1 1 auto;
	min-height: 0;
	max-width: none;
	width: 100%;
	cursor: grab;
	box-shadow: 0 4px 32px rgba(0, 0, 0, 0.45);
	border-radius: 10px;
}

.monster-map--expanded .monster-map__viewport {
	height: 100%;
	min-height: 0;
	cursor: grab;
	user-select: none;
	-webkit-user-select: none;
	touch-action: none;
}

body.monster-map-fs-open {
	overflow: hidden;
}

.monster-map__frame:focus-visible {
	box-shadow: 0 0 0 2px #3a5580, 0 4px 24px rgba(0, 0, 0, 0.35);
}

.monster-map--collapsed .monster-map__frame:focus-visible {
	box-shadow: 0 0 0 2px #3a5580, 0 2px 12px rgba(0, 0, 0, 0.25);
}

.monster-map__expand-hint {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	padding: 0.35rem 0.5rem;
	font-size: 0.7rem;
	color: #e8e6e3;
	text-align: center;
	text-shadow: 0 0 6px #000, 0 1px 2px #000;
	background: linear-gradient(transparent, rgba(0, 0, 0, 0.55));
	pointer-events: none;
	z-index: 3;
	line-height: 1.3;
}

.monster-map--expanded .monster-map__expand-hint {
	display: none;
}

.monster-map__img {
	display: block;
	width: 100%;
	height: auto;
	vertical-align: top;
}

.monster-map__pin {
	position: absolute;
	width: 12px;
	height: 12px;
	border: 2px solid #1a1d26;
	border-radius: 50%;
	background: #ff5252;
	box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.35);
	transform: translate(-50%, -50%);
	cursor: help;
	z-index: 2;
}

.monster-drops {
	margin-bottom: 2rem;
}

.monster-drop-table + .monster-drop-sim {
	margin-top: 1.5rem;
}

.monster-drop-sim {
	margin: 1.25rem 0 1.75rem;
	padding: 1rem 1.1rem;
	border-radius: 6px;
	border: 1px solid #3a4458;
	background: linear-gradient(165deg, #1e2430 0%, #1a1d26 100%);
}

.monster-drop-sim__title {
	font-size: 1rem;
	font-weight: 600;
	margin: 0 0 0.5rem;
	color: #c5cdd8;
	letter-spacing: 0.02em;
}

.monster-drop-sim__hint {
	margin: 0 0 0.85rem;
	font-size: 0.88rem;
	line-height: 1.45;
	color: #8a93a8;
	max-width: 52rem;
}

.monster-drop-sim__hint strong {
	color: #a8b2c3;
	font-weight: 600;
}

.monster-drop-sim__controls {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.6rem 1rem;
	margin-bottom: 0.25rem;
}

.monster-drop-sim__label {
	font-size: 0.88rem;
	color: #a8b2c3;
}

.monster-drop-sim__count {
	width: 5rem;
	padding: 0.4rem 0.5rem;
	border-radius: 4px;
	border: 1px solid #3a4458;
	background: #14161c;
	color: #e8e6e3;
	font: inherit;
}

.monster-drop-sim__count:focus {
	outline: none;
	border-color: #5a7090;
}

.monster-drop-sim__btn {
	font-size: 0.92rem;
}

.monster-drop-sim__summary {
	margin: 0 0 0.75rem;
	font-size: 0.88rem;
	line-height: 1.45;
	color: #9aa3b5;
}

.monster-drop-sim__summary strong {
	color: #c5cdd8;
	font-weight: 600;
}

.monster-drop-sim__out {
	margin-top: 1rem;
	min-height: 0;
	transition: box-shadow 0.2s ease;
}

.monster-drop-sim__out--flash {
	box-shadow: 0 0 0 2px rgba(138, 180, 232, 0.35);
	border-radius: 4px;
}

.monster-drop-sim__empty {
	margin: 0;
	padding: 0.75rem 0.5rem;
	color: #a0aab6;
	font-size: 0.92rem;
}

.monster-drop-sim__loot {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem 1rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

.monster-drop-sim__loot-li {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.35rem;
	width: 5.5rem;
	text-align: center;
}

.monster-drop-sim__loot-link {
	position: relative;
	display: block;
	width: 48px;
	height: 48px;
	border-radius: 4px;
	background: #1a1d26;
	border: 1px solid #3a4458;
	overflow: hidden;
	flex-shrink: 0;
}

.monster-drop-sim__loot-link:hover {
	border-color: #5a6a88;
}

.monster-drop-sim__loot-icon {
	display: block;
	width: 48px;
	height: 48px;
	object-fit: contain;
}

.monster-drop-sim__loot-placeholder {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	font-size: 1.1rem;
	color: #5a6478;
}

.monster-drop-sim__loot-qty {
	position: absolute;
	right: 2px;
	bottom: 2px;
	font-size: 0.72rem;
	font-weight: 700;
	line-height: 1;
	padding: 2px 4px;
	border-radius: 3px;
	background: rgba(10, 12, 18, 0.88);
	color: #f0d080;
	text-shadow: 0 1px 1px rgba(0, 0, 0, 0.8);
}

.monster-drop-sim__loot-name {
	font-size: 0.78rem;
	line-height: 1.25;
	word-break: break-word;
	max-width: 100%;
}

.monster-drop-sim__loot-name a.results-table__name-text {
	text-decoration: none;
}

.monster-drop-sim__loot-name a.results-table__name-text:hover {
	text-decoration: underline;
}

.monster-drop-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.9rem;
}

.monster-drop-table thead th {
	text-align: left;
	color: #8a93a8;
	font-weight: normal;
	padding: 0.4rem 0.5rem;
	border-bottom: 1px solid #3a4458;
}

.monster-drop-table__th-icon {
	width: 3.5rem;
}

.monster-drop-table__th-chance {
	white-space: nowrap;
	vertical-align: middle;
}

.monster-drop-table__th-chance-label {
	vertical-align: middle;
}

.monster-drop-table__th-help {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1.125rem;
	height: 1.125rem;
	margin-left: 0.3rem;
	padding: 0;
	vertical-align: middle;
	border: 1px solid #4a5568;
	border-radius: 50%;
	background: #252a36;
	color: #a8b2c3;
	font-size: 0.68rem;
	font-weight: 600;
	line-height: 1;
	cursor: help;
	font-family: inherit;
}

.monster-drop-table__th-help:hover,
.monster-drop-table__th-help:focus-visible {
	color: #e8e6e3;
	border-color: #6a7388;
	outline: none;
}

.monster-drop-table__th-help:focus-visible {
	box-shadow: 0 0 0 2px rgba(100, 140, 200, 0.35);
}

.monster-drop-table__tip {
	position: fixed;
	left: 0;
	top: 0;
	max-width: min(22rem, 92vw);
	margin: 0;
	padding: 0.75rem 1rem;
	border: 1px solid #3a4458;
	border-radius: 8px;
	background: #1e222d;
	color: #cdd4e0;
	font-size: 0.82rem;
	font-weight: normal;
	line-height: 1.45;
	box-shadow: 0 8px 28px rgba(0, 0, 0, 0.4);
	inset: unset;
	z-index: 2147483646;
}

.monster-drop-table__tip-dl {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	gap: 0.4rem 0.85rem;
	margin: 0;
	align-items: baseline;
}

.monster-drop-table__tip-dl dt {
	margin: 0;
	color: #a8b2c3;
	white-space: nowrap;
}

.monster-drop-table__tip-dl dd {
	margin: 0;
	color: #e8e6e3;
	font-variant-numeric: tabular-nums;
	word-break: break-word;
}

.monster-drop-table__tip code {
	font-size: 0.78em;
	color: #a8b2c3;
	background: #14161c;
	padding: 0.08em 0.35em;
	border-radius: 3px;
}

.monster-drop-table__tip-note {
	margin: 0.75rem 0 0;
	padding-top: 0.65rem;
	border-top: 1px solid #2f3848;
	font-size: 0.78rem;
	line-height: 1.5;
	color: #9aa3b5;
}

.monster-drop-table__tip-note strong {
	color: #c5cdd8;
	font-weight: 600;
}

.monster-drop-table tbody td {
	padding: 0.45rem 0.5rem;
	border-bottom: 1px solid #2a3142;
	vertical-align: middle;
}

.monster-drop-table tbody tr:hover {
	background: #1a1d26;
}

.monster-drop-table__row--click {
	cursor: pointer;
}

.monster-drop-table__icon-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: inherit;
	text-decoration: none;
	vertical-align: middle;
}

.monster-drop-table__icon-link:hover {
	text-decoration: none;
}

.monster-drop-table__name > a.results-table__name-text {
	text-decoration: none;
}

.monster-drop-table__name > a.results-table__name-text:hover {
	text-decoration: underline;
}

.monster-drop-table__icon-cell {
	width: 3.5rem;
}

.monster-drop-table__icon {
	width: 40px;
	height: 40px;
	object-fit: contain;
	border-radius: 4px;
	background: #1a1d26;
	vertical-align: middle;
}

.monster-drop-table__no-icon {
	color: #5a6270;
}

.monster-drop-table__name {
	color: #e8e6e3;
}

.monster-drop-table__id {
	color: #6a7388;
	font-size: 0.85rem;
}

.monster-drop-table__pct {
	text-align: right;
	font-variant-numeric: tabular-nums;
	color: #cdd4e0;
	white-space: nowrap;
}

.detail-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.88rem;
}

.detail-table th[scope="row"] {
	text-align: left;
	font-weight: 500;
	color: #a8b2c3;
	width: 38%;
	vertical-align: top;
	padding: 0.4rem 0.75rem 0.4rem 0;
	border-bottom: 1px solid #2a3142;
}

.detail-table thead th {
	color: #8a93a8;
	font-weight: normal;
	padding: 0.35rem 0.5rem;
	border-bottom: 1px solid #3a4458;
}

.detail-table td {
	padding: 0.4rem 0.5rem;
	border-bottom: 1px solid #2a3142;
	color: #e8e6e3;
	vertical-align: top;
	word-break: break-word;
}

.detail-table tbody tr:hover {
	background: #1a1d26;
}

.detail-table__value {
	font-variant-numeric: tabular-nums;
}

.detail-table__value--pre {
	white-space: pre-wrap;
	word-break: break-word;
	font-variant-numeric: normal;
	max-height: 24rem;
	overflow: auto;
}

.results-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.9rem;
}

.results-table th,
.results-table td {
	text-align: left;
	padding: 0.45rem 0.6rem;
	border-bottom: 1px solid #2a3142;
	vertical-align: top;
}

.results-table th {
	color: #8a93a8;
	font-weight: normal;
}

.results-table tbody tr:hover {
	background: #1a1d26;
}

.results-table__list-cell {
	vertical-align: middle;
	min-width: 8rem;
}

.results-table__level-cell {
	text-align: right;
	white-space: nowrap;
	color: #a8b2c3;
	font-variant-numeric: tabular-nums;
	width: 4rem;
}

.results-table__hp-cell {
	text-align: right;
	white-space: nowrap;
	color: #a8b2c3;
	font-variant-numeric: tabular-nums;
	min-width: 5rem;
}

.results-table__list-fallback {
	color: #5a6270;
}

/* Ícone + label (table_labels.php) — coluna 1 */
.results-table__item-line {
	display: flex;
	align-items: center;
	gap: 0.4em;
	flex-wrap: wrap;
	font-size: 0.88rem;
}

.results-table__item-icon {
	font-style: normal;
	line-height: 1;
	font-size: 1.35rem;
}

.results-table__item-list-label {
	color: #a8b2c3;
	font-weight: 500;
}

.results-table__name-cell {
	color: #e8e6e3;
	line-height: 1.4;
}

.results-table__name-row {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	min-width: 0;
}

.results-table__item-thumb {
	flex-shrink: 0;
	width: 32px;
	height: 32px;
	object-fit: contain;
	border-radius: 4px;
	background: #1a1d26;
	vertical-align: middle;
}

.results-table__name-text {
	min-width: 0;
	color: #e8e6e3;
}

/* Cores do item (item_color) — legíveis em fundo escuro */
.results-table__name-cell .results-table__name-text--branco,
.monster-drop-table__name .results-table__name-text--branco,
.item-detail__name .results-table__name-text--branco,
.item-detail__summary .results-table__name-text--branco,
.monster-drop-sim__loot-name .results-table__name-text--branco {
	color: #f0f0f0;
	text-shadow: 0 0 1px rgba(0, 0, 0, 0.4);
}

.results-table__name-cell .results-table__name-text--azul,
.monster-drop-table__name .results-table__name-text--azul,
.item-detail__name .results-table__name-text--azul,
.item-detail__summary .results-table__name-text--azul,
.monster-drop-sim__loot-name .results-table__name-text--azul {
	color: #738adb;
	text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.55), 0 0 1px rgba(30, 40, 80, 0.6);
}

/* NPC na pesquisa — amarelo puro rgb(255 255 0) */
.results-table__name-cell .results-table__name-text--npc {
	color: rgb(255, 255, 0);
	text-shadow: 0 0 1px rgba(0, 0, 0, 0.6), 0 0 2px rgba(0, 0, 0, 0.35);
}

/* Itens — amarelo (cliente PW: rgb 255 220 80) */
.results-table__name-cell .results-table__name-text--amarelo,
.monster-drop-table__name .results-table__name-text--amarelo,
.item-detail__name .results-table__name-text--amarelo,
.item-detail__summary .results-table__name-text--amarelo,
.monster-drop-sim__loot-name .results-table__name-text--amarelo {
	color: rgb(255, 220, 80);
	text-shadow:
		0 0 1px rgba(0, 0, 0, 0.75),
		1px 1px 0 rgba(0, 0, 0, 0.45),
		0 0 2px rgba(0, 0, 0, 0.4);
}

.results-table__name-cell .results-table__name-text--roxo,
.monster-drop-table__name .results-table__name-text--roxo,
.item-detail__name .results-table__name-text--roxo,
.item-detail__summary .results-table__name-text--roxo,
.monster-drop-sim__loot-name .results-table__name-text--roxo {
	color: #9d31ff;
	text-shadow: 0 0 1px rgba(0, 0, 0, 0.5), 0 0 3px rgba(157, 49, 255, 0.45);
}

/* Itens — laranja (cliente PW) */
.results-table__name-cell .results-table__name-text--laranja,
.monster-drop-table__name .results-table__name-text--laranja,
.item-detail__name .results-table__name-text--laranja,
.item-detail__summary .results-table__name-text--laranja,
.monster-drop-sim__loot-name .results-table__name-text--laranja {
	color: #ff6600;
	text-shadow: 0 0 1px rgba(0, 0, 0, 0.45), 0 0 2px rgba(255, 100, 0, 0.4);
}

.results-table__name-cell .results-table__name-text--verde,
.monster-drop-table__name .results-table__name-text--verde,
.item-detail__name .results-table__name-text--verde,
.item-detail__summary .results-table__name-text--verde,
.monster-drop-sim__loot-name .results-table__name-text--verde {
	color: #00ff7f;
	text-shadow: 0 0 1px rgba(0, 0, 0, 0.55), 0 0 2px rgba(0, 255, 128, 0.35);
}

/* Missões (tasks.type) — pesquisa e título da página de missão */
:is(.results-table__name-cell .results-table__name-text, .mission-detail .results-table__name-text, .item-detail-table__name .results-table__name-text).mission-type--unknown {
	color: #e8e6e3;
}

:is(.results-table__name-cell .results-table__name-text, .mission-detail .results-table__name-text, .item-detail-table__name .results-table__name-text).mission-type--0,
:is(.results-table__name-cell .results-table__name-text, .mission-detail .results-table__name-text, .item-detail-table__name .results-table__name-text).mission-type--3,
:is(.results-table__name-cell .results-table__name-text, .mission-detail .results-table__name-text, .item-detail-table__name .results-table__name-text).mission-type--12,
:is(.results-table__name-cell .results-table__name-text, .mission-detail .results-table__name-text, .item-detail-table__name .results-table__name-text).mission-type--113 {
	color: #f0f0f0;
	text-shadow: 0 0 1px rgba(0, 0, 0, 0.45);
}

:is(.results-table__name-cell .results-table__name-text, .mission-detail .results-table__name-text, .item-detail-table__name .results-table__name-text).mission-type--1 {
	color: #7dd3fc;
}

:is(.results-table__name-cell .results-table__name-text, .mission-detail .results-table__name-text, .item-detail-table__name .results-table__name-text).mission-type--2,
:is(.results-table__name-cell .results-table__name-text, .mission-detail .results-table__name-text, .item-detail-table__name .results-table__name-text).mission-type--4,
:is(.results-table__name-cell .results-table__name-text, .mission-detail .results-table__name-text, .item-detail-table__name .results-table__name-text).mission-type--5,
:is(.results-table__name-cell .results-table__name-text, .mission-detail .results-table__name-text, .item-detail-table__name .results-table__name-text).mission-type--7,
:is(.results-table__name-cell .results-table__name-text, .mission-detail .results-table__name-text, .item-detail-table__name .results-table__name-text).mission-type--8,
:is(.results-table__name-cell .results-table__name-text, .mission-detail .results-table__name-text, .item-detail-table__name .results-table__name-text).mission-type--10 {
	color: #e6c35c;
	text-shadow: 0 0 1px rgba(0, 0, 0, 0.35);
}

:is(.results-table__name-cell .results-table__name-text, .mission-detail .results-table__name-text, .item-detail-table__name .results-table__name-text).mission-type--6 {
	color: #4ade80;
}

:is(.results-table__name-cell .results-table__name-text, .mission-detail .results-table__name-text, .item-detail-table__name .results-table__name-text).mission-type--9,
:is(.results-table__name-cell .results-table__name-text, .mission-detail .results-table__name-text, .item-detail-table__name .results-table__name-text).mission-type--11 {
	color: #c084fc;
}

:is(.results-table__name-cell .results-table__name-text, .mission-detail .results-table__name-text, .item-detail-table__name .results-table__name-text).mission-type--100 {
	color: #60a5fa;
}

:is(.results-table__name-cell .results-table__name-text, .mission-detail .results-table__name-text, .item-detail-table__name .results-table__name-text).mission-type--101 {
	color: #fb923c;
}

:is(.results-table__name-cell .results-table__name-text, .mission-detail .results-table__name-text, .item-detail-table__name .results-table__name-text).mission-type--102 {
	color: #38bdf8;
}

:is(.results-table__name-cell .results-table__name-text, .mission-detail .results-table__name-text, .item-detail-table__name .results-table__name-text).mission-type--103 {
	color: #f9a8d4;
}

:is(.results-table__name-cell .results-table__name-text, .mission-detail .results-table__name-text, .item-detail-table__name .results-table__name-text).mission-type--104 {
	color: #facc15;
	text-shadow: 0 0 1px rgba(0, 0, 0, 0.4);
}

:is(.results-table__name-cell .results-table__name-text, .mission-detail .results-table__name-text, .item-detail-table__name .results-table__name-text).mission-type--105 {
	color: #6366f1;
}

:is(.results-table__name-cell .results-table__name-text, .mission-detail .results-table__name-text, .item-detail-table__name .results-table__name-text).mission-type--106 {
	color: #14b8a6;
}

:is(.results-table__name-cell .results-table__name-text, .mission-detail .results-table__name-text, .item-detail-table__name .results-table__name-text).mission-type--107 {
	color: #a3e635;
}

:is(.results-table__name-cell .results-table__name-text, .mission-detail .results-table__name-text, .item-detail-table__name .results-table__name-text).mission-type--108 {
	color: #f97316;
}

:is(.results-table__name-cell .results-table__name-text, .mission-detail .results-table__name-text, .item-detail-table__name .results-table__name-text).mission-type--109 {
	color: #22d3ee;
}

:is(.results-table__name-cell .results-table__name-text, .mission-detail .results-table__name-text, .item-detail-table__name .results-table__name-text).mission-type--110 {
	color: #f87171;
}

:is(.results-table__name-cell .results-table__name-text, .mission-detail .results-table__name-text, .item-detail-table__name .results-table__name-text).mission-type--111 {
	color: #22c55e;
}

:is(.results-table__name-cell .results-table__name-text, .mission-detail .results-table__name-text, .item-detail-table__name .results-table__name-text).mission-type--112 {
	color: #e879f9;
}

/* Página de missão — encadeamento e lista */
.mission-detail__stats {
	margin-top: 0.5rem;
}

.mission-detail__dl dd {
	word-break: break-word;
}

.mission-detail__tree-block {
	margin-top: 1.25rem;
}

.mission-detail__subheading {
	font-size: 0.95rem;
	font-weight: 600;
	margin: 1rem 0 0.5rem;
	color: #a8b2c3;
}

.mission-detail__chain {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	list-style: none;
	padding: 0;
	margin: 0;
	gap: 0.35rem 0.5rem;
	line-height: 1.45;
}

.mission-detail__chain-item {
	display: inline-flex;
	align-items: baseline;
	flex-wrap: wrap;
	gap: 0.25rem 0.35rem;
}

.mission-detail__chain-item + .mission-detail__chain-item::before {
	content: '→';
	color: #6a7388;
	font-weight: 600;
	margin-right: 0.35rem;
}

.mission-detail__chain-link {
	color: #8ab4e8;
	text-decoration: none;
}

.mission-detail__chain-link:hover {
	text-decoration: underline;
}

.mission-detail__chain-current {
	color: #e8e6e3;
	font-weight: 600;
}

.mission-detail__chain-item--current .mission-detail__chain-id {
	color: #8a93a8;
	font-weight: normal;
}

.mission-detail__chain-id {
	font-size: 0.85rem;
	color: #6a7388;
}

.mission-detail__children {
	list-style: none;
	padding: 0;
	margin: 0;
}

.mission-detail__child {
	margin: 0.35rem 0;
}

.mission-detail__child a {
	color: #8ab4e8;
	text-decoration: none;
}

.mission-detail__child a:hover {
	text-decoration: underline;
}

.mission-detail__rewards {
	margin-top: 1.25rem;
}

/* Footer */
.site-footer {
	margin-top: auto;
	padding: 1rem 1.25rem;
	border-top: 1px solid #2a3142;
	font-size: 0.8rem;
	color: #6a7388;
}

.site-footer__inner {
	max-width: 960px;
	margin: 0 auto;
	text-align: center;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.65rem;
}

.site-footer__line {
	margin: 0;
}

.site-footer__actions {
	margin: 0;
}

.site-footer__link-btn {
	background: none;
	border: none;
	padding: 0;
	font: inherit;
	color: #7eb8ff;
	cursor: pointer;
	text-decoration: underline;
}

.site-footer__link-btn:hover {
	color: #a8d0ff;
}

/* Anúncios (acima da pesquisa / topo do conteúdo principal) */
.site-ads {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.75rem;
	width: 100%;
	max-width: 728px;
	margin: 0 auto 1rem;
}

.site-ads__link {
	display: block;
	line-height: 0;
	border-radius: 4px;
	overflow: hidden;
	border: 1px solid #2a3142;
	transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.site-ads__link:hover {
	border-color: #3a4a62;
	box-shadow: 0 2px 12px rgba(0, 0, 0, 0.35);
	text-decoration: none;
}

.site-ads__img {
	display: block;
	max-width: 100%;
	height: auto;
	width: 100%;
}

.search-hero .site-ads {
	margin-bottom: 1.25rem;
}

/* Modal beta / reporte */
.pwdata-modal {
	position: fixed;
	inset: 0;
	z-index: 10000;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 1rem;
	box-sizing: border-box;
}

/* O atributo hidden deve ganhar sobre display:flex acima (senão o modal de reporte aparece ao carregar). */
.pwdata-modal[hidden] {
	display: none !important;
}

.pwdata-modal--hidden {
	display: none !important;
}

.pwdata-modal__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0.65);
}

.pwdata-modal__panel {
	position: relative;
	z-index: 1;
	max-width: 28rem;
	width: 100%;
	background: #1a1d26;
	border: 1px solid #3a4458;
	border-radius: 8px;
	padding: 1.25rem 1.35rem;
	box-shadow: 0 12px 40px rgba(0, 0, 0, 0.5);
}

.pwdata-modal__title {
	margin: 0 0 0.75rem;
	font-size: 1.15rem;
	color: #e8e6e3;
}

.pwdata-modal__text {
	margin: 0 0 0.65rem;
	font-size: 0.92rem;
	color: #b8c0d0;
}

.pwdata-modal__text--small {
	font-size: 0.85rem;
	color: #8a93a5;
}

.pwdata-modal__label {
	display: block;
	margin-bottom: 0.35rem;
	font-size: 0.85rem;
	color: #9aa3b5;
}

.pwdata-modal__textarea {
	width: 100%;
	min-height: 7rem;
	resize: vertical;
	font-family: inherit;
	font-size: 0.95rem;
}

.pwdata-modal__actions {
	margin-top: 1rem;
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	justify-content: flex-end;
}

.pwdata-modal__err {
	margin: 0.5rem 0 0;
	font-size: 0.85rem;
	color: #f0a0a0;
}

/* Notificação após envio de reporte */
.pwdata-toast {
	position: fixed;
	bottom: 1.25rem;
	left: 50%;
	transform: translateX(-50%);
	z-index: 10001;
	max-width: min(22rem, calc(100vw - 2rem));
	padding: 0.75rem 1.15rem;
	background: #243040;
	border: 1px solid #3d5a72;
	border-radius: 8px;
	color: #d8e8dc;
	font-size: 0.9rem;
	line-height: 1.35;
	text-align: center;
	box-shadow: 0 10px 32px rgba(0, 0, 0, 0.5);
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.28s ease, visibility 0.28s ease;
}

.pwdata-toast--visible {
	opacity: 1;
	visibility: visible;
}

.pwdata-toast[hidden] {
	display: none !important;
}

.btn--ghost {
	background: transparent;
	border: 1px solid #3a4458;
	color: #c8cdda;
}

.btn--ghost:hover {
	background: #232732;
	border-color: #4a5568;
	color: #e8e6e3;
}

/* Ferramentas (tools/) */
.tools-page {
	max-width: 960px;
	margin: 0 auto;
	padding: 1rem 1.25rem 2rem;
}

.tools-page__breadcrumb {
	font-size: 0.88rem;
	color: #8a93a8;
	margin: 0 0 0.75rem;
}

.tools-page__crumb {
	color: #8ab4e8;
	text-decoration: none;
}

.tools-page__crumb:hover {
	text-decoration: underline;
}

.tools-page__crumb--current {
	color: #c5cdd8;
	pointer-events: none;
}

.tools-page__crumb-sep {
	margin: 0 0.35rem;
	color: #5a6478;
}

.tools-page__title {
	font-size: 1.35rem;
	font-weight: 600;
	margin: 0 0 0.5rem;
	color: #e8e6e3;
}

.tools-page__lead {
	margin: 0 0 1.5rem;
	font-size: 0.95rem;
	line-height: 1.5;
	color: #a0aab6;
	max-width: 42rem;
}

.tools-page__empty {
	color: #8a93a8;
	font-size: 0.92rem;
	margin: 0.5rem 0 0;
}

.tools-page__warn {
	margin-top: 1rem;
}

.tools-page__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
}

.tools-page__card {
	display: block;
	padding: 1rem 1.15rem;
	border-radius: 6px;
	border: 1px solid #3a4458;
	background: linear-gradient(165deg, #1e2430 0%, #1a1d26 100%);
	text-decoration: none;
	color: inherit;
	transition: border-color 0.15s ease;
}

.tools-page__card:hover {
	border-color: #5a6a88;
}

.tools-page__card-title {
	display: block;
	font-size: 1.05rem;
	font-weight: 600;
	color: #c5cdd8;
	margin-bottom: 0.35rem;
}

.tools-page__card-desc {
	display: block;
	font-size: 0.88rem;
	line-height: 1.45;
	color: #8a93a8;
}

.tools-section__title {
	font-size: 1.05rem;
	font-weight: 600;
	margin: 0 0 0.65rem;
	color: #c5cdd8;
}

.tools-sim-search {
	margin-bottom: 1.75rem;
}

.tools-sim-search__form {
	max-width: 36rem;
}

.tools-sim-search__label {
	display: block;
	font-size: 0.88rem;
	color: #a8b2c3;
	margin-bottom: 0.35rem;
}

.tools-sim-search__row {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	align-items: center;
}

.tools-sim-search__input {
	flex: 1 1 12rem;
	min-width: 0;
}

.tools-sim-search__hint {
	margin: 0.75rem 0 0;
	font-size: 0.85rem;
	color: #8a93a8;
	max-width: 40rem;
}

.tools-sim-results {
	margin-bottom: 1.75rem;
}

.tools-sim-results__table {
	margin-top: 0.5rem;
}

.tools-sim-results__th-action {
	width: 1%;
	white-space: nowrap;
}

.tools-sim-results__action {
	text-align: right;
	vertical-align: middle;
}

.tools-sim-loaded {
	margin-top: 1.5rem;
	padding-top: 1.25rem;
	border-top: 1px solid #2a3142;
}

.tools-sim-loaded__head {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	align-items: flex-start;
	margin-bottom: 1rem;
}

.tools-sim-loaded__icon {
	flex-shrink: 0;
	border-radius: 6px;
	border: 1px solid #2a3142;
}

.tools-sim-loaded__meta {
	min-width: 0;
}

.tools-sim-loaded__name {
	font-size: 1.15rem;
	font-weight: 600;
	margin: 0 0 0.25rem;
	color: #e8e6e3;
}

.tools-sim-loaded__ids {
	margin: 0 0 0.5rem;
	font-size: 0.88rem;
	color: #8a93a8;
}

.tools-sim-loaded__links {
	margin: 0;
	font-size: 0.88rem;
}

.tools-sim-loaded__links a {
	color: #8ab4e8;
	text-decoration: none;
}

.tools-sim-loaded__links a:hover {
	text-decoration: underline;
}

.tools-sim-loaded .monster-drops {
	margin-bottom: 0;
}
