:root {
  --jade-gold: #d7b36a;
  --jade-gold-bright: #f2d58d;
  --jade-ink: #e9e0cb;
  --jade-muted: #aaa18e;
  --jade-line: #51462f;
  --jade-surface: #111312;
  --jade-material: url("/static/assets/chrome/jade-serpentine/panel-material.e3d06517b90f.webp");
  --jade-corner: 80px;
  --jade-rail-top-height: 43px;
  --jade-rail-bottom-height: 40px;
  --jade-rail-side-width: 43px;
  --jade-tl: url("/static/assets/chrome/jade-serpentine/panel-corner-tl-md.861e072cdd6d.webp");
  --jade-tr: url("/static/assets/chrome/jade-serpentine/panel-corner-tr-md.d401e3a69b76.webp");
  --jade-bl: url("/static/assets/chrome/jade-serpentine/panel-corner-bl-md.a2cdab3ad1c2.webp");
  --jade-br: url("/static/assets/chrome/jade-serpentine/panel-corner-br-md.d7509349d61a.webp");
  --jade-rt: url("/static/assets/chrome/jade-serpentine/panel-rail-top-md.7a100e5feded.webp");
  --jade-rb: url("/static/assets/chrome/jade-serpentine/panel-rail-bottom-md.fd38099d5d1a.webp");
  --jade-rl: url("/static/assets/chrome/jade-serpentine/panel-rail-left-md.bb0614f1deb9.webp");
  --jade-rr: url("/static/assets/chrome/jade-serpentine/panel-rail-right-md.bbbceab67495.webp");
  --jade-nav-height: 64px;
  --jade-nav-cap: 62px;
  --jade-nav-left: url("/static/assets/chrome/jade-serpentine/navbar/navbar-sm-left.5eb745f64f2d.webp");
  --jade-nav-right: url("/static/assets/chrome/jade-serpentine/navbar/navbar-sm-right.b67cb1c757bd.webp");
  --jade-nav-middle: url("/static/assets/chrome/jade-serpentine/navbar/navbar-sm-middle.91491d70de37.webp");
  --color-primary-300: 242 213 141;
  --color-primary-400: 215 179 106;
  --color-primary-500: 161 117 48;
  --color-text-heading: 239 229 207;
  --color-text-body: 191 180 157;
  --color-text-muted: 146 137 119;
  --color-bg-body: 8 9 9;
  --color-bg-card: 16 17 16;
  letter-spacing: 0;
}

