/* 1.0.100 — approved PvP/Guild artwork; live content occupies alpha cut-outs.
   Both canvases use one uniform scale from the native 1672 × 941 composition. */
#nexoriaPvpPanel, #nexoriaGuildPanel { padding: 0; align-items: center; justify-content: center; }
#nexoriaPvpPanel .nx200-pvp-canvas,
#nexoriaGuildPanel .nx200-guild-canvas {
  position: relative; display: block; box-sizing: border-box; container-type: inline-size;
  width: min(1672px, calc(100vw - 12px), calc((100dvh - 12px) * 1.776833));
  height: auto; aspect-ratio: 1672 / 941; min-height: 0; max-height: none;
  margin: 0; padding: 0; border: 0; border-radius: 0; overflow: hidden;
  color: #f4e6cc; font-family: Georgia, "Times New Roman", serif;
  background-color: #241b13; background-size: 100% 100%; background-repeat: no-repeat;
  box-shadow: 0 8px 36px #0009;
}
#nexoriaPvpPanel .nx200-pvp-canvas { background-image: url("assets/ui-shops-200/pvp-chrome.png"); }
#nexoriaGuildPanel .nx200-guild-canvas { background-image: url("assets/ui-shops-200/guild-chrome.png"); }
#nexoriaPvpPanel .nx108-panel-header, #nexoriaGuildPanel .nx108-panel-header,
#nexoriaPvpPanel .nx108-pvp-body, #nexoriaPvpPanel .nx108-pvp-actions { display: contents; }
#nexoriaPvpPanel .nx108-panel-header > h2,
#nexoriaGuildPanel .nx108-panel-header > h2,
#nexoriaPvpPanel .nx108-pvp-leaderboards h3,
.nx200-visually-hidden { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip-path: inset(50%); white-space: nowrap; border: 0 !important; }
#nexoriaPvpPanel #nx108ClosePvp, #nexoriaGuildPanel #nx108CloseGuild {
  position: absolute; z-index: 5; left: 92.35%; top: 8.8%; width: 4.1%; height: 6.5%;
  min-width: 0; min-height: 0; border: 0; padding: 0; color: transparent;
  background: transparent; box-shadow: none; cursor: pointer;
}
#nexoriaPvpPanel button:focus-visible, #nexoriaGuildPanel button:focus-visible,
#nexoriaPvpPanel .nx108-pvp-leaderboards:focus-visible { outline: 2px solid #fff0a5; outline-offset: 1px; }
#nexoriaPvpPanel .nx108-pvp-self {
  position: absolute; left: 6.1%; top: 16.79%; width: 87.8%; height: 10.63%;
  display: grid; grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .65%; padding: .35%; box-sizing: border-box;
  background: #241b13 url("assets/ui-shops-200/shop-panel-fill.png") repeat;
}
#nexoriaPvpPanel .nx108-pvp-self > span {
  display: flex; flex-direction: column; justify-content: center; min-width: 0; padding: 0 .25em;
  border: 1px solid #a27638; border-radius: .45cqw; box-shadow: inset 0 0 .8cqw #0008;
  background: linear-gradient(110deg, #4e3924a6, #17100c80); color: #e7d8bd;
  font-size: 1.45cqw; line-height: 1.15;
}
#nexoriaPvpPanel .nx108-pvp-self b { margin: .15em 0 0; font-size: 2.05cqw; font-weight: 500; font-variant-numeric: tabular-nums; color: #fff5e4; }
#nexoriaPvpPanel .nx108-pvp-leaderboards {
  position: absolute; left: 4.36%; top: 28.37%; width: 91.1%; height: 51.66%;
  display: grid; grid-template-columns: 1fr 1fr; gap: 1.35%; padding: 0;
}
#nexoriaPvpPanel .nx108-pvp-leaderboards > section { position: relative; display: block; padding: 0; border: 0; border-radius: 0; background: none; overflow: hidden; }
#nexoriaPvpPanel .nx200-pvp-column-head {
  position: absolute; top: 18.2%; left: 2%; right: 2%; height: 8.4%; display: grid;
  grid-template-columns: 12% 48% 15% 25%; align-items: center; text-align: center;
  font-size: 1.22cqw; color: #d1be9a; background: #251c13;
}
#nexoriaPvpPanel .nx108-pvp-leaderboards ol {
  position: absolute; top: 26.6%; left: 2%; right: 2%; height: 72%; min-height: 0;
  margin: 0; padding: 0; list-style: none; background: #211912 url("assets/ui-shops-200/shop-panel-fill.png") repeat;
  overflow-x: hidden; overflow-y: auto; scrollbar-width: thin; scrollbar-color: #ae8145 #1b140d; scrollbar-gutter: stable;
}
#nexoriaPvpPanel .nx108-pvp-leaderboards li {
  display: grid; grid-template-columns: 12% 48% 15% 25%; gap: 0; align-items: center;
  box-sizing: border-box; height: 20%; min-height: 20%; padding: .3cqw 0;
  color: #f4eadb; font-size: 1.38cqw; text-align: center; border: 1px solid #87613588;
  border-radius: .4cqw; background: linear-gradient(110deg, #4a342545, #110d0960);
}
#nexoriaPvpPanel .nx108-pvp-leaderboards li.is-self { border-color: #f0d588; background: linear-gradient(110deg, #866032cc, #3d2a16cc); box-shadow: inset 0 0 .65cqw #f8d16b50; }
#nexoriaPvpPanel .nx108-pvp-leaderboards li > strong { font: inherit; font-variant-numeric: tabular-nums; }
#nexoriaPvpPanel .nx108-pvp-leaderboards li.nx108-pvp-empty { display: grid; grid-template-columns: 1fr; height: 100%; color: #bca584; padding: 1em; white-space: normal; }
#nexoriaPvpPanel .nx200-pvp-rank { display: grid; place-items: center; width: 2.55cqw; height: 2.8cqw; margin: auto; font-size: 1.9cqw; font-weight: 500; }
#nexoriaPvpPanel [class*="is-medal-"] .nx200-pvp-rank { border: 1px solid #d4a344; border-radius: 50%; color: #ffe6a5; background: radial-gradient(#745125, #281b0e); box-shadow: 0 0 .25cqw #f2c46188; }
#nexoriaPvpPanel .is-medal-2 .nx200-pvp-rank { color: #eee9e1; border-color: #aaa8a3; background: radial-gradient(#636368, #232328); }
#nexoriaPvpPanel .is-medal-3 .nx200-pvp-rank { color: #f7c699; border-color: #b57647; background: radial-gradient(#7b4e30, #2e1e15); }
#nexoriaPvpPanel .nx200-public-identity, #nexoriaGuildPanel .nx200-public-identity { display: flex; align-items: center; gap: .75cqw; min-width: 0; text-align: left; }
#nexoriaPvpPanel .nx200-public-identity > span:last-child, #nexoriaGuildPanel .nx200-public-identity > span:last-child { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
#nexoriaPvpPanel .nx200-public-portrait, #nexoriaGuildPanel .nx200-public-portrait {
  flex: 0 0 3.2cqw; width: 3.2cqw; height: 3.2cqw; object-fit: cover; border: 1px solid #cb9e59;
  border-radius: 50%; box-sizing: border-box; background: #463629;
}
#nexoriaPvpPanel .nx200-public-portrait.is-unavailable, #nexoriaGuildPanel .nx200-public-portrait.is-unavailable { display: grid; place-items: center; color: #e4c18c; font: 600 1.35cqw Georgia, serif; }
#nexoriaPvpPanel .nx108-pvp-actions > button { position: absolute; padding: 0; min-width: 0; min-height: 0; margin: 0; color: transparent; border: 0; border-radius: 0; box-shadow: none; background: transparent center/contain no-repeat; cursor: pointer; }
#nexoriaPvpPanel #nx200PvpRulesOpen { left: 4.7847%; top: 82.5717%; width: 14.5335%; height: 8.9267%; background-image: url("assets/ui-shops-200/pvp-btn-rules.png"); }
#nexoriaPvpPanel #nx200PvpRankingFocus { left: 20.2153%; top: 82.5717%; width: 16.4474%; height: 8.9267%; background-image: url("assets/ui-shops-200/pvp-btn-rank.png"); }
#nexoriaPvpPanel #nx108PvpEnter { left: 38.8756%; top: 82.0404%; width: 26.4952%; height: 10.2019%; background-image: url("assets/ui-shops-200/pvp-btn-enter.png"); }
#nexoriaPvpPanel #nx108PvpShopOpen { left: 67.6435%; top: 82.4655%; width: 27.4522%; height: 9.1392%; background-image: url("assets/ui-shops-200/pvp-btn-shop.png"); }
#nexoriaPvpPanel .nx108-pvp-actions > button:hover:not(:disabled) { filter: brightness(1.14); }
#nexoriaPvpPanel .nx108-pvp-actions > button:disabled { opacity: .5; cursor: not-allowed; }
#nexoriaPvpPanel #nx108PvpMessage { position: absolute; left: 6%; right: 6%; top: 92.5%; margin: 0; min-height: 0; font-size: 1.02cqw; line-height: 1.15; color: #fff0d1; text-shadow: 0 1px 3px #000; text-align: center; }
#nexoriaPvpPanel .nx200-pvp-rules {
  position: absolute; z-index: 6; left: 21%; top: 24%; width: 58%; max-height: 60%; box-sizing: border-box;
  padding: 2cqw; border: 1px solid #d2ad65; border-radius: .75cqw; background: #2b2014fa;
  box-shadow: 0 0 0 100vmax #0007, 0 8px 30px #000b; overflow: auto; font-size: 1.45cqw;
}
#nexoriaPvpPanel .nx200-pvp-rules h3 { margin: 0 0 .7em; font-size: 1.9cqw; color: #f9d78a; }
#nexoriaPvpPanel .nx200-pvp-rules button { min-height: 0; padding: .45em 1.6em; font: inherit; border: 1px solid #cfa363; border-radius: .3cqw; color: #f4e3bc; background: #674323; }
/* Guild: resources stay in the header, navigation on the left, each pane scrolls independently. */
#nexoriaGuildPanel .nx108-guild-balance {
  position: absolute; left: 27.33%; top: 8.608%; width: 59.75%; height: 8.08%;
  display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .8%; padding: .45%; box-sizing: border-box;
  border: 0; font-size: 1.4cqw; background: #271d13 url("assets/ui-shops-200/shop-panel-fill.png") repeat;
}
#nexoriaGuildPanel .nx108-guild-balance span { display: flex; justify-content: center; align-items: center; gap: .7em; min-width: 0; padding: .25em; border: 1px solid #876239; border-radius: .35cqw; white-space: nowrap; }
#nexoriaGuildPanel .nx108-guild-balance b { color: #fff0d4; font-size: 1.55cqw; font-weight: 500; font-variant-numeric: tabular-nums; }
#nexoriaGuildPanel .nx108-guild-nav {
  position: absolute; left: 3.5885%; top: 17.9596%; width: 20.0957%; height: 63.3369%;
  display: flex; flex-direction: column; flex-wrap: nowrap; gap: 0; min-height: 0; margin: 0; padding: 0;
  border: 0; overflow-y: auto; overflow-x: hidden; scrollbar-width: thin; background: #251b12;
}
#nexoriaGuildPanel .nx108-guild-nav > button {
  flex: 0 0 14.2857%; width: 100%; min-width: 0; min-height: 0; margin: 0; padding: .25em .45em .25em 23%;
  border: 0; border-radius: 0; box-shadow: none; color: #f6e8ce; text-align: left; white-space: nowrap;
  font: 1.63cqw/1.15 Georgia, serif; background-color: #291e14;
  background-image: url("assets/ui-shops-200/guild-menu-list-rim.png"); background-size: contain; background-position: center; background-repeat: no-repeat;
}
#nexoriaGuildPanel .nx108-guild-nav > button::before { content: ""; position: absolute; width: 3.5cqw; height: 3.5cqw; margin-left: -4.2cqw; margin-top: -.7cqw; background: center/contain no-repeat; }
#nexoriaGuildPanel [data-nx-guild-view="list"]::before { background-image: url("assets/ui-shops-200/guild-icon-list.png"); }
#nexoriaGuildPanel [data-nx-guild-view="current"]::before { background-image: url("assets/ui-shops-200/guild-icon-members.png"); }
#nexoriaGuildPanel [data-nx-guild-view="shop"]::before { background-image: url("assets/ui-shops-200/guild-icon-shop.png"); }
#nexoriaGuildPanel [data-nx-guild-view="rewards"]::before { background-image: url("assets/ui-shops-200/guild-icon-rewards.png"); }
#nexoriaGuildPanel [data-nx-guild-view="quests"]::before { background-image: url("assets/ui-shops-200/guild-icon-quests.png"); }
#nexoriaGuildPanel [data-nx-guild-view="construction"]::before { background-image: url("assets/ui-shops-200/guild-icon-buildings.png"); }
#nexoriaGuildPanel [data-nx-guild-view="applications"]::before { background-image: url("assets/ui-shops-200/guild-icon-applications.png"); }
#nexoriaGuildPanel .nx108-guild-nav > button.is-active { background-color: #74502e; color: #fff5d6; box-shadow: inset 0 0 .9cqw #efbb5490; text-shadow: 0 1px 2px #000; }
#nexoriaGuildPanel .nx108-guild-nav > button:hover:not(:disabled) { filter: brightness(1.15); }
#nexoriaGuildPanel .nx108-guild-body {
  position: absolute; left: 25.24%; top: 18.59%; width: 70.34%; height: 71.84%;
  display: block; box-sizing: border-box; margin: 0; padding: .55cqw; border: 0;
  min-width: 0; min-height: 0; max-height: none; overflow: hidden;
  background: #241b13 url("assets/ui-shops-200/shop-panel-fill.png") repeat; font-size: 1.3cqw;
}
#nexoriaGuildPanel .nx108-guild-body > .nx108-guild-view { height: 100%; min-height: 0; overflow-y: auto; overscroll-behavior: contain; }
#nexoriaGuildPanel .nx108-guild-body > .nx108-guild-current {
  position: relative; display: grid; grid-template-rows: 17% minmax(0, 1fr) 12.5%;
  height: 100%; min-height: 0; margin: 0; overflow: hidden; gap: .65cqw;
  box-sizing: border-box; padding: 0; border: 0; background: transparent;
}
#nexoriaGuildPanel .nx108-guild-current-header { display: grid; grid-template-columns: 7cqw minmax(0, 1fr) auto; height: 100%; min-height: 0; padding: 0 1cqw; border-bottom: 1px solid #8d66384d; gap: 1cqw; }
#nexoriaGuildPanel .nx108-guild-current-emblem { width: 6cqw; min-height: 0; height: 100%; padding: 0; border: 0; background: none; box-shadow: none; }
#nexoriaGuildPanel .nx108-guild-current-emblem img { width: 5.6cqw; height: 5.6cqw; object-fit: contain; }
#nexoriaGuildPanel .nx108-guild-current-emblem small, #nexoriaGuildPanel .nx108-guild-current-header > div > small, #nexoriaGuildPanel #nx108GuildMemberCount { display: none; }
#nexoriaGuildPanel .nx108-guild-name-line h3 { font-size: 2.15cqw; margin: 0; }
#nexoriaGuildPanel .nx108-guild-current-header p { font-size: 1.15cqw; margin: .25em 0; color: #cbb18b; }
#nexoriaGuildPanel .nx108-guild-level b { font-size: 1.7cqw; }
#nexoriaGuildPanel .nx197-guild-member-section { display: grid; grid-template-rows: 10% minmax(0, 1fr); min-height: 0; margin: 0; overflow: hidden; }
#nexoriaGuildPanel .nx197-guild-member-head,
#nexoriaGuildPanel .nx108-guild-member-profile { grid-template-columns: 35% 25% 12% 28%; gap: 0; }
#nexoriaGuildPanel .nx197-guild-member-head { padding: 0 .7cqw; font-size: 1.35cqw; min-height: 0; color: #ead7b2; text-align: center; border: 1px solid #8e6a4080; background: #55402b55; }
#nexoriaGuildPanel .nx108-guild-current #nx108GuildMembers { max-height: none; height: 100%; min-height: 0; padding: 0; margin: 0; scrollbar-width: thin; scrollbar-color: #ab8048 #20170d; }
#nexoriaGuildPanel .nx108-guild-current .nx108-guild-member { min-height: 16.6667%; height: 16.6667%; box-sizing: border-box; margin: 0; border: 0; border-bottom: 1px solid #92714788; background: none; border-radius: 0; }
#nexoriaGuildPanel .nx108-guild-member-profile { height: 100%; min-height: 0; padding: .25cqw .7cqw; border: 0; border-radius: 0; font: 1.38cqw/1.15 Georgia, serif; text-align: center; color: #f0e5d0; background: #372a1c55; box-shadow: none; }
#nexoriaGuildPanel .nx200-public-portrait { border-radius: .25cqw; flex-basis: 3.4cqw; width: 3.4cqw; height: 3.4cqw; }
#nexoriaGuildPanel .nx200-guild-role { justify-self: center; width: 85%; padding: .38em .15em; border: 1px solid #807c73; border-radius: .4cqw; background: linear-gradient(#58554b70, #27251f90); font-size: 1.22cqw; }
#nexoriaGuildPanel .nx200-guild-role.is-owner { border-color: #d1a55f; color: #ffdf93; background: linear-gradient(#8a5b2590, #3e271290); }
#nexoriaGuildPanel .nx200-guild-role.is-vice { border-color: #a4bfe1; color: #d2e5ff; background: linear-gradient(#49618690, #222d4790); }
#nexoriaGuildPanel .nx197-member-online, #nexoriaGuildPanel .nx197-member-offline { font-size: 1.19cqw; white-space: nowrap; }
#nexoriaGuildPanel .nx197-member-online::before, #nexoriaGuildPanel .nx197-member-offline::before { content: ""; display: inline-block; width: .8cqw; height: .8cqw; margin-right: .55cqw; border-radius: 50%; background: #908b81; }
#nexoriaGuildPanel .nx197-member-online::before { background: #70d776; box-shadow: 0 0 .4cqw #5ade5c88; }
#nexoriaGuildPanel .nx108-guild-current-actions { display: grid; grid-template-columns: 1.4fr 1fr 1fr 1fr; align-items: center; gap: .6cqw; margin: 0; min-height: 0; }
#nexoriaGuildPanel .nx108-guild-current-actions > span { font-size: 1.3cqw; color: #e5d1ac; }
#nexoriaGuildPanel .nx108-guild-current-actions > button { min-width: 0; min-height: 0; height: 100%; margin: 0; padding: 0 .5em; border: 0; border-radius: 0; color: #f8e8c7; font: 1.45cqw Georgia, serif; background: #5a3c21 url("assets/ui-shops-200/guild-btn-info-rim.png") center/contain no-repeat; }
#nexoriaGuildPanel #nx200GuildManageOpen { background-color: #344135; background-image: url("assets/ui-shops-200/guild-btn-manage-rim.png"); }
#nexoriaGuildPanel #nx108GuildBossEnter { background-color: #694626; }
#nexoriaGuildPanel .nx108-guild-member-actions, #nexoriaGuildPanel .nx200-guild-management, #nexoriaGuildPanel #nx108GuildRenameOpen { display: none; }
#nexoriaGuildPanel .is-managing .nx108-guild-member-actions { display: flex; flex-wrap: wrap; gap: .35cqw; padding: .25cqw .7cqw; }
#nexoriaGuildPanel .is-managing .nx108-guild-member { height: auto; }
#nexoriaGuildPanel .is-managing .nx108-guild-member-profile { height: 4.1cqw; }
#nexoriaGuildPanel .is-managing #nx108GuildRenameOpen { display: inline-block; }
#nexoriaGuildPanel .is-managing .nx200-guild-management { display: flex; position: absolute; z-index: 2; right: .8cqw; top: 4.6cqw; gap: .5cqw; padding: .35cqw; border: 1px solid #a7814c; background: #2d2216f7; }
#nexoriaGuildPanel .nx108-guild-member-actions button, #nexoriaGuildPanel .nx200-guild-management button { min-height: 0; padding: .35em .65em; font: 1.12cqw Georgia, serif; border: 1px solid #99713a; border-radius: .3cqw; color: #edd6ab; background: #5b3c22; }
#nexoriaGuildPanel .nx200-guild-info, #nexoriaGuildPanel .nx108-guild-disband-vote { position: absolute; z-index: 3; left: 8%; top: 17%; width: 84%; box-sizing: border-box; padding: 1.3cqw; border: 1px solid #b18c50; border-radius: .6cqw; color: #f0d9b5; background: #2b2014fb; box-shadow: 0 .5cqw 2cqw #0008; font-size: 1.35cqw; }
#nexoriaGuildPanel .nx200-guild-info h3 { margin: 0; font-size: 1.8cqw; }
#nexoriaGuildPanel #nx108GuildMessage { position: absolute; bottom: 0; left: 0; right: 0; pointer-events: none; margin: 0; font-size: 1.05cqw; min-height: 0; background: #21170bdd; }
#nexoriaGuildPanel #nx108GuildMessage:empty { display: none; }
#nexoriaGuildPanel .nx108-guild-body button:disabled { opacity: .5; cursor: not-allowed; }
#nexoriaGuildPanel .nx108-guild-factions { gap: .75cqw; min-height: 0; height: auto; }
#nexoriaGuildPanel .nx108-guild-faction header, #nexoriaGuildPanel .nx108-guild-section-title { padding: .7cqw; font-size: 1.4cqw; }
#nexoriaGuildPanel .nx108-guild-section-title small { font-size: 1.05cqw; }
#nexoriaGuildPanel .nx108-guild-row { padding: .5cqw; gap: .6cqw; }
#nexoriaGuildPanel .nx108-guild-row-info { font-size: 1.4cqw; gap: .7cqw; }
#nexoriaGuildPanel .nx108-guild-row-info img { width: 3.6cqw; height: 3.6cqw; }
#nexoriaGuildPanel .nx108-guild-row-info small, #nexoriaGuildPanel .nx108-guild-apply { font-size: 1.05cqw; }
#nexoriaGuildPanel .nx108-guild-shop-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .6cqw; min-height: 0; padding: .4cqw; }
#nexoriaGuildPanel .nx108-guild-shop-slot { min-height: 8.3cqw; padding: .55cqw; border: 1px solid #946c38; border-radius: .5cqw; background: linear-gradient(135deg, #4b3528cc, #24180ff0); }
#nexoriaGuildPanel .nx108-guild-shop-slot img { width: 3.6cqw; height: 3.6cqw; object-fit: contain; }
#nexoriaGuildPanel .nx108-guild-shop-slot :is(strong, b, button), #nexoriaGuildPanel #nx108GuildQuestsView li { font-size: 1.14cqw; }
#nexoriaGuildPanel .nx108-guild-shop-slot small, #nexoriaGuildPanel .nx108-guild-shop-slot time, #nexoriaGuildPanel .nx195-guild-auction-rule { font-size: 1.02cqw; }
#nexoriaGuildPanel #nx108GuildQuestsView > p { font-size: 1.14cqw; }
#nexoriaGuildPanel #nx108GuildQuestsView ul { max-height: none; }
#nexoriaGuildPanel #nx108GuildQuestsView li { min-height: 4cqw; padding: .7cqw; }
#nexoriaGuildPanel .nx108-guild-contribute { font-size: 1.2cqw; gap: .6cqw; }
#nexoriaGuildPanel .nx108-guild-contribute input { width: 5cqw; min-width: 0; font-size: 1.25cqw; padding: .35em; }
#nexoriaPvpPanel [hidden], #nexoriaGuildPanel [hidden] { display: none !important; }
/* A live dissolution vote stays reachable from Quản lý/Tùy chọn without covering the roster on every open. */
#nexoriaGuildPanel .nx108-guild-disband-vote { display: none; }
#nexoriaGuildPanel .is-managing .nx108-guild-disband-vote:not([hidden]) { display: block; }
