.uzoria-profile-section {
	margin-top: 24px;
	padding: clamp(18px, 3vw, 30px);
	border: 1px solid rgba(220, 188, 125, .27);
	background: linear-gradient(140deg, rgba(16, 40, 50, .94), rgba(7, 22, 29, .98));
}
.uzoria-profile-section__heading {
	display: flex;
	justify-content: space-between;
	align-items: end;
	gap: 20px;
	margin-bottom: 21px;
	padding-bottom: 15px;
	border-bottom: 1px solid rgba(174, 221, 212, .17);
}
.uzoria-profile-section__heading span { color: #dcbc7d; font-size: 10px; letter-spacing: .22em; text-transform: uppercase; }
.uzoria-profile-section__heading h2 { margin: 5px 0 0; color: #f3ede2; font: 400 clamp(26px, 3vw, 36px) Georgia, serif; }
.uzoria-profile-section__heading p { margin: 0; color: #9eb9b4; font-size: 12px; text-align: right; }
.uzoria-profile-section__heading > strong { color: #e8d09b; font: 400 19px Georgia, serif; white-space: nowrap; }
.uzoria-profile-empty { grid-column: 1 / -1; margin: 0; padding: 24px; color: #9eb9b4; text-align: center; border: 1px dashed rgba(174, 221, 212, .22); }
.uzoria-profile-empty[hidden], .uzoria-collection-card[hidden] { display: none !important; }

.uzoria-profession-group + .uzoria-profession-group { margin-top: 27px; }
.uzoria-profession-group > h3 { margin: 0 0 13px; padding-bottom: 9px; border-bottom: 1px solid rgba(174, 221, 212, .17); color: #dcbc7d; font: 400 21px Georgia, serif; }
.uzoria-professions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.uzoria-profession-card { padding: 18px 20px; border: 1px solid rgba(174, 221, 212, .2); background: #0b2027; }
.uzoria-profession-card__head { display: flex; align-items: center; gap: 14px; min-width: 0; }
.uzoria-profession-card__mark { display: grid; flex: none; place-items: center; width: 38px; height: 38px; color: #dcbc7d; border: 1px solid rgba(220, 188, 125, .47); transform: rotate(45deg); }
.uzoria-profession-card__mark--icon { overflow: hidden; transform: none; background: #07171d; }
.uzoria-profession-card__mark img { display: block; width: 100%; height: 100%; object-fit: cover; }
.uzoria-profession-card__head > div { min-width: 0; flex: 1; }
.uzoria-profession-card h4 { margin: 0; color: #f3e8d1; font: 400 20px Georgia, serif; }
.uzoria-profession-card small { color: #8faeaa; font-size: 10px; }
.uzoria-profession-card strong { color: #f4d794; font-size: 15px; white-space: nowrap; font-variant-numeric: tabular-nums; }
.uzoria-profession-card__progress { height: 8px; margin-top: 18px; overflow: hidden; background: #06151b; border: 1px solid rgba(174, 221, 212, .2); }
.uzoria-profession-card__progress span { display: block; height: 100%; background: linear-gradient(90deg, #8b7145, #e0bc78); }

.uzoria-collection-filter { display: inline-flex; margin-bottom: 17px; border: 1px solid rgba(220, 188, 125, .35); }
.uzoria-collection-filter button { padding: 9px 17px; color: #c6d9d3; background: #0b2027; border: 0; cursor: pointer; font-size: 11px; }
.uzoria-collection-filter button + button { border-left: 1px solid rgba(220, 188, 125, .35); }
.uzoria-collection-filter button.is-active { color: #15242a; background: #dcbc7d; font-weight: 700; }
.uzoria-collection-filter button:focus-visible { outline: 2px solid #fff2c4; outline-offset: 2px; }
.uzoria-collection-filter button:disabled { opacity: .45; cursor: default; }
.uzoria-collection-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(178px, 1fr)); gap: 9px; }
.uzoria-collection-card { display: flex; position: relative; align-items: center; gap: 9px; min-width: 0; min-height: 63px; padding: 8px; border: 1px solid rgba(174, 221, 212, .19); background: #0a1d23; color: #e9ece4; text-decoration: none; }
.uzoria-collection-card:hover { border-color: #dcbc7d; background: #183035; color: #fff6dc; }
.uzoria-collection-card img { width: 42px; height: 42px; flex: none; object-fit: cover; border: 1px solid #755d40; border-radius: 3px; background: #06151a; }
.uzoria-collection-card span { min-width: 0; overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; font-size: 11px; font-weight: 700; line-height: 1.3; }
.uzoria-collection-card.is-unowned { opacity: .72; }
.uzoria-collection-card small { position: absolute; right: 5px; bottom: 3px; color: #acb6a8; font-size: 8px; }
.uzoria-collection-source { margin: 19px 0 0; color: #9eb9b4; font-size: 11px; }

.uzoria-battleground-summary { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin-bottom: 19px; border: 1px solid rgba(174, 221, 212, .19); }
.uzoria-battleground-summary > div { padding: 15px 19px; background: #0b2027; border-right: 1px solid rgba(174, 221, 212, .17); }
.uzoria-battleground-summary > div:last-child { border-right: 0; }
.uzoria-battleground-summary strong { display: block; color: #e8d09b; font: 400 25px Georgia, serif; font-variant-numeric: tabular-nums; }
.uzoria-battleground-summary span { color: #9eb9b4; font-size: 10px; letter-spacing: .1em; text-transform: uppercase; }
.uzoria-battleground-table-wrap { overflow-x: auto; }
.uzoria-battleground-table { width: 100%; min-width: 820px; border-collapse: collapse; font-size: 11px; font-variant-numeric: tabular-nums; }
.uzoria-battleground-table th { padding: 13px 10px; color: #dfc082; background: #112a30; text-align: left; font-size: 10px; text-transform: uppercase; }
.uzoria-battleground-table td { padding: 12px 10px; border-top: 1px solid rgba(174, 221, 212, .12); color: #d8e3da; }
.uzoria-battleground-table tr:nth-child(even) td { background: rgba(17, 42, 48, .55); }
.uzoria-battleground-table strong { color: #f1e6cf; }
.uzoria-battleground-result { padding: 5px 7px; font-size: 10px; font-weight: 700; }
.uzoria-battleground-result.is-win { color: #a9e5c0; background: rgba(48, 123, 77, .2); }
.uzoria-battleground-result.is-loss { color: #e7aaa2; background: rgba(129, 54, 47, .2); }
.uzoria-battleground-pager { display: flex; justify-content: space-between; align-items: center; gap: 10px; margin-top: 18px; color: #9eb9b4; font-size: 11px; }
.uzoria-battleground-pager a { display: inline-block; padding: 8px 11px; border: 1px solid rgba(220, 188, 125, .35); }

/* Existing talents, achievements and arena views use the same card language. */
.uzoria-profile-section--talents #spec-links { display: flex; gap: 8px; flex-wrap: wrap; margin: 0 0 23px; }
.uzoria-profile-section--talents #spec-links > span { display: none; }
.uzoria-profile-section--talents #spec-links a { padding: 9px 13px; border: 1px solid rgba(220, 188, 125, .36); background: #0b2027; color: #ead8b2; font-size: 11px; text-decoration: none; }
.uzoria-profile-section--talents #spec-links a:hover { background: #263d39; color: #fff1d2; }
.uzoria-profile-section--talents #spec-links a[aria-current="true"] { border-color: #e8c781; background: #34433a; color: #fff1d2; }
.uzoria-profile-section--talents .uzoria-empty-spec { color: #adbbb5; font-size: 12px; }
.uzoria-profile-section--talents .talent-tree { margin: 7px; padding: 17px 10px; border: 1px solid rgba(174, 221, 212, .18); background: #0b2027; }
.uzoria-profile-section--talents .talent-tree .header .name { color: #e8d09b; font: 18px Georgia, serif; }
.uzoria-profile-section--talents .talent-tree .header .points { color: #e6eee4; font-size: 15px; }
.uzoria-profile-section--talents .glyphs { margin-top: 11px; padding: 13px; background: rgba(7, 22, 29, .76); border: 1px solid rgba(174, 221, 212, .15); }
.uzoria-profile-section--talents .glyphs a { font-size: 11px; }
.uzoria-profile-section--achievements .columns > .title { color: #e8d09b; }
.uzoria-profile-section--achievements #categories { padding: 10px; border: 1px solid rgba(174, 221, 212, .17); background: #0b2027; }
.uzoria-profile-section--achievements #categories a { padding: 6px 8px; border-bottom: 1px solid rgba(174, 221, 212, .1); font-size: 11px; }
.uzoria-profile-section--achievements .summary.title { color: #f1e6d0; font: 22px Georgia, serif; }
.uzoria-profile-section--achievements #achievements { border-spacing: 0 8px; }
.uzoria-profile-section--achievements #achievements .achievement td { padding: 11px; background: #0b2027; border-block: 1px solid rgba(174, 221, 212, .16); }
.uzoria-profile-section--achievements #achievements .achievement td:first-child { border-left: 1px solid rgba(174, 221, 212, .16); }
.uzoria-profile-section--achievements #achievements .achievement td:last-child { border-right: 1px solid rgba(174, 221, 212, .16); }
.uzoria-profile-section--achievements .achievement.earned .name { color: #ead29b; }
.uzoria-profile-section--achievements .achievement .description, .uzoria-profile-section--achievements .achievement .earned-date { color: #9fb6b8; font-size: 11px; }
.uzoria-profile-section--achievements #progress-bars { padding: 13px; border: 1px solid rgba(174, 221, 212, .17); background: #0b2027; }
.uzoria-profile-section--achievements progress.progress.is-primary::-webkit-progress-value { background-color: #dcbc7d; }
.uzoria-profile-section--achievements progress.progress.is-primary::-moz-progress-bar { background-color: #dcbc7d; }
.uzoria-profile-section--arena .columns { align-items: stretch; }
.uzoria-profile-section--arena .columns > .column:first-child { color: #e9d9b6; background: #0b2027; border: 1px solid rgba(174, 221, 212, .18); padding: 16px; }
.uzoria-profile-section--arena .columns > .column:first-child > div { font-size: 12px; line-height: 1.9; }
.uzoria-profile-section--arena .arena-team { min-height: 170px; background: #0b2027; border: 1px solid rgba(174, 221, 212, .18); }
.uzoria-profile-section--arena .arena-team .info { font-size: 12px; line-height: 1.6; }
.uzoria-profile-section--arena .arena-team .info a { color: #ead29b; font: 18px Georgia, serif; }

@media (max-width: 700px) {
	.uzoria-professions { grid-template-columns: 1fr; }
	.uzoria-profile-section__heading { align-items: start; }
	.uzoria-collection-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 440px) {
	.uzoria-profile-section__heading { display: block; }
	.uzoria-profile-section__heading p, .uzoria-profile-section__heading > strong { display: block; margin-top: 7px; text-align: left; }
	.uzoria-collection-grid { grid-template-columns: 1fr; }
	.uzoria-battleground-summary > div { padding: 10px; }
	.uzoria-battleground-summary strong { font-size: 21px; }
	.uzoria-battleground-pager { flex-wrap: wrap; }
}