* { box-sizing: border-box; letter-spacing: 0; }
body.jade-site {
  min-height: 100vh;
  margin: 0;
  display: flex;
  flex-direction: column;
  color: var(--jade-ink);
  background: #080a09;
  font-family: 'DejaVu Sans', Arial, sans-serif;
}
body.jade-site::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -1;
  background: linear-gradient(rgba(5, 6, 6, .35), rgba(5, 6, 6, .92));
  pointer-events: none;
}
.jade-site h1, .jade-site h2, .jade-site h3 { color: #f0dfb5; font-family: 'DejaVu Serif', Georgia, serif; }
.jade-site a { color: inherit; }
.jade-site :focus-visible { outline: 2px solid #e4c778; outline-offset: 3px; }
.jade-main { flex: 1; min-width: 0; }

/* Header */
.jade-header {
  position: sticky;
  top: 0;
  z-index: 60;
  background: #050706;
  border-bottom: 0;
  box-shadow: 0 4px 16px rgba(0, 0, 0, .45);
}
.jade-nav-frame {
  position: relative;
  width: min(1600px, 100%);
  height: var(--jade-nav-height);
  min-height: var(--jade-nav-height);
  margin: auto;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 0 calc(var(--jade-nav-cap) + 2px);
  background-image: var(--jade-nav-left), var(--jade-nav-right), var(--jade-nav-middle);
  background-position: left center, right center, center;
  background-repeat: no-repeat, no-repeat, repeat-x;
  background-size: auto;
}
.jade-brand { width: 142px; flex: none; color: var(--jade-gold-bright); text-align: center; text-decoration: none; line-height: 1; }
.jade-brand-kicker { display: block; color: #aaa28f; font-size: 8px; text-transform: uppercase; }
.jade-brand strong { display: block; margin-top: 2px; font: 700 18px 'DejaVu Serif', Georgia, serif; }
.jade-brand small { display: none; }
.jade-nav { min-width: 0; display: flex; align-items: center; justify-content: center; gap: 0; flex: 1; }
.jade-nav a, .jade-user-nav > a, .jade-link-button {
  min-height: 44px;
  padding: 14px 8px;
  border: 0;
  border-bottom: 1px solid transparent;
  background: transparent;
  color: #c9bea8;
  font: 700 11px 'DejaVu Sans', Arial, sans-serif;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  white-space: nowrap;
}
.jade-nav a:hover, .jade-nav a.text-slate-100, .jade-nav a[aria-current="page"], .jade-user-nav > a:hover, .jade-link-button:hover { color: #fff0bd; border-bottom-color: #8aa07f; }
.jade-nav a:active, .jade-user-nav > a:active, .jade-link-button:active { color: #fff; }
.jade-user-nav .jade-header-signup { color: var(--jade-gold-bright); }
.jade-user-nav { display: flex; align-items: center; gap: 4px; }
.jade-user-nav form { margin: 0; }
.jade-user-nav .language-switcher { flex: none; }
.jade-nav-language, .jade-mobile-actions { display: none; }
.jade-link-button { cursor: pointer; }
.jade-menu { display: none; min-width: 44px; min-height: 44px; padding: 5px; border: 0; background: transparent; cursor: pointer; }
.jade-menu span { display: block; width: 23px; height: 2px; margin: 5px; background: #e2c77e; }

/* Each button state is exported at its final runtime size. */
.jade-button, .jade-site a.rounded-xl.bg-primary-500\/90, .jade-site button.bg-primary-500 {
  width: 225px;
  height: 71px;
  padding: 0 24px !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 0 !important;
  border-radius: 0 !important;
  background: url("/static/assets/chrome/jade-serpentine/buttons/button-md-normal.58a3ee0b24e9.webp") center no-repeat !important;
  color: #fff1c7 !important;
  font: 700 13px 'DejaVu Serif', Georgia, serif;
  text-decoration: none !important;
  text-shadow: 0 1px 2px #000;
  box-shadow: none !important;
}
.jade-button:hover { background-image: url("/static/assets/chrome/jade-serpentine/buttons/button-md-hover.3a7f915d169b.webp") !important; }
.jade-button:active { background-image: url("/static/assets/chrome/jade-serpentine/buttons/button-md-pressed.b27b78e41384.webp") !important; transform: translateY(1px); }
.jade-button:disabled, .jade-button[aria-disabled="true"] { background-image: url("/static/assets/chrome/jade-serpentine/buttons/button-md-disabled.604e05d0d98b.webp") !important; color:#928c80 !important; cursor:not-allowed; }
.jade-button-small { width: 178px !important; height: 50px !important; padding: 0 18px !important; background-image: url("/static/assets/chrome/jade-serpentine/buttons/button-sm-normal.870217657863.webp") !important; font-size: 11px !important; }
.jade-button-small:hover { background-image: url("/static/assets/chrome/jade-serpentine/buttons/button-sm-hover.aa5bb8f39a7f.webp") !important; }
.jade-button-small:active { background-image: url("/static/assets/chrome/jade-serpentine/buttons/button-sm-pressed.7f553ae98312.webp") !important; }
.jade-button-small:disabled { background-image: url("/static/assets/chrome/jade-serpentine/buttons/button-sm-disabled.2532213648ee.webp") !important; }

/* Dense surfaces use material; only major surfaces receive the full frame. */
.jade-panel, .jade-account-sidebar, .jade-material-panel, .jade-stat-grid article, .jade-character, .jade-item-grid article, .jade-product-grid article, .jade-achievement-grid article, .jade-feature-panel, .jade-quest-list article, .jade-event-list article, .jade-pass-banner, .jade-day-grid article, .jade-swatches article {
  border: 3px double #363b37 !important;
  border-radius: 0 !important;
  background-color: #0b0e0c !important;
  background-image: var(--jade-material) !important;
  background-position: center !important;
  background-repeat: repeat !important;
  background-size: 1254px 1254px !important;
  box-shadow: inset 0 0 0 1px #78633e, 0 8px 20px rgba(0,0,0,.48) !important;
}
.jade-panel-major, .jade-account-content, .jade-auth-panel, .jade-event-detail {
  border: 0 !important;
  border-radius: 0 !important;
  background-color: #0b0e0c !important;
  background-image: var(--jade-tl), var(--jade-tr), var(--jade-bl), var(--jade-br), var(--jade-rt), var(--jade-rb), var(--jade-rl), var(--jade-rr), var(--jade-material) !important;
  background-position: left top, right top, left bottom, right bottom, left top, left bottom, left top, right top, center !important;
  background-repeat: no-repeat, no-repeat, no-repeat, no-repeat, repeat-x, repeat-x, repeat-y, repeat-y, repeat !important;
  background-size: var(--jade-corner) var(--jade-corner), var(--jade-corner) var(--jade-corner), var(--jade-corner) var(--jade-corner), var(--jade-corner) var(--jade-corner), auto var(--jade-rail-top-height), auto var(--jade-rail-bottom-height), var(--jade-rail-side-width) auto, var(--jade-rail-side-width) auto, 1254px 1254px !important;
  box-shadow: 0 8px 22px rgba(0, 0, 0, .58) !important;
}
.jade-panel-major { padding:64px; }

/* Hero */
.jade-home-hero { position: relative; min-height: 570px; overflow: hidden; border-bottom: 1px solid #6f5526; background: radial-gradient(ellipse at 76% 44%, rgba(60,83,82,.24), transparent 43%), #080b09; }
.jade-home-hero::before { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(90deg, rgba(4,5,5,.99) 0%, rgba(4,5,5,.91) 36%, rgba(4,5,5,.43) 67%, rgba(4,5,5,.28)); pointer-events: none; }
.jade-home-character { position: absolute; top: -35px; right: max(-20px, calc((100vw - 1420px) / 2)); z-index: 0; width: min(760px, 57vw); height: 690px; object-fit: contain; object-position: center top; filter: drop-shadow(0 8px 28px #000); mask-image: linear-gradient(to bottom, transparent, #000 7%, #000 82%, transparent), linear-gradient(to right, transparent, #000 18%); mask-composite: intersect; }
.jade-home-hero-copy { position: relative; z-index: 2; width: min(1320px, calc(100% - 48px)); margin: auto; padding: 88px 0 62px; }
.jade-home-hero h1 { max-width: 680px; margin: 0; color: #f1d58e; font: 700 76px/.98 'DejaVu Serif', Georgia, serif; text-shadow: 0 3px 0 #321b12, 0 0 24px rgba(231,195,111,.26); }
.jade-home-claim { max-width: 700px; margin: 15px 0 0; color: #efe4cd; font: 600 29px/1.25 'DejaVu Serif', Georgia, serif; text-wrap: pretty; }
.jade-home-hero-summary { max-width: 760px; margin: 16px 0 0; color: #c7bda8; font-size: 15px; line-height: 1.55; overflow-wrap: anywhere; }
.jade-home-records { width: fit-content; max-width: 100%; margin-top: 22px; padding-left: 13px; border-left: 1px solid #78633e; }
.jade-home-records > .jade-eyebrow { display: block; }
.jade-home-stats { min-height: 24px; margin-top: 7px; display: flex; align-items: center; flex-wrap: wrap; gap: 7px 24px; color: #b9af9b; font-size: 13px; }
.jade-home-stats strong { color: #e9ca76; }
.jade-home-actions { margin-top: 22px; display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }

.jade-roster-heading { margin-bottom: 23px; padding-bottom: 16px; display: flex; align-items: end; justify-content: space-between; gap: 20px; border-bottom: 1px solid #674f24; }
.jade-roster-heading h2 { margin: 4px 0 6px; font-size: 28px; }
.jade-roster-heading p:last-child { max-width: 680px; margin: 0; color: var(--jade-muted); font-size: 14px; line-height: 1.5; }
.jade-roster-heading > strong { flex: none; color: #d6b66f; font: 700 56px/.9 'DejaVu Serif', Georgia, serif; }
.jade-class-factions { display: grid; gap: 31px; }
.jade-class-faction { min-width: 0; }
.jade-faction-heading { margin-bottom: 11px; padding-bottom: 9px; display: flex; align-items: center; justify-content: space-between; gap: 12px; border-bottom: 1px solid rgba(112,91,53,.58); }
.jade-faction-heading h3 { min-width: 0; margin: 0; color: #e9d6a6; font-size: 19px; }
.jade-faction-heading > span { width: 30px; height: 30px; flex: none; display: grid; place-items: center; border: 1px solid #685638; color: #d9c286; font: 700 12px 'DejaVu Serif', Georgia, serif; }
.jade-class-grid { margin: 0; padding: 0; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 10px; list-style: none; }
.jade-class-card { min-width: 0; min-height: 224px; padding: 9px 8px 11px; display: grid; grid-template-rows: 1fr auto; overflow: hidden; border: 1px solid rgba(127,105,64,.48); background: radial-gradient(ellipse at 50% 55%, rgba(50,63,57,.34), transparent 64%), linear-gradient(155deg, rgba(19,23,20,.97), rgba(8,11,10,.98)); }
.jade-class-card img { width: 100%; height: 179px; display: block; object-fit: contain; object-position: center bottom; filter: drop-shadow(0 8px 10px rgba(0,0,0,.55)); }
.jade-class-card h4 { min-width: 0; margin: 8px 2px 0; color: #eadfc9; font: 600 13px/1.35 'DejaVu Sans', Arial, sans-serif; text-align: center; overflow-wrap: anywhere; }

/* Home content */
.jade-home-section { width: min(1320px, calc(100% - 48px)); margin: auto; padding-top: 44px; }
.jade-home-content { display: grid; grid-template-columns: minmax(0, 1.65fr) minmax(320px, .85fr); gap: 34px; }
.jade-home-feed, .jade-home-events, .jade-home-block, .jade-event-cards, .jade-list { display: grid; gap: 16px; }
.jade-home-feed, .jade-home-events { align-content: start; gap: 30px; }
.jade-section-heading { min-height: 32px; padding-bottom: 9px; display: flex; align-items: end; justify-content: space-between; gap: 20px; border-bottom: 1px solid #674f24; }
.jade-section-heading h2 { margin: 0; font-size: 21px; }
.jade-section-heading > a { color: #b9ad94; font-size: 12px; text-decoration: none; }
.jade-section-heading > a:hover { color: #f1d58e; }
.jade-list-row { min-height: 70px; padding: 14px 17px; display: flex; align-items: center; justify-content: space-between; gap: 20px; border: 1px solid #3c382f; background: rgba(17,18,18,.9); color: #e9ddc3; text-decoration: none; }
.jade-list-row:hover { border-color: #8c7038; background: #171817; }
.jade-list-row span, .jade-list-row small { display: block; min-width: 0; }
.jade-list-row small { margin-top: 3px; color: #9e9584; font-size: 12px; }
.jade-list-row time, .jade-event-card time { flex: none; color: #958c7a; font-size: 11px; }
.jade-empty-row { min-height: 88px; padding: 24px; display: grid; place-items: center; color: #948b7b; text-align: center; font-size: 13px; }
.jade-event-card { min-height: 92px; padding: 18px; display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 6px 16px; color: #e8ddc6; text-decoration: none; }
.jade-event-card .jade-status { grid-column: 1 / -1; color: #c5a95d; font-size: 10px; font-weight: 700; text-transform: uppercase; }
.jade-event-card strong { overflow-wrap: anywhere; }
.jade-hns { padding: 20px; }
.jade-hns header { display: flex; justify-content: space-between; gap: 18px; }
.jade-hns h2 { margin: 0 0 5px; font-size: 18px; }
.jade-hns p { margin: 0; color: var(--jade-muted); font-size: 12px; line-height: 1.5; }
.jade-hns header > strong { flex: none; color: #e7ca79; font-size: 13px; }
.jade-hns dl { margin: 16px 0 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-block: 1px solid #494238; }
.jade-hns dl div { padding: 12px 8px; border-right: 1px solid #494238; }
.jade-hns dl div:last-child { border-right: 0; }
.jade-hns dt { color: #8f8778; font-size: 10px; }
.jade-hns dd { margin: 4px 0 0; color: #ded1b8; font-size: 12px; }
.jade-hns details { margin-top: 14px; color: #bcb19c; font-size: 12px; }
.jade-hns summary { color: #e2d3b4; cursor: pointer; font-weight: 700; }
.jade-hns ol { margin: 10px 0 0; padding-left: 20px; line-height: 1.7; }
.jade-notice { padding:64px 68px; display:flex; align-items:center; justify-content:space-between; gap:28px; }
.jade-notice h2 { margin: 4px 0 6px; font-size: 23px; }
.jade-notice p { margin: 0; color: var(--jade-muted); }
.jade-home-links { padding-bottom: 58px; }
.jade-home-links nav { margin-top: 16px; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.jade-link-tile { min-height: 88px; padding: 18px; display: flex; flex-direction: column; justify-content: center; color: #e8dcc4; text-decoration: none; }
.jade-link-tile:hover { filter: brightness(1.1); }
.jade-link-tile strong, .jade-link-tile span { display: block; }
.jade-link-tile span { margin-top: 4px; color: #9e9585; font-size: 11px; }

/* Public pages and forms */
.jade-main > .mx-auto { width: min(1080px, calc(100% - 32px)); max-width: none; padding-top: 48px; padding-bottom: 64px; }
.jade-main > .mx-auto > .mb-10, .jade-main > .mx-auto > .mb-8:first-child { margin-bottom: 26px; text-align: left; }
.jade-main > .mx-auto h1 { font-size: 34px; line-height: 1.15; }
.jade-site .rounded-xl, .jade-site .rounded-2xl, .jade-site .rounded-lg { border-radius: 2px !important; }
.jade-site .border-slate-800, .jade-site .bg-slate-900\/70, .jade-site .bg-slate-900\/60, .jade-site .bg-slate-900\/50, .jade-site .bg-slate-900\/40, .jade-site .bg-slate-950\/70, .jade-site .bg-slate-950\/50 { border:3px double #363b37 !important; background-color:#0b0e0c !important; background-image:var(--jade-material) !important; background-position:center !important; background-repeat:repeat !important; background-size:1254px 1254px !important; box-shadow:inset 0 0 0 1px #78633e !important; }
.jade-site .text-slate-100 { color: #efe5cf; }
.jade-site .text-slate-300, .jade-site .text-slate-400 { color: #bbb09a; }
.jade-site .text-primary-300, .jade-site .text-primary-400 { color: var(--jade-gold-bright); }
.jade-site .text-shimmer { color: var(--jade-gold-bright); background: none; -webkit-text-fill-color: initial; text-shadow: none; }
.jade-site .prose { color: #c6bba5; }
.jade-site .prose h2, .jade-site .prose h3, .jade-site .prose strong { color: #f0dfb5; }
.jade-site .prose a { color: #e6c66f; }
.jade-site input, .jade-site textarea, .jade-site select { width:100%; min-height:46px; margin-top:6px; padding:10px 13px; border:3px double #555b55 !important; border-radius:0 !important; background-color:#0a0d0b !important; background-image:var(--jade-material) !important; background-position:center !important; background-repeat:repeat !important; background-size:1254px 1254px !important; color:#eee0c2 !important; box-shadow:inset 0 0 0 1px #7f6940 !important; }
.jade-site select { appearance:auto; padding-right:36px; }
.jade-site input[type="checkbox"], .jade-site input[type="radio"] { width:24px; min-height:24px; height:24px; margin:0 8px 0 0; padding:0; accent-color:#78916f; }
.jade-site input:focus, .jade-site textarea:focus, .jade-site select:focus { border-color:#8ca184 !important; box-shadow:inset 0 0 0 1px #b99a5b, 0 0 0 2px rgba(122,151,113,.22) !important; }
.jade-site .language-switcher select { width:auto; min-width:64px; min-height:36px; height:36px; margin:0; padding:0 24px 0 10px; }
.jade-site .errorlist { margin: 7px 0 0; color: #e99a87; font-size: 12px; }
.jade-messages { width: min(1080px, calc(100% - 32px)); margin: 14px auto 0; }
.jade-messages p { padding: 12px; border: 1px solid #7d6337; background: #17130d; }
.jade-auth-shell { width: min(520px, calc(100% - 24px)); min-height: calc(100vh - 190px); margin: auto; padding: 58px 0; }
.jade-auth-panel { padding: 68px 62px 58px; }
.jade-auth-panel header { text-align: center; }
.jade-auth-panel header h1 { margin: 5px 0 8px; font-size: 32px; }
.jade-auth-panel header > p:last-child { margin: 0; color: var(--jade-muted); font-size: 13px; }
.jade-auth-panel form { margin-top: 26px; display: grid; gap: 17px; }
.jade-auth-panel label { color: #d3c7af; font-size: 13px; }
.jade-auth-panel label small { display: block; margin-top: 6px; color: #8f8778; font-size: 11px; line-height: 1.45; }
.jade-auth-panel .jade-button { justify-self: center; }
.jade-auth-switch { margin: 22px 0 0; color: #9f9685; font-size: 13px; text-align: center; }
.jade-auth-switch a, .jade-back-link { color: #e4c778; }
.jade-back-link { display: inline-block; margin-bottom: 22px; text-decoration: none; font-size: 13px; }
.jade-event-detail { padding: 66px 62px; }

/* Account */
.jade-account-shell { width: min(1320px, calc(100% - 32px)); margin: 26px auto 60px; display: grid; grid-template-columns: 250px minmax(0, 1fr); gap: 22px; align-items: start; }
.jade-account-sidebar { position: sticky; top: 96px; max-height: calc(100vh - 112px); overflow: auto; padding: 28px 16px 18px; }
.jade-account-seal { width: 58px; height: 58px; margin: 0 auto 14px; display: grid; place-items: center; border: 1px solid #6d5937; background: #1b1d1c; color: var(--jade-gold-bright); font: 700 25px Georgia, serif; }
.jade-eyebrow { margin: 0; color: var(--jade-gold); font-size: 10px; font-weight: 700; text-transform: uppercase; }
.jade-account-sidebar > .jade-eyebrow, .jade-account-sidebar > h2, .jade-account-state { text-align: center; }
.jade-account-sidebar > h2 { margin: 4px 0; font-size: 19px; }
.jade-account-state { margin: 0 0 15px; color: var(--jade-muted); font-size: 12px; }
.jade-account-state i { display: inline-block; width: 7px; height: 7px; margin-right: 6px; border-radius: 50%; background: #6a6254; }
.jade-account-state i.is-online { background: #5eaa76; }
.jade-account-sidebar nav { display: grid; }
.jade-account-nav-group { margin: 16px 10px 5px; color: #8f846f; font-size: 9px; font-weight: 700; text-transform: uppercase; }
.jade-account-sidebar nav a { min-height:38px; padding:10px 12px; border-left:2px solid transparent; color:#bdb19a; background:rgba(5,7,6,.34); text-decoration:none; font-size:12px; }
.jade-account-sidebar nav a:hover, .jade-account-sidebar nav a.is-active { color:#fff1c7; background:rgba(91,119,82,.16); border-left-color:#8fa286; }
.jade-account-content { min-width:0; min-height:620px; padding:68px 64px; overflow:hidden; }
.jade-account-heading { margin-bottom: 22px; padding-bottom: 17px; border-bottom: 1px solid var(--jade-line); }
.jade-account-heading h1 { margin: 3px 0 7px; font-size: 30px; overflow-wrap: anywhere; }
.jade-account-heading > p:last-child { max-width: 720px; margin: 0; color: var(--jade-muted); font-size: 14px; line-height: 1.6; }
.jade-stat-grid { margin-bottom: 20px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.jade-stat-grid article, .jade-material-panel, .jade-character, .jade-item-grid article, .jade-product-grid article, .jade-achievement-grid article, .jade-feature-panel, .jade-quest-list article, .jade-event-list article, .jade-pass-banner, .jade-day-grid article, .jade-swatches article { border:3px double #363b37 !important; background-color:#0b0e0c !important; background-image:var(--jade-material) !important; background-position:center !important; background-repeat:repeat !important; background-size:1254px 1254px !important; box-shadow:inset 0 0 0 1px #78633e !important; }
.jade-stat-grid article { min-height: 112px; padding: 16px; }
.jade-stat-grid small, .jade-stat-grid span { display: block; color: #9d937f; font-size: 11px; }
.jade-stat-grid strong { display: block; margin: 7px 0 3px; color: var(--jade-gold-bright); font: 700 28px Georgia, serif; overflow-wrap: anywhere; }
.jade-stat-grid .jade-code { font-size: 17px; }
.jade-stat-grid .jade-stat-date { font-size: 16px; }
.jade-split { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.jade-material-panel { padding: 18px; }
.jade-material-panel > h2 { margin: 0 0 13px; font-size: 18px; }
.jade-row { min-height: 52px; padding: 9px 4px; display: flex; align-items: center; justify-content: space-between; gap: 16px; border-bottom: 1px solid #3e382e; color: #ddd1b9; text-decoration: none; }
.jade-row:last-child { border-bottom: 0; }
.jade-row span, .jade-row small { display: block; }
.jade-row small { margin-top: 3px; color: #918876; font-size: 11px; }
.jade-row > strong { color: var(--jade-gold); font-size: 13px; }
.jade-ledger { margin: 0; }
.jade-ledger > div { padding: 10px 0; display: grid; grid-template-columns: minmax(120px, 1fr) 1.3fr; gap: 15px; border-bottom: 1px solid #3e382e; }
.jade-ledger dt { color: #9d937f; font-size: 12px; }
.jade-ledger dd { margin: 0; color: #eadcbd; text-align: right; overflow-wrap: anywhere; }
.jade-empty { grid-column: 1 / -1; min-height: 130px; display: flex; flex-direction: column; align-items: center; justify-content: center; color: #8f8675; text-align: center; }
.jade-character-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.jade-character { min-height: 160px; padding: 18px; display: grid; grid-template-columns: 64px 1fr; gap: 16px; }
.jade-class-orb { width: 60px; height: 60px; display: grid; place-items: center; border: 2px solid #6d5937; border-radius: 50%; background: #21150f; color: var(--jade-gold-bright); font: 700 22px Georgia, serif; }
.jade-character h2 { margin: 2px 0 4px; }
.jade-character p { margin: 0; color: #a89e8a; font-size: 12px; }
.jade-table-wrap { overflow: auto; }
.jade-table { width: 100%; min-width: 620px; border-collapse: collapse; background: transparent !important; }
.jade-table th, .jade-table td { padding: 12px; border-bottom: 1px solid #3b362d; text-align: left; }
.jade-table th { color: #bca673; font-size: 10px; text-transform: uppercase; }
.jade-table td { color: #c9bea7; font-size: 13px; }
.jade-pagination { gap:18px; }
.jade-page-button { min-width:112px; min-height:42px; padding:10px 14px; display:inline-grid; place-items:center; border:3px double #454b45; background-color:#0a0d0b; background-image:var(--jade-material); background-position:center; background-repeat:repeat; background-size:1254px 1254px; color:#d9cfba; text-decoration:none; box-shadow:inset 0 0 0 1px #806940; }
.jade-page-button:hover { border-color:#7b9273; color:#fff1c7; }
.jade-item-grid, .jade-product-grid, .jade-achievement-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.jade-item-grid article, .jade-product-grid article, .jade-achievement-grid article { padding: 18px; }
.jade-item-icon, .jade-product-mark { width: 50px; height: 50px; margin-bottom: 12px; display: grid; place-items: center; border: 1px solid #6d5937; background: #0e0e0c; color: var(--jade-gold); font-size: 23px; }
.jade-item-icon img { width: 100%; height: 100%; object-fit: contain; }
.jade-product-grid .jade-button { width:178px; height:50px; margin-top:8px; background-image:url("/static/assets/chrome/jade-serpentine/buttons/button-sm-normal.870217657863.webp") !important; }
.jade-feature-panel { min-height: 135px; padding: 20px; display: grid; grid-template-columns: 60px minmax(0, 1fr) auto; align-items: center; gap: 18px; }
.jade-feature-rune { color: var(--jade-gold); font-size: 42px; text-align: center; }
.jade-badge { padding: 7px 10px; border: 1px solid #685638; color: #d8c69e; font-size: 11px; text-transform: uppercase; }
.jade-streak { width: 170px; height: 170px; margin: 0 auto 22px; display: flex; flex-direction: column; align-items: center; justify-content: center; border: 2px solid #6b5634; border-radius: 50%; background: #19130e; }
.jade-streak strong { color: var(--jade-gold-bright); font: 700 50px Georgia, serif; }
.jade-day-grid { display: grid; grid-template-columns: repeat(7, minmax(70px, 1fr)); gap: 7px; overflow: auto; }
.jade-day-grid article { min-height: 95px; padding: 11px; text-align: center; }
.jade-quest-list, .jade-event-list { display: grid; gap: 9px; }
.jade-quest-list article, .jade-event-list article { padding: 16px; display: grid; grid-template-columns: minmax(0, 1fr) 140px auto; align-items: center; gap: 16px; }
.jade-event-list article { grid-template-columns: minmax(0, 1fr) auto; }
.jade-progress { height: 7px; background: #302a21; }
.jade-progress span { display: block; height: 100%; background: #b9904e; }
.jade-pass-banner { padding: 22px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.jade-pass-banner div { text-align: center; border-right: 1px solid #624834; }
.jade-pass-banner div:last-child { border: 0; }
.jade-wheel { aspect-ratio: 1; max-width: 380px; margin: auto; display: grid; place-items: center; border: 12px double #8d713f; border-radius: 50%; background: #241710; }
.jade-referral { padding: 36px; border: 1px solid #5b503c; background: #161714; color: #e8dcc2; text-align: center; }
.jade-referral strong { display: block; margin: 12px; font: 700 32px Georgia, serif; overflow-wrap: anywhere; }
.jade-achievement-grid article { display: grid; grid-template-columns: 42px 1fr; gap: 12px; }
.jade-swatches { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; }
.jade-swatches article { padding: 11px; }

/* Footer */
.jade-footer { width:100%; min-height:118px; margin-top:20px; padding:26px max(24px, calc((100% - 1320px) / 2)); display:flex; align-items:center; justify-content:space-between; gap:30px; border-top:3px double #454b45; background-color:#090c0a; background-image:var(--jade-material); background-position:center; background-repeat:repeat; background-size:1254px 1254px; box-shadow:inset 0 1px 0 #806940; }
.jade-footer strong { display: block; color: var(--jade-gold); font-size: 20px; }
.jade-footer span { color: var(--jade-muted); font-size: 11px; }
.jade-footer nav { display: flex; flex-wrap: wrap; gap: 16px; }
.jade-footer a { color: #d8c9aa; font-size: 13px; text-decoration: none; }
.jade-footer a:hover { color: #fff0bd; }

@media (min-width: 1300px) {
  :root {
    --jade-corner:96px;
    --jade-rail-top-height:52px;
    --jade-rail-bottom-height:48px;
    --jade-rail-side-width:52px;
    --jade-tl:url("/static/assets/chrome/jade-serpentine/panel-corner-tl-lg.26b9243bf5c6.webp");
    --jade-tr:url("/static/assets/chrome/jade-serpentine/panel-corner-tr-lg.d7907525d813.webp");
    --jade-bl:url("/static/assets/chrome/jade-serpentine/panel-corner-bl-lg.a0fd9c460549.webp");
    --jade-br:url("/static/assets/chrome/jade-serpentine/panel-corner-br-lg.ec20a67bcfb4.webp");
    --jade-rt:url("/static/assets/chrome/jade-serpentine/panel-rail-top-lg.7903f546cc65.webp");
    --jade-rb:url("/static/assets/chrome/jade-serpentine/panel-rail-bottom-lg.473413536616.webp");
    --jade-rl:url("/static/assets/chrome/jade-serpentine/panel-rail-left-lg.536e0350ed3c.webp");
    --jade-rr:url("/static/assets/chrome/jade-serpentine/panel-rail-right-lg.ec9cfa992daa.webp");
  }
}
@media (min-width: 1700px) {
  :root {
    --jade-corner:112px;
    --jade-rail-top-height:60px;
    --jade-rail-bottom-height:60px;
    --jade-rail-side-width:60px;
    --jade-tl:url("/static/assets/chrome/jade-serpentine/panel-corner-tl-xlg.807c6aca50b3.webp");
    --jade-tr:url("/static/assets/chrome/jade-serpentine/panel-corner-tr-xlg.2f3e2b389a61.webp");
    --jade-bl:url("/static/assets/chrome/jade-serpentine/panel-corner-bl-xlg.f301daddba5a.webp");
    --jade-br:url("/static/assets/chrome/jade-serpentine/panel-corner-br-xlg.30a7b704b768.webp");
    --jade-rt:url("/static/assets/chrome/jade-serpentine/panel-rail-top-xlg.d209f7d9192f.webp");
    --jade-rb:url("/static/assets/chrome/jade-serpentine/panel-rail-bottom-xlg.84c89c6b5b92.webp");
    --jade-rl:url("/static/assets/chrome/jade-serpentine/panel-rail-left-xlg.26847319f872.webp");
    --jade-rr:url("/static/assets/chrome/jade-serpentine/panel-rail-right-xlg.2c568e4b52c8.webp");
  }
  .jade-panel-major { padding:76px; }
  .jade-auth-panel { padding:76px 70px 66px; }
  .jade-account-content { padding:76px 72px; }
  .jade-event-detail { padding:76px 70px; }
}
@media (max-width: 1250px) {
  .jade-nav-frame { gap: 8px; }
  .jade-brand { width: 145px; }
  .jade-brand strong { font-size: 20px; }
  .jade-nav a, .jade-user-nav > a, .jade-link-button { padding-inline: 7px; font-size: 10px; }
  .jade-user-nav .worlds-link { display: none; }
}
@media (max-width: 1340px) {
  .jade-menu { display: block; margin-left: auto; }
  .jade-user-nav { display: none; }
  .jade-nav { display:none; position:absolute; top:var(--jade-nav-height); left:0; right:0; max-height:calc(100vh - var(--jade-nav-height)); overflow:auto; flex-direction:column; align-items:stretch; padding:18px; border:3px double #454b45; background-color:#0a0d0b; background-image:var(--jade-material); background-position:center; background-repeat:repeat; background-size:1254px 1254px; box-shadow:0 15px 30px #000, inset 0 0 0 1px #806940; }
  .jade-nav.is-open { display: flex; }
  .jade-nav a, .jade-nav .jade-link-button { display: block; width: 100%; min-height: 44px; text-align: left; }
  .jade-nav-language, .jade-mobile-actions { display: block; }
  .jade-mobile-actions { padding-top: 8px; border-top: 1px solid #50442f; }
}
@media (max-width: 1050px) {
  .jade-home-character { right: -120px; width: 700px; opacity: .72; }
  .jade-home-content { grid-template-columns: 1fr; }
  .jade-home-links nav { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .jade-account-shell { grid-template-columns: 1fr; }
  .jade-account-sidebar { position: static; max-height: none; }
  .jade-account-sidebar nav { display: flex; overflow: auto; }
  .jade-account-nav-group, .jade-account-seal { display: none; }
  .jade-account-sidebar nav a { flex: none; border-left: 0; border-bottom: 2px solid transparent; }
  .jade-account-sidebar nav a.is-active { border-bottom-color: var(--jade-gold); }
}
@media (max-width: 680px) {
  :root {
    --jade-corner:64px;
    --jade-rail-top-height:35px;
    --jade-rail-bottom-height:32px;
    --jade-rail-side-width:35px;
    --jade-tl:url("/static/assets/chrome/jade-serpentine/panel-corner-tl-sm.9013b35d59d4.webp");
    --jade-tr:url("/static/assets/chrome/jade-serpentine/panel-corner-tr-sm.fc7b23f46bc4.webp");
    --jade-bl:url("/static/assets/chrome/jade-serpentine/panel-corner-bl-sm.25d600ad48d9.webp");
    --jade-br:url("/static/assets/chrome/jade-serpentine/panel-corner-br-sm.7d3fc4c12d23.webp");
    --jade-rt:url("/static/assets/chrome/jade-serpentine/panel-rail-top-sm.95f047e84361.webp");
    --jade-rb:url("/static/assets/chrome/jade-serpentine/panel-rail-bottom-sm.5a001dc78169.webp");
    --jade-rl:url("/static/assets/chrome/jade-serpentine/panel-rail-left-sm.fbe4f1a7b84c.webp");
    --jade-rr:url("/static/assets/chrome/jade-serpentine/panel-rail-right-sm.df276a59513f.webp");
  }
  .jade-nav-frame { width:100%; min-height:var(--jade-nav-height); padding:5px calc(var(--jade-nav-cap) + 2px); }
  .jade-brand { width: 126px; }
  .jade-brand-kicker { font-size: 7px; }
  .jade-brand strong { font-size: 18px; }
  .jade-brand small { font-size: 8px; }
  .jade-user-nav { display:none; }
  .jade-user-nav .jade-button { width:164px !important; height:41px !important; background-image:url("/static/assets/chrome/jade-serpentine/buttons/button-xs-normal.322a196a2d25.webp") !important; font-size:10px !important; }
  .jade-home-hero { min-height: 500px; }
  .jade-home-hero::before { background: linear-gradient(90deg, rgba(4,5,5,.97), rgba(4,5,5,.64) 72%, rgba(4,5,5,.42)); }
  .jade-home-character { top: 15px; right: -150px; width: 500px; height: 520px; opacity: .42; }
  .jade-home-hero-copy { width: calc(100% - 28px); padding: 76px 0 55px; }
  .jade-home-hero h1 { max-width: 330px; font-size: 47px; }
  .jade-home-hero-copy > p { max-width: 260px; margin-top: 16px; font-size: 14px; }
  .jade-home-stats { max-width: 250px; margin-top: 20px; flex-wrap: wrap; gap: 7px 18px; }
  .jade-home-actions { margin-top: 20px; flex-direction: column; align-items: flex-start; gap: 2px; }
  .jade-home-section { width: calc(100% - 20px); padding-top: 34px; }
  .jade-home-content, .jade-home-feed, .jade-home-events { gap: 26px; }
  .jade-section-heading h2 { font-size: 19px; }
  .jade-list-row { padding: 13px; align-items: flex-start; flex-direction: column; gap: 6px; }
  .jade-event-card { padding: 15px; }
  .jade-hns { padding: 16px 14px; }
  .jade-hns header { flex-direction: column; gap: 7px; }
  .jade-hns dl { grid-template-columns: 1fr; }
  .jade-hns dl div { border-right: 0; border-bottom: 1px solid #494238; }
  .jade-home-links nav { grid-template-columns: 1fr; gap: 9px; }
  .jade-link-tile { min-height: 76px; padding: 15px; }
  .jade-panel-major { padding:52px 36px; }
  .jade-notice { padding:52px 38px; flex-direction:column; align-items:flex-start; }
  .jade-main > .mx-auto { width: 100%; padding: 34px 10px 46px; }
  .jade-auth-shell { width: 100%; padding: 24px 8px; }
  .jade-auth-panel { padding:56px 34px 48px; }
  .jade-account-shell { width: 100%; margin-top: 8px; gap: 8px; }
  .jade-account-sidebar { padding: 20px 12px 12px; }
  .jade-account-content { min-height:500px; padding:54px 38px; }
  .jade-stat-grid, .jade-split, .jade-character-grid, .jade-item-grid, .jade-product-grid, .jade-achievement-grid, .jade-swatches { grid-template-columns: 1fr; }
  .jade-feature-panel { grid-template-columns: 1fr; }
  .jade-feature-rune { display: none; }
  .jade-quest-list article, .jade-event-list article { grid-template-columns: 1fr; }
  .jade-pass-banner { grid-template-columns: 1fr; }
  .jade-pass-banner div { padding-bottom: 10px; border-right: 0; border-bottom: 1px solid #624834; }
  .jade-ledger > div { grid-template-columns: 1fr; gap: 4px; }
  .jade-ledger dd { text-align: left; }
  .jade-referral { padding: 24px 14px; }
  .jade-footer { min-height: 150px; margin-top: 8px; padding: 24px 20px; flex-direction: column; align-items: flex-start; gap: 14px; }
  .jade-footer nav { gap: 8px 14px; }
  .jade-pagination { align-items:flex-start; flex-direction:column; }
}
@media (max-width: 1250px) {
  .jade-class-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (max-width: 1050px) {
  .jade-class-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 680px) {
  .jade-home-hero::before { background: linear-gradient(90deg, rgba(4,5,5,.99), rgba(4,5,5,.86) 72%, rgba(4,5,5,.72)); }
  .jade-home-character { top: 8px; right: -145px; width: 400px; height: 460px; opacity: .34; }
  .jade-home-hero-copy { width: calc(100% - 28px); padding: 64px 0 43px; }
  .jade-home-hero h1 { max-width: 100%; font-size: clamp(39px, 11vw, 47px); }
  .jade-home-claim { max-width: 100%; margin-top: 12px; font-size: 23px; line-height: 1.28; }
  .jade-home-hero-copy > .jade-home-hero-summary { max-width: 100%; margin-top: 13px; font-size: 14px; }
  .jade-home-records { width: 100%; margin-top: 18px; }
  .jade-home-stats { max-width: 100%; margin-top: 7px; gap: 7px 17px; }
  .jade-home-actions { margin-top: 17px; gap: 2px; }
  .jade-opening-section { padding-top: 28px; }
  .jade-roster-heading { align-items: flex-start; gap: 12px; }
  .jade-roster-heading > div { min-width: 0; }
  .jade-roster-heading h2 { font-size: 23px; overflow-wrap: anywhere; }
  .jade-roster-heading > strong { font-size: 46px; }
  .jade-class-factions { gap: 25px; }
  .jade-class-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  .jade-class-card { min-height: 188px; padding: 7px 6px 9px; }
  .jade-class-card img { height: 149px; }
  .jade-class-card h4 { margin-top: 6px; font-size: 11px; }
}
