:root {
  color-scheme: dark;
  --void: #07090d;
  --ink: #0d1117;
  --surface: #171c23;
  --surface-2: #20262f;
  --surface-3: #272e38;
  --iron: #3b444f;
  --line: #4b5561;
  --text: #f2ede3;
  --muted: #b9b2a6;
  --gold: #f3c464;
  --gold-strong: #c7862d;
  --gold-soft: #ffe5ad;
  --ember: #b6422f;
  --ember-dark: #78271f;
  --blue: #73b7ff;
  --limited: #d7c9aa;
  --disabled: #a6acb5;
  --ring: #ffdc91;
  --sidebar: 17.5rem;
  --top: 4.5rem;
  --shadow: 0 14px 34px rgba(0, 0, 0, .34);
}

* { box-sizing: border-box; }
html { min-width: 20rem; background: var(--void); scroll-behavior: smooth; }
body {
  margin: 0;
  background:
    radial-gradient(circle at 48% -12rem, rgba(199, 134, 45, .22), transparent 36rem),
    radial-gradient(circle at 100% 32rem, rgba(120, 39, 31, .14), transparent 30rem),
    repeating-linear-gradient(135deg, rgba(255, 255, 255, .012) 0 1px, transparent 1px 8px),
    var(--void);
  color: var(--text);
  font: 1rem/1.65 system-ui, -apple-system, "Segoe UI", "Microsoft YaHei", sans-serif;
  -webkit-text-size-adjust: 100%;
}
a { color: var(--gold); text-decoration-thickness: .08em; text-underline-offset: .18em; }
a, summary, button, input { touch-action: manipulation; -webkit-tap-highlight-color: rgba(243, 196, 100, .2); }
a:focus-visible, summary:focus-visible, button:focus-visible, input:focus-visible { outline: 3px solid var(--ring); outline-offset: 3px; }
code, .technical { font-family: ui-monospace, "Cascadia Mono", Consolas, monospace; }
.skip-link { position: fixed; z-index: 100; top: .5rem; left: .5rem; padding: .65rem .9rem; background: var(--gold-soft); color: #181109; transform: translateY(-160%); }
.skip-link:focus { transform: translateY(0); }

.site-header { position: sticky; z-index: 30; top: 0; border-bottom: 1px solid rgba(243, 196, 100, .35); background: rgba(7, 9, 13, .96); box-shadow: 0 8px 24px rgba(0, 0, 0, .22); backdrop-filter: blur(12px); }
.header-inner { display: flex; min-height: var(--top); width: min(94rem, 100%); margin: auto; padding: .55rem clamp(.85rem, 3vw, 2rem); align-items: center; justify-content: space-between; gap: 1rem; }
.brand { display: inline-flex; min-height: 3.15rem; align-items: center; gap: .7rem; color: var(--text); text-decoration: none; }
.brand-mark { display: grid; width: 2.75rem; height: 2.75rem; flex: 0 0 auto; place-items: center; border: 1px solid var(--gold); border-radius: 50%; background: radial-gradient(circle, #25313d 0 43%, transparent 45%), conic-gradient(#efbd5d, #6d390d, #efbd5d, #743b10, #efbd5d); box-shadow: inset 0 0 0 3px #10161d, 0 0 18px rgba(243, 196, 100, .16); color: #ffe4a4; font: 900 1.15rem/1 Georgia, serif; text-shadow: 0 2px 2px #000; }
.brand-copy { display: grid; line-height: 1.05; }
.brand-copy strong { font: 800 1.08rem/1 Georgia, "Microsoft YaHei", serif; }
.brand-copy small { margin-top: .3rem; color: var(--muted); font-size: .72rem; letter-spacing: .08em; }
.top-nav { display: flex; align-items: center; gap: .25rem; }
.top-nav a { display: inline-flex; min-height: 2.75rem; align-items: center; padding: .45rem .75rem; border-radius: .35rem; color: #e1d9ca; text-decoration: none; white-space: nowrap; }
.top-nav a[aria-current="page"] { background: rgba(243, 196, 100, .12); color: var(--gold-soft); }
.mobile-menu, .mobile-category-strip { display: none; }

.app-shell { display: grid; grid-template-columns: var(--sidebar) minmax(0, 1fr); width: min(94rem, 100%); margin: auto; }
.sidebar { position: sticky; top: calc(var(--top) + 1px); align-self: start; min-height: calc(100vh - var(--top)); max-height: calc(100vh - var(--top)); padding: 1rem .9rem 2rem clamp(.85rem, 3vw, 2rem); border-right: 1px solid #323943; background: linear-gradient(180deg, rgba(10, 13, 18, .86), rgba(7, 9, 13, .55)); overflow-y: auto; scrollbar-color: #59626d #11151a; }
.side-search { display: flex; gap: .35rem; margin-bottom: 1rem; }
.side-search input { min-width: 0; min-height: 2.75rem; flex: 1; padding: .55rem .65rem; border: 1px solid var(--line); border-radius: .35rem; background: #11151a; color: var(--disabled); opacity: 1; }
.side-search input::placeholder { color: var(--disabled); opacity: 1; }
.side-search button { width: 2.75rem; border: 1px solid #86602d; border-radius: .35rem; background: #302516; color: var(--disabled); opacity: 1; }
.side-group { margin: 0 0 .8rem; }
.side-group summary { display: flex; min-height: 2.75rem; align-items: center; justify-content: space-between; gap: .5rem; color: var(--gold); font-weight: 800; cursor: pointer; list-style: none; }
.side-group summary::-webkit-details-marker { display: none; }
.side-group summary::after { color: #b5a17d; content: "+"; }
.side-group[open] summary::after { content: "−"; }
.side-links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .18rem .4rem; margin: 0; padding: 0 0 .35rem; list-style: none; }
.side-links a { display: flex; min-height: 2.5rem; align-items: center; padding: .32rem .48rem; border-radius: .3rem; color: #d5cec1; font-size: .9rem; text-decoration: none; }
.side-links a.active { background: linear-gradient(90deg, rgba(199, 134, 45, .3), rgba(199, 134, 45, .05)); box-shadow: inset 3px 0 var(--gold); color: var(--gold-soft); }

.content { min-width: 0; padding: clamp(1rem, 3vw, 2rem); }
.page-head { position: relative; isolation: isolate; margin-bottom: 1rem; padding: clamp(1rem, 3vw, 2rem); border: 1px solid var(--iron); border-radius: .6rem; background: linear-gradient(145deg, rgba(35, 41, 50, .97), rgba(17, 21, 27, .98)); box-shadow: var(--shadow); overflow: hidden; }
.page-head::after { position: absolute; z-index: -1; right: 0; bottom: 0; width: min(28rem, 60vw); height: 80%; background: radial-gradient(ellipse at bottom right, rgba(199, 134, 45, .14), transparent 68%); content: ""; pointer-events: none; }
.hero { max-width: 62rem; }
.eyebrow { margin: 0 0 .35rem; color: var(--gold); font-size: .78rem; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
.crumbs { margin: 0 0 .8rem; color: var(--muted); font-size: .92rem; }
.crumbs a { color: #ded1bb; }
h1 { margin: .1rem 0 .65rem; color: #fff3d4; font: 800 clamp(2rem, 5vw, 3.65rem)/1.08 Georgia, "Songti SC", "Microsoft YaHei", serif; letter-spacing: -.02em; overflow-wrap: anywhere; text-shadow: 0 3px 18px rgba(0, 0, 0, .55); }
h2 { margin: 0 0 .85rem; color: var(--gold-soft); font: 760 clamp(1.22rem, 2.4vw, 1.58rem)/1.25 Georgia, "Microsoft YaHei", serif; }
h3 { color: #f3dfba; }
.lead { max-width: 55rem; margin: .55rem 0; color: #c7c0b5; font-size: clamp(1rem, 2vw, 1.15rem); }
.badges { display: flex; flex-wrap: wrap; gap: .5rem; margin: 1.15rem 0 0; padding: 0; list-style: none; }
.badge { display: inline-flex; min-height: 2.25rem; align-items: center; padding: .3rem .72rem; border: 1px solid #535d69; border-radius: .35rem; background: rgba(32, 38, 47, .92); color: #c8c1b5; font-size: .88rem; }
.badge-strong { border-color: #a56f28; background: linear-gradient(#4c3417, #2d2111); color: var(--gold-soft); }

.panel, .content > section, .error-card { margin: 0 0 1rem; padding: clamp(1rem, 2.5vw, 1.45rem); border: 1px solid var(--iron); border-radius: .6rem; background: linear-gradient(145deg, rgba(35, 41, 50, .97), rgba(17, 21, 27, .98)); box-shadow: inset 0 1px rgba(255, 255, 255, .035), var(--shadow); }
.content > section + section { margin-top: 1rem; }
.section-head { display: flex; align-items: end; justify-content: space-between; gap: 1.25rem; margin-bottom: 1rem; }
.section-head p { max-width: 44rem; color: var(--muted); }
.notice { margin: 0 0 1rem; padding: 1rem 1.1rem; border: 1px solid #80613b; border-left: .35rem solid var(--gold-strong); border-radius: .45rem; background: #2a2115; color: var(--limited); }
.notice strong { color: var(--gold-soft); }
.notice-archive { border-color: #68717c; border-left-color: #a8b1bc; background: #20262f; color: #d4d9df; }
.relations, .plain-list { margin: .4rem 0 0; padding-left: 1.25rem; }
.relations li + li, .plain-list li + li { margin-top: .65rem; }
.facts-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 16rem), 1fr)); gap: .68rem; margin: 0; }
.fact { min-width: 0; padding: .85rem .95rem; border: 1px solid #46505c; border-radius: .45rem; background: rgba(9, 12, 16, .5); }
.fact dt { margin: 0; color: #aeb6c0; font-size: .84rem; font-weight: 750; }
.fact dd { margin: .3rem 0 0; color: var(--text); overflow-wrap: anywhere; }
.fact.is-limited { border-color: #62523d; background: rgba(42, 33, 21, .72); }
.fact.is-limited dd { color: var(--limited); }
.technical { font-size: .9rem; }
.source { color: var(--muted); font-size: .95rem; }
.source p { margin-bottom: 0; }
.action-row { display: flex; flex-wrap: wrap; gap: .65rem; margin: 1.25rem 0; }
.button { display: inline-flex; min-height: 2.75rem; align-items: center; justify-content: center; padding: .65rem 1rem; border: 1px solid #e0a13b; border-radius: .38rem; background: linear-gradient(#b24931, var(--ember-dark)); box-shadow: inset 0 1px rgba(255, 255, 255, .16), 0 4px 12px rgba(0, 0, 0, .28); color: #fff7e8; font-weight: 750; text-decoration: none; }
.button-secondary { border-color: #7c8793; background: linear-gradient(#3a424c, #282e36); color: var(--text); }

.portal-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .8rem; }
.portal-card { position: relative; min-width: 0; padding: 1rem; border: 1px solid #48525f; border-top: 3px solid var(--gold-strong); border-radius: .5rem; background: rgba(10, 13, 17, .42); overflow: hidden; }
.portal-heading h3 { margin: .1rem 0 .35rem; font: 780 clamp(1.25rem, 2.3vw, 1.58rem)/1.18 Georgia, "Microsoft YaHei", serif; }
.portal-heading > p:last-child { margin: 0; color: var(--muted); }
.portal-count { margin: 0; color: #dba957; font-size: .78rem; font-weight: 800; letter-spacing: .07em; }
.portal-primary { display: flex; min-height: 4.75rem; align-items: center; justify-content: space-between; gap: 1rem; margin: .8rem 0; padding: .75rem .9rem; border: 1px solid #9c6a27; border-radius: .4rem; background: linear-gradient(135deg, #633a16, #2c1d0f); color: #fff1cf; text-decoration: none; }
.portal-primary small { display: block; color: #e1bd7c; font-size: .75rem; }
.portal-primary strong { display: block; margin-top: .12rem; font: 800 1.12rem/1.25 Georgia, "Microsoft YaHei", serif; }
.portal-arrow { color: var(--gold-soft); font-size: 1.45rem; }
.portal-links, .featured-links { margin: 0; padding: 0; list-style: none; }
.portal-links { display: flex; flex-wrap: wrap; gap: .42rem; }
.portal-links a { display: inline-flex; min-height: 2.75rem; align-items: center; gap: .4rem; padding: .44rem .68rem; border: 1px solid #4c5662; border-radius: .35rem; background: #11161c; color: #e0d8ca; text-decoration: none; }
.portal-links small { color: var(--muted); }
.featured-links { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 16rem), 1fr)); gap: .65rem; }
.featured-links a { display: flex; min-height: 4.8rem; align-items: center; justify-content: space-between; gap: .8rem; padding: .8rem .9rem; border: 1px solid #71513a; border-radius: .42rem; background: linear-gradient(135deg, rgba(93, 48, 27, .58), rgba(21, 24, 30, .96)); color: #f5ecdd; text-decoration: none; }
.featured-links small, .featured-links strong { display: block; }
.featured-links small { color: #e29a68; font-size: .75rem; }

.entries { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 18rem), 1fr)); gap: .65rem; padding: 0; list-style: none; }
.entries a { display: flex; min-height: 4.5rem; height: 100%; align-items: center; justify-content: space-between; gap: .8rem; padding: .8rem .9rem; border: 1px solid #46505c; border-left: 3px solid var(--gold-strong); border-radius: .42rem; background: rgba(9, 12, 16, .48); color: inherit; text-decoration: none; }
.entries strong { color: #eee5d6; overflow-wrap: anywhere; }
.entries code { color: var(--muted); font-size: .82rem; white-space: nowrap; }
.pager { display: flex; align-items: center; justify-content: center; gap: .7rem; margin: 1.5rem 0; }
.pager a, .pager span { display: inline-flex; min-height: 2.75rem; align-items: center; padding: .5rem .8rem; border: 1px solid var(--line); border-radius: .35rem; background: var(--surface-2); text-decoration: none; }
.pager span[aria-disabled="true"] { color: var(--disabled); }
.types { display: flex; flex-wrap: wrap; gap: .45rem; padding: 1.2rem 0 0; border-top: 1px solid var(--iron); list-style: none; }
.types a { display: inline-flex; min-height: 2.75rem; align-items: center; padding: .38rem .7rem; border: 1px solid var(--iron); border-radius: .35rem; background: var(--surface-2); text-decoration: none; }
.search-row { display: flex; gap: .55rem; max-width: 40rem; }
.search-row input, .search-row button { min-height: 2.85rem; border-radius: .38rem; font: inherit; opacity: 1; }
.search-row input { min-width: 0; flex: 1; padding: .72rem; border: 1px solid var(--line); background: #11151a; color: var(--disabled); }
.search-row input::placeholder { color: var(--disabled); opacity: 1; }
.search-row button { padding: .72rem 1rem; border: 1px solid #59636f; background: #2b323b; color: var(--disabled); }
.status-code { margin: 0; color: var(--gold); font: 900 clamp(3.8rem, 14vw, 8rem)/.9 Georgia, serif; text-shadow: 0 3px 22px rgba(199, 134, 45, .3); }
.error-card { max-width: 58rem; }
.site-footer { width: min(94rem, 100%); margin: auto; padding: 1.5rem clamp(.85rem, 3vw, 2rem) calc(3rem + env(safe-area-inset-bottom)); border-top: 1px solid #303741; color: var(--muted); font-size: .9rem; }

@media (hover: hover) {
  a:hover { color: var(--gold-soft); }
  .top-nav a:hover, .side-links a:hover, .portal-links a:hover, .types a:hover { background: rgba(243, 196, 100, .1); color: var(--gold-soft); }
  .button:hover, .portal-primary:hover, .featured-links a:hover, .entries a:hover { border-color: var(--gold); filter: brightness(1.08); transform: translateY(-1px); }
}

@media (max-width: 64rem) {
  :root { --sidebar: 15rem; }
}

@media (max-width: 51.25rem) {
  .site-header { backdrop-filter: none; }
  .top-nav, .sidebar { display: none; }
  .header-inner { display: grid; grid-template-columns: 1fr auto; }
  .mobile-menu { display: block; }
  .mobile-menu > summary { display: inline-flex; min-height: 3rem; align-items: center; padding: .5rem .8rem; border: 1px solid #86602d; border-radius: .38rem; background: #302516; color: var(--gold-soft); font-weight: 800; cursor: pointer; list-style: none; }
  .mobile-menu > summary::-webkit-details-marker { display: none; }
  .mobile-menu > summary::before { margin-right: .45rem; content: "☰"; }
  .mobile-menu[open] > summary::before { content: "×"; }
  .mobile-sheet { position: fixed; z-index: 25; top: var(--top); right: 0; bottom: 0; left: 0; padding: .9rem max(.9rem, env(safe-area-inset-right)) calc(2rem + env(safe-area-inset-bottom)) max(.9rem, env(safe-area-inset-left)); background: rgba(8, 10, 14, .99); overflow-y: auto; overscroll-behavior: contain; }
  .mobile-sheet .side-search { max-width: 34rem; }
  .mobile-sheet .side-group { border-bottom: 1px solid #39414b; }
  .mobile-sheet .side-group summary { min-height: 3.25rem; font-size: 1rem; }
  .mobile-sheet .side-links { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .3rem; }
  .mobile-sheet .side-links a { min-height: 3rem; padding: .5rem .65rem; border: 1px solid #39414b; background: #151a20; }
  .mobile-category-strip { display: flex; position: sticky; z-index: 20; top: var(--top); gap: .4rem; padding: .5rem max(.85rem, env(safe-area-inset-right)) .55rem max(.85rem, env(safe-area-inset-left)); border-bottom: 1px solid #343c46; background: rgba(13, 17, 23, .97); overflow-x: auto; overscroll-behavior-inline: contain; scrollbar-width: none; }
  .mobile-category-strip::-webkit-scrollbar { display: none; }
  .mobile-category-strip a { display: inline-flex; min-height: 2.75rem; flex: 0 0 auto; align-items: center; padding: .42rem .72rem; border: 1px solid #4a5561; border-radius: 999px; color: #ddd5c7; text-decoration: none; white-space: nowrap; }
  .mobile-category-strip a[aria-current="page"] { border-color: var(--gold-strong); background: #3a2813; color: var(--gold-soft); }
  .app-shell { display: block; }
  .content { padding-right: max(.85rem, env(safe-area-inset-right)); padding-left: max(.85rem, env(safe-area-inset-left)); }
  .crumbs { display: flex; flex-wrap: wrap; align-items: center; gap: .1rem; }
  .crumbs a { display: inline-flex; min-height: 2.75rem; align-items: center; }
  .page-head { padding: 1rem; }
  h1 { font-size: clamp(1.9rem, 10vw, 3rem); }
  .section-head { display: block; }
  .portal-grid, .facts-grid, .entries { display: block; }
  .portal-card + .portal-card, .fact + .fact, .entries li + li { margin-top: .7rem; }
  .entries a { display: block; min-height: 4.25rem; }
  .entries code { display: block; margin-top: .24rem; }
  .pager { justify-content: space-between; }
  .pager a, .pager span { justify-content: center; }
  .search-row { display: block; }
  .search-row input, .search-row button { width: 100%; }
  .search-row button { margin-top: .55rem; }
  .action-row { display: grid; grid-template-columns: 1fr; }
  .button { width: 100%; }
}

@media (pointer: coarse) {
  .top-nav a, .side-links a, .portal-links a, .types a, .button, .pager a, .pager span, .mobile-category-strip a { min-height: 3rem; }
  .entries a { min-height: 4.85rem; }
}

@media (prefers-reduced-motion: no-preference) {
  a, summary, .button, .portal-primary, .featured-links a, .entries a { transition: color .15s ease, background-color .15s ease, border-color .15s ease, filter .15s ease, transform .15s ease; }
}
:root{--sidebar:250px}
body{font-family:system-ui,"Microsoft YaHei",sans-serif;font-size:16px;line-height:1.7}
a{color:#f3c464}
small,.muted{color:#b9b2a6}
h1{font-size:clamp(26px,3vw,36px);line-height:1.3;overflow-wrap:anywhere}
h2{font-size:19px}
h3{font-size:16px}
p{margin:.6rem 0}
.topbar{height:80px;display:flex;align-items:center;gap:32px;padding:0 max(24px,calc((100vw - 1400px)/2));border-bottom:2px solid #886029;background:linear-gradient(#202731,#0c1118);position:static}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font:bold 23px Georgia;color:#f3c464}
.brand small{display:block;font:12px system-ui;letter-spacing:2px}
.realm{border:1px solid #755930;background:#30281d;padding:6px 14px;border-radius:4px;color:#f8d790}
.realm small{margin-left:8px}
.preview-tag{margin-left:auto;font-size:13px;color:#c4bba9}
.page-layout{display:grid;grid-template-columns:250px minmax(0,1fr);max-width:1400px;margin:auto;min-height:90vh}
.navigation{padding:24px 18px;background:linear-gradient(90deg,#121820,#151b23);border-right:1px solid #3b444f}
.catalog-link{display:block;border:1px solid #5e4c33;padding:10px 12px;margin-bottom:14px;text-decoration:none}
.side-group{border-bottom:1px solid #343b43;padding:8px 0}
.side-group summary{font-size:15px}
.side-group ul{padding:0;list-style:none;margin:2px 0 8px}
.side-group li a,.nav-unavailable{display:flex;align-items:center;justify-content:space-between;min-height:40px;padding:5px 12px;text-decoration:none;font-size:14px}
.side-group li a:hover{background:#2c3032}
.nav-unavailable{color:#858c94}
.side-group small{font-size:12px;color:#8f979f}
main{min-width:0;padding:26px 32px 50px}
.breadcrumbs{display:flex;gap:12px;font-size:13px;color:#b9b2a6;margin:0 0 24px}
.breadcrumbs a{text-decoration:none;min-height:32px;display:inline-flex;align-items:center}
.breadcrumbs a:hover,.breadcrumbs a:focus-visible{text-decoration:underline;color:#ffe09a}
.object-heading{display:flex;gap:20px;align-items:center;margin:16px 0 28px}
.object-heading h1{margin:3px 0}
.legacy-object-title{border-bottom:1px solid #4a4a4a;margin:4px 0 18px;padding:0 0 8px}
.legacy-object-title h1{font-size:26px;margin:0;line-height:1.35}
.item-heading{min-height:72px}
.icon{border-radius:4px;border:2px solid #87734b;box-shadow:0 2px 12px #000;flex-shrink:0;image-rendering:auto}
.quest-icon{width:64px;height:64px;display:grid;place-items:center;color:#ffd34a;font:700 54px Georgia;background:radial-gradient(#4e3b17,#17181b);border:1px solid #86723d;border-radius:4px;flex-shrink:0}
.panel{background:linear-gradient(135deg,#1b212a,#151b23);border:1px solid #3b444f;border-radius:4px;padding:22px;margin:0 0 24px;box-shadow:0 5px 16px #0003}
.panel h2{margin:0 0 16px;color:#e6cb95;border-bottom:1px solid #494335;padding-bottom:10px}
.detail-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(220px,.85fr);gap:24px}
.item-detail-grid{grid-template-columns:minmax(0,1.45fr) minmax(240px,.7fr);align-items:start}
.item-inspect{display:grid;grid-template-columns:68px minmax(0,1fr);gap:12px;align-items:start;min-width:0;margin-bottom:24px}
.inspect-icon{width:64px;height:64px;border-radius:5px;border:2px solid #87734b;box-shadow:0 2px 12px #000;image-rendering:auto}
.tooltip{background:linear-gradient(145deg,#071126,#020714 62%,#070c17);border-color:#687390;box-shadow:0 8px 24px #0008,inset 0 0 0 1px #111f3b;padding:18px 20px;min-width:0}
.tooltip h2{border:0;margin:0 0 2px;padding:0;font-size:18px}
.tooltip p{margin:2px 0;line-height:1.48}
.tooltip>small{display:block;line-height:1.6;margin-top:6px}
.gold{color:#efd286}
.green{color:#72e371}
.quality-2{color:#61df61!important}
.quality-3{color:#75baff!important}
.quality-4{color:#c68aff!important}
.quality-1{color:#eee!important}
.quality-0{color:#b0b4bc!important}
.split{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
.tooltip-set{margin-top:16px;padding-top:12px;border-top:1px solid #313a51}
.set-title{display:flex;justify-content:space-between;gap:10px;color:#f4d25f!important;font-weight:700}
.set-title small{font-weight:500;color:#c9ad57}
.set-title a{color:inherit;text-decoration:none}
.tooltip-members a{color:#8fbbff;text-decoration:none}
.tooltip-members .current a{color:#f4d25f}
.tooltip-bonuses a{color:#dce8ff;text-decoration:underline;text-decoration-color:#536785;text-underline-offset:3px}
.set-title a:hover,.tooltip-members a:hover,.tooltip-bonuses a:hover{text-decoration:underline;color:#fff0b3}
.tooltip-members{list-style:none;padding:0;margin:5px 0 12px;color:#8f98a8}
.tooltip-members li{margin:1px 0}
.tooltip-members .current{color:#f4d25f}
.tooltip-bonuses{margin-top:8px;color:#aeb5c0}
.tooltip-bonuses p{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:6px}
.tooltip-bonuses span{color:#d8c889}
.tooltip-caption{display:block;color:#8d96a3!important;margin-top:8px!important;font-size:12px}
.sell-price{margin-top:13px!important;padding-top:10px;border-top:1px solid #313a51}
.coin::after{display:inline-block;width:9px;height:9px;margin-left:4px;border-radius:50%;content:"";box-shadow:inset 0 0 0 1px #ffffff42,0 0 0 1px #0008}
.coin-gold::after{background:#d99d27}
.coin-silver::after{background:#aeb7c1}
.coin-copper::after{background:#b66c39}
.quick-facts{margin:0}
.quick-facts div{padding:8px 0;border-bottom:1px solid #303945;display:flex;justify-content:space-between;gap:15px}
.quick-facts dt{color:#aaaeb8}
.quick-facts dd{margin:0;text-align:right}
.quick-facts dd small{display:block;font-size:12px}
.table-wrap{overflow:auto;max-width:100%}
table{width:100%;border-collapse:collapse;font-size:14px}
th,td{padding:12px 14px;text-align:left;border-bottom:1px solid #39424e;overflow-wrap:anywhere}
th{font-weight:500;color:#c4bba9;background:#111821}
td a{display:inline-block;padding:4px 0}
tbody tr:hover{background:#262d37}
td small{color:#999}
.legacy-filters{display:flex;flex-wrap:wrap;gap:5px;margin:0 0 10px}
.legacy-filters a{display:inline-flex;align-items:center;min-height:40px;padding:5px 15px;color:#dfc487;background:#2b2b2b;border:1px solid #494949;text-decoration:none}
.legacy-filters a.active,.legacy-filters a:hover{color:#ffe466;background:#4b3a18;border-color:#8a6428}
.legacy-list{border:1px solid #474747;background:#202020;margin-bottom:24px}
.legacy-count{min-height:38px;display:flex;align-items:center;justify-content:flex-end;padding:5px 13px;color:#ddd;background:#111;border-bottom:2px solid #464646;font-size:13px}
.legacy-count-bottom{border-top:2px solid #464646;border-bottom:0}
.legacy-list .table-wrap{margin:0}
.legacy-list th{color:#fff;background:#575757;border-right:1px solid #6b6b6b;font-weight:700}
.legacy-list td{background:#171717;border-right:1px solid #383838}
.legacy-list tbody tr:hover td{background:#242424}
.legacy-list td:first-child a{font-weight:700}
.member-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding-left:22px;gap:5px}
.notice{border-left:3px solid #dbad55;padding:12px 16px;background:#30291c;margin-bottom:24px}
.source-note{margin:12px 0 26px;color:#b9b2a6;font-size:13px}
.source-note summary,.tooltip summary,.field-note summary{cursor:pointer;min-height:44px;display:flex;align-items:center;color:#e8c982}
.story{line-height:1.95;margin-top:22px}
.lead{font-size:16px;color:#dcd8cf}
.quest-titlebar{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;border-bottom:1px solid #3b444f;margin-bottom:18px}
.quest-titlebar .object-heading{margin:0 0 18px}
.game-link{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:6px 16px;color:#ffe257;text-decoration:none;background:linear-gradient(#5b2306,#2c1004);border:1px solid #b07129;border-radius:3px;box-shadow:inset 0 0 0 1px #170800}
.game-link:hover{filter:brightness(1.18)}
.quest-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,300px);gap:20px;align-items:start;margin-bottom:24px}
.quest-sheet{background:#202020;border-color:#444;min-height:480px}
.quest-sheet.panel h2.quest-section{border:0;padding:0;color:#ffd62f;margin:22px 0 10px}
.quest-facts{background:linear-gradient(145deg,#071126,#020714 70%);border-color:#687390;position:sticky;top:16px}
.quest-facts .quick-facts div{display:block;padding:5px 0;border:0}
.quest-facts .quick-facts dt{color:#f1f3f8;font-weight:700}
.quest-facts .quick-facts dd{text-align:left;color:#ffe257;margin-top:1px}
.quest-facts .quick-facts dd a{color:#ffe257}
.objective-list{list-style:none;padding:0;margin:5px 0 18px}
.objective-list li{display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:9px;min-height:38px}
.objective-mark{color:#d4ae59;font-size:12px}
.objective-list strong{color:#f0f0f0}
.quest-sheet .story{color:#e4e4e4;margin:18px 0 26px;white-space:normal}
.quest-sheet .reward-reputation,.quest-sheet .reward-card{background:#151515;border-color:#3d3d3d}
.entity-heading{padding-bottom:8px;border-bottom:1px solid #3b444f}
.link-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.link-list a{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:58px;padding:10px 14px;border:1px solid #3e4856;background:#111821;text-decoration:none}
.link-list a:hover{background:#252c35;border-color:#786344}
.link-list span{color:#aab1bb;font-size:13px;text-align:right}
.bonus-list{list-style:none;padding:0;margin:0}
.bonus-list li{display:grid;grid-template-columns:minmax(120px,.35fr) minmax(0,1fr);gap:16px;padding:10px 0;border-bottom:1px solid #39424e}
.bonus-list span{color:#d8c889}
.set-overview{display:grid;grid-template-columns:minmax(220px,.85fr) minmax(340px,1.25fr);gap:28px;background:#202020;border-color:#474747}
.set-overview>div>h2{font-size:20px;color:#fff}
.set-visual-list{list-style:none;padding:0;margin:0}
.set-visual-list li{display:flex;align-items:center;gap:10px;min-height:44px}
.set-visual-list a{font-weight:700;text-decoration:none}
.set-visual-list a:hover{text-decoration:underline}
.set-member-icon{box-sizing:border-box;width:32px;height:32px;flex:0 0 32px;border:2px solid #5f6268;border-radius:4px;box-shadow:inset 0 0 0 1px #08090c,0 1px 4px #000;background:#101218}
.set-bonus-box{align-self:center;min-height:170px;padding:20px 24px;color:#e8edf6;background:linear-gradient(145deg,#071126,#020714 72%);border:1px solid #687390;border-radius:4px;box-shadow:inset 0 0 0 1px #111f3b}
.set-bonus-box>strong,.set-bonus-box>b{display:block;color:#ffe257;margin-bottom:4px}
.set-bonus-box .bonus-list{margin-top:8px}
.set-bonus-box .bonus-list li{grid-template-columns:max-content minmax(0,1fr);padding:3px 0;border:0}
.set-summary{overflow-x:auto}
.set-summary table{min-width:650px;background:#202020;border:1px solid #414141}
.set-summary th{background:#202020;text-align:center;font-weight:700;color:#fff}
.set-summary th:first-child,.set-summary td:first-child{text-align:left;position:sticky;left:0;background:#202020;z-index:1}
.set-summary td{text-align:center;border-right:1px solid #343434}
.set-summary td:nth-child(2){font-weight:700;color:#fff}
.faction-profile{background:#202020;border-color:#474747}
.faction-profile .lead{max-width:850px;color:#f0f0f0}
.faction-profile .quick-facts{max-width:540px;margin-top:18px}
.faction-tabs{position:relative;margin-bottom:24px}
.faction-tabs>input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.faction-tab-labels{display:flex;gap:4px;border-bottom:3px solid #4b4b4b}
.faction-tab-labels label{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:110px;min-height:48px;padding:7px 18px;color:#ffd62f;background:#2b2b2b;border:1px solid #454545;border-bottom:0;cursor:pointer;font-weight:700}
.faction-tab-labels label small{color:#c9c9c9;font-weight:500}
#faction-tab-quests:checked~.faction-tab-labels label[for="faction-tab-quests"],
#faction-tab-npcs:checked~.faction-tab-labels label[for="faction-tab-npcs"],
#faction-tab-items:checked~.faction-tab-labels label[for="faction-tab-items"]{color:#fff;background:#4c4c4c;border-color:#666}
#faction-tab-quests:focus-visible~.faction-tab-labels label[for="faction-tab-quests"],
#faction-tab-npcs:focus-visible~.faction-tab-labels label[for="faction-tab-npcs"],
#faction-tab-items:focus-visible~.faction-tab-labels label[for="faction-tab-items"]{outline:2px solid #ffdc91;outline-offset:2px}
.faction-tab-panels{border:1px solid #474747;border-top:0;background:#171717;padding:12px}
.faction-tab-panels>.panel{display:none;margin:0;box-shadow:none}
#faction-tab-quests:checked~.faction-tab-panels #quests,
#faction-tab-npcs:checked~.faction-tab-panels #npcs,
#faction-tab-items:checked~.faction-tab-panels #items{display:block}
.bracket-action{color:#f3c464}
.jump-links{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:22px}
.jump-links a{padding:8px 16px;border:1px solid #625238;background:#26231f;text-decoration:none;min-height:44px}
.reward-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:8px 0 18px}
.reward-card{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:52px;padding:10px 12px;border:1px solid #3e4856;background:#111821}
.reward-card small{font-size:12px;white-space:nowrap}
.reward-line{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 12px;border-top:1px solid #39424e;border-bottom:1px solid #39424e}
.reward-reputation{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 16px;padding:10px 12px;background:#111821;border:1px solid #39424e}
.reward-reputation small{grid-column:1/-1;font-size:12px}
.field-note{font-size:13px;color:#9fa7b2;margin-top:12px}
.mobile-nav{display:none}
footer{max-width:1400px;margin:auto;padding:24px;border-top:1px solid #3b444f;color:#aaa;font-size:12px}
footer span{float:right}
:focus-visible{outline:2px solid #ffdc91;outline-offset:3px}
.skip-link:focus{transform:none}
.story-grid{grid-template-columns:minmax(0,1.65fr) minmax(210px,.8fr)}

@media(max-width:1000px){
  .page-layout{grid-template-columns:215px minmax(0,1fr)}
  main{padding:22px}
  .detail-grid{grid-template-columns:1fr}
  .detail-grid .panel{margin-bottom:0}
  .detail-grid{margin-bottom:24px}
  .topbar{gap:18px}
  .quest-layout{grid-template-columns:1fr}
  .quest-facts{position:static}
  .set-overview{grid-template-columns:1fr}
}
@media(max-width:700px){
  .topbar{height:68px;padding:0 16px;gap:12px}
  .brand{font-size:20px}
  .brand-mark{width:36px;height:36px}
  .brand small{font-size:12px;letter-spacing:1px}
  .realm{font-size:12px;padding:4px 10px}
  .realm small,.preview-tag{display:none}
  .navigation{display:none}
  .page-layout{display:block}
  .mobile-nav{display:block;background:#19212b;border-bottom:1px solid #4f483b}
  .mobile-nav>summary{padding:12px 18px;min-height:48px;cursor:pointer;color:#f3c464}
  .mobile-nav>summary span{float:right;font-size:12px;color:#b9b2a6}
  .mobile-nav nav{padding:10px 20px}
  .mobile-nav nav a,.mobile-nav .nav-unavailable{min-height:44px}
  .mobile-nav .side-group summary{min-height:44px}
  main{padding:20px 16px}
  .breadcrumbs{margin-bottom:18px}
  .breadcrumbs{gap:8px;overflow-x:auto;white-space:nowrap;padding-bottom:3px}
  .object-heading{gap:14px;margin:8px 0 22px}
  .object-heading .icon,.quest-icon{width:54px;height:54px}
  .quest-icon{font-size:45px}
  .panel{padding:18px 15px}
  .item-inspect{grid-template-columns:54px minmax(0,1fr);gap:9px}
  .inspect-icon{width:52px;height:52px}
  .tooltip{padding:15px 13px;font-size:14px}
  .tooltip h2{font-size:17px}
  .tooltip-bonuses p{grid-template-columns:1fr;gap:0;margin:7px 0}
  .set-title{display:block}
  .set-title small{display:block}
  .member-list,.reward-options,.link-list{grid-template-columns:1fr}
  .quest-titlebar{gap:10px}
  .quest-titlebar .object-heading{align-items:flex-start}
  .game-link{font-size:12px;padding:5px 9px}
  .objective-list li{grid-template-columns:14px minmax(0,1fr) auto;gap:6px}
  .bonus-list li{grid-template-columns:1fr;gap:2px}
  .set-bonus-box{padding:17px 15px;min-height:0}
  .set-bonus-box .bonus-list li{grid-template-columns:1fr;gap:0;margin:8px 0}
  .set-summary table{min-width:650px}
  .faction-tab-labels label{min-width:0;flex:1;padding:7px 8px}
  .faction-tab-panels{padding:7px}
  .jump-links{gap:7px}
  .jump-links a{padding:8px 11px;font-size:13px}
  th,td{padding:10px 8px}
  .legacy-list .table-wrap{overflow:visible}
  .legacy-list table,.legacy-list tbody,.legacy-list tr,.legacy-list td{display:block;width:100%}
  .legacy-list thead{display:none}
  .legacy-list tr{padding:8px 12px;border-bottom:1px solid #4a4a4a}
  .legacy-list td{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:7px 0;border:0;background:transparent;text-align:right}
  .legacy-list td::before{content:attr(data-label);color:#aaa;text-align:left;flex:0 0 34%}
  .legacy-list tbody tr:hover td{background:transparent}
  .legacy-list td:first-child{font-size:16px;text-align:right}
  .legacy-filters a{flex:1 1 auto;justify-content:center}
  .quick-facts dd{max-width:65%}
  footer span{float:none;display:block}
  h1{font-size:26px}
}
.spell-buff{max-width:420px;margin-bottom:24px}
/* Old database content hierarchy, with an explicit touch/small-screen layout. */
.quest-layout{grid-template-columns:minmax(0,1fr) 246px;align-items:start;gap:24px}
.quest-sheet.panel{background:none;border:0;box-shadow:none;border-radius:0;padding:0;min-height:0}
.quest-facts.panel,.legacy-object-facts{background:#03091b;border:1px solid #7d8190;padding:16px 22px;box-shadow:inset 0 0 0 1px #252b3b}
.quest-facts .quick-facts div,.legacy-object-facts .quick-facts div{justify-content:flex-start;gap:5px;border:0;padding:1px 0;line-height:1.6}
.quest-facts .quick-facts dt,.legacy-object-facts .quick-facts dt{color:#fff;flex-shrink:0}
.quest-facts .quick-facts dt::after,.legacy-object-facts .quick-facts dt::after{content:"："}
.quest-facts .quick-facts dd,.legacy-object-facts .quick-facts dd{text-align:left;max-width:none;color:#f3d44e}
.quest-sheet h2.quest-section{font-size:16px;border:0;color:#ffdb00;margin:4px 0 24px;padding:0}
.quest-sheet .story{color:#c0c0c0;background:none;padding:0;border:0}
.quest-rewards-list{list-style:none;margin:8px 0 22px;padding:0}
.quest-rewards-list li{display:flex;gap:14px;align-items:center;min-height:56px}
.quest-rewards-list img{width:44px;height:44px;border:2px solid #777;border-radius:4px;box-shadow:0 0 0 2px #121212;flex-shrink:0}
.quest-rewards-list a{display:inline-flex;align-items:center;min-height:44px;color:inherit;text-decoration:none}
.quest-rewards-list a:hover{text-decoration:underline}
.quest-sheet .reward-line{justify-content:flex-start;gap:6px;border:0;padding:0;flex-wrap:wrap}
.quest-sheet .reward-reputation{background:none;border:0;padding:0;grid-template-columns:max-content max-content}
.legacy-object-layout{display:grid;grid-template-columns:minmax(0,1fr) 246px;gap:24px;align-items:start;min-height:138px;margin-bottom:24px}
.legacy-object-facts{border-radius:3px}
.legacy-related{margin-bottom:24px;border:1px solid #454545;background:#191919}
.legacy-tab-heading{display:inline-flex;min-height:44px;align-items:center;background:#414141;margin:0;padding:8px 20px;font-size:16px;color:#fff}
.achievement-description{display:block;color:#c5c5c5}
@media(max-width:1000px){.quest-layout,.legacy-object-layout{grid-template-columns:1fr}.quest-facts,.legacy-object-facts{grid-row:1;max-width:100%;width:100%;box-sizing:border-box}.legacy-object-layout{min-height:0;gap:12px}}

/* Preserve the agreed legacy-style specimen palette and layout. */
body{background:#222;color:#eee} .panel{background:#202020}
.tooltip{background:#03091b}.tooltip-set .set-visual-list li{min-height:25px}
.debug-tabs [role=tablist]{display:flex;gap:4px;border-bottom:3px solid #555}
.debug-tabs button{min-height:48px;background:#292929;color:#ffda42;border:1px solid #555;padding:10px 24px;font:inherit;cursor:pointer}
.debug-tabs button[aria-selected=true]{background:#494949;color:#fff}
.debug-tabs [role=tabpanel]{padding:16px;border:1px solid #444;background:#191919}
.debug-tabs [hidden]{display:none}.set-visual-list a{min-height:24px}
.legacy-object-facts:empty{display:none}
.quest-facts .quick-facts div,.legacy-object-facts .quick-facts div{display:flex;align-items:baseline;gap:6px}
.quest-facts .quick-facts dt,.quest-facts .quick-facts dd{margin:0}
.inline-item-icon{width:24px;height:24px;flex:0 0 24px;border:1px solid #81704e;border-radius:3px;vertical-align:middle}
.item-reference{display:inline-flex!important;gap:7px;align-items:center}
.reference-source{font-size:11px;color:#aaa;display:inline-block;margin-left:5px}
.quest-facts .quick-facts dd{min-width:0}.quest-facts .quick-facts dd small{display:block;margin:0;color:#a8a49b;font-weight:400}
.difficulty-levels{display:inline-flex;gap:9px;font-size:16px;font-weight:600}
.difficulty-yellow{color:#ffe100}.difficulty-green{color:#50da56}.difficulty-grey{color:#b3b3b3}
.quest-limits{font-size:12px;color:#bcb5a8;border-top:1px solid #424450;margin-top:12px;padding-top:8px}
.quest-limits summary{cursor:pointer;min-height:30px}.quest-limits p{line-height:1.6}
.site-header{border-top:3px solid #9c7236;border-bottom:1px solid #8c6835;background:radial-gradient(ellipse at 35% 0,#34404c 0,transparent 55%),linear-gradient(110deg,#151d29,#121820 70%,#28231b);box-shadow:0 3px 15px #0005}
.masthead{max-width:1400px;margin:auto;min-height:108px;display:flex;align-items:center;gap:36px;padding:15px 24px}
.brand-seal{display:grid;place-items:center;width:65px;height:65px;border:2px solid #c29857;outline:1px solid #675137;outline-offset:4px;border-radius:50%;background:radial-gradient(#273c56,#0b121e);color:#f6d48f;font:bold 45px Georgia;text-shadow:1px 2px 2px #000;box-shadow:0 0 23px #c0903220,inset 0 0 13px #000}
.brand-wordmark{font:700 34px Georgia;letter-spacing:2px;color:#f3d18c}.brand-wordmark small{font:13px system-ui;letter-spacing:3px;color:#b4aea3;margin-top:4px}
.edition{border-left:1px solid #65583f;padding-left:28px;display:grid;gap:5px;color:#e3d3b3;font-size:14px}
.edition-kicker{font:11px Georgia;letter-spacing:3px;color:#a88c61}.status-dot{display:inline-block;width:6px;height:6px;background:#bda367;border-radius:50%;margin-left:10px}
.header-nav{display:flex;gap:4px;max-width:1400px;margin:auto;padding:0 24px;background:#070a1066;overflow:auto}
.header-nav a{flex-shrink:0;color:#c8bdab;font-size:14px;min-height:45px;display:flex;align-items:center;padding:8px 18px;text-decoration:none;border-bottom:2px solid transparent}
.header-nav a:hover,.header-nav .selected{color:#ffe0a2;border-bottom-color:#c59c5b;background:linear-gradient(transparent,#80633330)}
@media(max-width:700px){.masthead{gap:16px;padding:16px 20px;min-height:92px}.brand-seal{width:44px;height:44px;font-size:31px;outline-offset:2px}.brand-wordmark{font-size:26px}.brand-wordmark small{display:block;font-size:10px;letter-spacing:1px}.edition{margin-left:auto;padding-left:12px;font-size:11px;max-width:110px}.edition-kicker{font-size:8px;letter-spacing:1px}.header-nav{padding:0 10px}.header-nav a{font-size:13px;padding:8px 12px}.quest-facts .quick-facts div{flex-wrap:wrap}.quest-limits summary{min-height:44px}}
.side-group{padding:4px 0}.side-group summary{padding:8px 0}
@media(max-width:700px){.tooltip-set .set-visual-list li{min-height:38px}.tooltip-set a{display:inline-block;padding:6px 0}.brand small{display:none}.breadcrumbs{flex-wrap:wrap;white-space:normal}.set-summary{max-width:100%;overflow:auto}.debug-tabs button{flex:1}}

.achievement-title-icon{width:36px!important;height:36px!important;vertical-align:middle;margin-right:10px;border:1px solid #80745c;border-radius:3px}
.achievement-list-icon{width:24px!important;height:24px!important;vertical-align:middle;margin-right:7px;border:1px solid #80745c;border-radius:2px}
.achievement-points-icon{width:18px!important;height:18px!important;object-fit:contain;vertical-align:middle;margin-left:4px}
.spell-title-icon{width:36px!important;height:36px!important;vertical-align:middle;margin-right:10px;border:1px solid #80745c;border-radius:3px}
.spell-list-icon{width:24px!important;height:24px!important;vertical-align:middle;margin-right:7px;border:1px solid #80745c;border-radius:2px}
.navigation .side-subgroup>summary{min-height:28px}.side-group .side-subgroup>summary::after{content:"+"}.side-group .side-subgroup[open]>summary::after{content:"−"}
.navigation .side-group{padding:0;border-bottom:1px solid #343b41}.side-group>summary{cursor:pointer}.side-group ul{list-style:none;margin:0;padding:0 0 8px 12px}.side-subgroup>summary{cursor:pointer;font-weight:400;font-size:14px;line-height:1.5;padding:5px 0}.side-group li a{display:block;font-size:14px;line-height:1.5;padding:5px 0}.side-subgroup ul{border-left:1px solid #414951;margin-left:4px}.side-group a:focus-visible,.side-group summary:focus-visible{outline:2px solid #e3bd6c;outline-offset:2px}
@media(max-width:700px){.mobile-nav .side-group li a,.mobile-nav .side-subgroup>summary{min-height:44px;box-sizing:border-box;display:flex;align-items:center}.achievement-title-icon{width:32px!important;height:32px!important}}

.catalog-pagination{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0}.catalog-pagination a,.catalog-pagination span{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0 10px;box-sizing:border-box}.catalog-pagination a{background:#303030;border:1px solid #555}.catalog-pagination [aria-current]{background:#594626;color:#ffe3a0}.catalog-pagination a:focus-visible{outline:2px solid #ffe3a0}.catalog-count{color:#ccc}

.quest-filters{margin:12px 0;padding:12px;background:#262626;border:1px solid #555}.quest-filters summary{cursor:pointer;min-height:44px}.quest-filters h2{font-size:16px}.quest-filter-links{display:flex;flex-wrap:wrap;gap:4px 12px}.quest-filter-links a{display:inline-flex;align-items:center;min-height:44px}.quest-filters a:focus-visible{outline:2px solid #ffe3a0}

.quest-top-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin-top:10px;align-items:start}.quest-top-group{background:#303030;border:1px solid #555;padding:0 10px}.quest-top-group summary{display:list-item;line-height:44px;color:#efd083}.quest-top-group .quest-filter-links{display:flex;flex-direction:column;padding-bottom:8px}.quest-empty-group{min-height:44px;display:flex;align-items:center;padding:0 10px;color:#888}

.quest-top-groups{display:flex;flex-wrap:wrap;position:relative;gap:6px;align-items:start}
.quest-top-group{position:static;padding:0;border:0;background:transparent}
.quest-top-group summary{border:1px solid #555;padding:0 12px;line-height:36px;min-height:36px;list-style:none}
.quest-top-group summary::before{content:'▸ ';}.quest-top-group[open] summary::before{content:'▾ ';}
.quest-top-group[open]{display:contents}.quest-top-group[open] summary{background:#544327}
.quest-top-group[open]::details-content{display:contents}
.quest-region-panel{order:10;flex:1 0 100%;box-sizing:border-box;border:1px solid #655337;padding:10px;background:#242424}
.quest-top-group .quest-filter-links{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:2px 12px;max-height:240px;overflow:auto;padding:6px 0;overscroll-behavior:contain}
.quest-top-group .quest-filter-links a{min-height:32px;line-height:1.4;padding:2px 4px;box-sizing:border-box}
.region-search{display:block;width:100%;max-width:340px;box-sizing:border-box;background:#161616;color:#eee;border:1px solid #666;padding:8px;font:inherit}
.catalog-filters{padding:12px;border:1px solid #555;background:#262626;margin:12px 0}.category-links{display:flex;flex-wrap:wrap;gap:4px 18px;margin-top:8px}.category-links a{display:inline-flex;align-items:center;min-height:34px}
.item-taxonomy .category-links{display:flex;flex-wrap:wrap;gap:4px 14px}.item-subcategories{border-top:1px solid #555;padding-top:10px}.item-taxonomy [aria-current]{color:#fff;text-decoration:none;background:#51442d;padding:0 6px;width:auto}
.class-reference{display:inline-flex;align-items:center;gap:6px}.class-icon{width:20px;height:20px;object-fit:contain;vertical-align:middle;margin-right:4px}.set-restrictions{padding:10px 0;color:#efd083}.catalog-filters nav+nav{border-top:1px solid #555;margin-top:10px;padding-top:10px}
.catalog-table{width:100%;border-collapse:collapse}.catalog-table td,.catalog-table th{padding:9px 12px}.catalog-table td:first-child{min-width:160px}.catalog-table .item-reference{gap:10px}.catalog-table .inline-item-icon{width:32px;height:32px;flex:none}
.catalog-table a.quality-0{color:#9d9d9d}.catalog-table a.quality-1{color:#fff}.catalog-table a.quality-2{color:#1eff00}.catalog-table a.quality-3{color:#0070dd}.catalog-table a.quality-4{color:#a335ee}.catalog-table a.quality-5{color:#ff8000}.catalog-table a.quality-6,.catalog-table a.quality-7{color:#e6cc80}
.quest-filters [hidden]{display:none!important}
@media(max-width:700px),(pointer:coarse){.quest-top-group summary{min-height:44px;line-height:44px}.quest-top-group .quest-filter-links{grid-template-columns:repeat(2,minmax(0,1fr));max-height:264px}.quest-top-group .quest-filter-links a,.category-links a{min-height:44px}.catalog-table td,.catalog-table th{padding:8px}.quest-region-panel{min-width:0}.region-search{max-width:none}}

.achievement-categories>ul{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px 16px;max-height:22rem;overflow:auto;list-style:none;padding:0}
.achievement-categories a{display:inline-flex;align-items:center;min-height:36px}
.achievement-categories>ul>li>a{font-weight:bold}.achievement-categories ul ul{padding-left:16px}
.achievement-conditions,.achievement-condition-group{padding-left:24px;line-height:1.8}
.achievement-conditions img{vertical-align:middle;margin-right:5px}
@media(max-width:700px){.achievement-categories>ul{grid-template-columns:1fr;max-height:50vh}.achievement-categories a{min-height:44px}}

.npc-relations{margin-top:24px;border:1px solid #414141;background:#191919}.npc-relations [role=tablist]{display:flex;gap:3px;overflow-x:auto;background:#252525;border-bottom:3px solid #505050}.npc-relations [role=tab]{flex:none;min-height:44px;padding:10px 20px;border:0;border-radius:3px 3px 0 0;background:#303030;color:#ffe100;font-size:15px;font-weight:700;cursor:pointer}.npc-relations [role=tab][aria-selected=true]{background:#484848;color:#fff}.npc-relations [role=tab]:focus-visible{outline:2px solid #dfbd77;outline-offset:-3px}.npc-relations [role=tabpanel]{padding:0}.npc-relations .list-count{text-align:right;margin:0;padding:5px 10px;color:#fff;background:#111;font-size:13px}.npc-relations table{margin:0;width:100%}.npc-relations th{background:#505050;color:#fff}.npc-relations td{padding:8px 12px}.npc-relations [hidden]{display:none!important}

.titan-search{display:flex;gap:8px;padding:10px 16px;max-width:640px}.titan-search input{flex:1;min-width:0;background:#171717;color:#eee;border:1px solid #666;padding:10px}.titan-search button{padding:10px 16px;background:#333;color:#ffd36b;border:1px solid #666}
