
  :root {
    --night: #0B0D12; --panel: #151A22; --panel2: #1C222C; --ink: #F3EFE6; --txt: #D5D9E0; --dim: #A3AAB6; --dim2: #8F97A6; --line: #262B36; --line2: #2C3340; --meso: #F2B53A; --maple: #E0452B; --up: #F0785F; --down: #6FA3E8;
    --gutter: 16px; --r-card: 12px; --r-in: 10px; --row-h: 56px; --icon: 36px;   
    --display: 'Montserrat', 'Arial Black', system-ui, sans-serif; --body: 'IBM Plex Sans', system-ui, sans-serif; --game: Arial, 'Helvetica Neue', sans-serif;
    --win-edge: #7A8290; --win-body: #F4F5F8; --tab-on: #E86A86; --tab-on-hi: #FFB4C4; --tab-off: #BDBBBD;
    --tip: #2D2D5B; --tip-edge: #8A8FC8; --tip-dim: #A6A6C4; --tip-org: #F08A2E;
  }
  * { box-sizing: border-box; }
  html, body { margin: 0; background: var(--night); color: var(--ink); font-family: var(--body); }
  
  body { display: flex; flex-direction: column; min-height: 100vh; min-height: 100dvh; }
  body > .foot { margin-top: auto; }
  a { color: inherit; }
  img.px, .row img, .big-icon img { image-rendering: pixelated; }

  
  :root { --hdr: 58px; --sbw: 236px; --cell: #EDEBE4; --cell-edge: #C9C6BB; }
  .nav { position: sticky; top: env(safe-area-inset-top, 0px); z-index: 60; height: var(--hdr); display: flex; align-items: center; gap: 14px; padding: 0 16px 0 18px;
    background: rgba(11,13,18,.97); border-bottom: 1px solid var(--line); }
  .brand { flex: none; display: flex; align-items: center; gap: 9px; text-decoration: none; font: 900 18px/1 var(--display); letter-spacing: .04em; }
  .brand img { width: 24px; height: 24px; }
  .brand .bt { display: flex; flex-direction: column; }
  .brand small { font: 700 9px var(--body); letter-spacing: .04em; color: var(--meso); margin-top: 3px; }
  .menu { display: flex; align-items: center; gap: 2px; margin-left: 6px; }
  
  .nav .menu > .mi { position: relative; display: flex; flex-direction: row; align-items: center; flex: none; gap: 0; min-width: auto; }
  .nav .menu .top { display: block; grid-template-columns: none; gap: 0; width: auto; }   
  .menu .top { font: 700 13px var(--display); letter-spacing: .08em; color: var(--dim); padding: 9px 11px; border-radius: 8px; text-decoration: none; white-space: nowrap; transition: color .12s, background .12s; }
  .menu .top:hover, .menu .mi.open .top { color: var(--ink); background: rgba(255,255,255,.05); }
  .menu .top[aria-current="page"] { color: var(--ink); box-shadow: inset 0 -2px 0 var(--meso); border-radius: 8px 8px 0 0; }
  .menu .dd { all: unset; cursor: pointer; width: 20px; height: 26px; margin-left: -9px; display: grid; place-items: center; border-radius: 6px; color: var(--dim); }
  .menu .dd i { width: 6px; height: 6px; border-right: 1.6px solid currentColor; border-bottom: 1.6px solid currentColor; transform: translateY(-2px) rotate(45deg); transition: transform .15s; }
  .menu .mi.open .dd i { transform: translateY(1px) rotate(225deg); }
  .menu .dd:hover { color: var(--ink); } .menu .dd:focus-visible { outline: 2px solid var(--meso); }
  .menu a:focus-visible, .sb a:focus-visible, .gs input:focus-visible { outline: 2px solid var(--meso); outline-offset: 1px; }
  .dpanel { position: absolute; top: calc(100% + 10px); left: -6px; width: 460px; padding: 10px; display: grid; grid-template-columns: 1fr 1fr; gap: 2px 6px;
    background: #0F1320; border: 1px solid rgba(255,255,255,.12); border-radius: 14px; box-shadow: 0 26px 60px rgba(0,0,0,.6);
    opacity: 0; visibility: hidden; transform: translateY(-4px); transition: opacity .14s, transform .14s, visibility 0s .14s; }
  .dpanel::before { content: ""; position: absolute; left: 0; right: 0; top: -12px; height: 12px; }   
  .menu .mi.open .dpanel { opacity: 1; visibility: visible; transform: none; transition: opacity .14s, transform .14s; }
  .gs { position: relative; flex: 1; max-width: 540px; margin-left: auto; color: #9B99C4; }
  .gs .mag { position: absolute; left: 14px; top: 50%; width: 16px; height: 16px; transform: translateY(-50%); pointer-events: none; }
  .gs input { width: 100%; height: 38px; border-radius: 999px; border: 1px solid rgba(255,255,255,.14); background: #0D1119; color: #fff; font: 14px var(--body); padding: 0 44px 0 40px;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.04); -webkit-appearance: none; appearance: none; text-overflow: ellipsis; }   
  .gs input::placeholder { color: #8683B0; }
  .gs input::-webkit-search-cancel-button { display: none; }
  .gs input:focus { border-color: rgba(242,181,58,.6); background: #0F1420; }
  @media (max-width: 640px) { .gs { color: var(--dim2); } .gs input { border-color: var(--line2); background: var(--panel); } .gs input::placeholder { color: var(--dim2); } .gs input:focus { background: var(--panel); } }
  .gs kbd { position: absolute; right: 12px; top: 50%; transform: translateY(-50%); font: 700 10px var(--display); color: #8683B0; border: 1px solid rgba(255,255,255,.14); border-radius: 5px; padding: 2px 6px; pointer-events: none; }
  .gs input:focus ~ kbd { opacity: 0; }
  .gsr { position: absolute; z-index: 70; left: 0; right: 0; top: calc(100% + 8px); margin: 0; padding: 6px; list-style: none; max-height: min(70vh, 520px); overflow: auto;
    background: #10141F; border: 1px solid rgba(255,255,255,.14); border-radius: 14px; box-shadow: 0 24px 56px rgba(0,0,0,.6); }
  .gsr li a { display: flex; align-items: baseline; gap: 8px; padding: 8px 10px; border-radius: 9px; color: #E8E6FF; text-decoration: none; font: 13.5px var(--body); }
  .gsr li a b { font-weight: 600; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .gsr li a em { font-style: normal; color: #8683B0; font-size: 11.5px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; min-width: 0; }
  .gsr li a small { margin-left: auto; color: #8E8CBE; font-size: 11.5px; font-variant-numeric: tabular-nums; flex: none; }
  .gsr li:hover a, .gsr li[aria-selected="true"] a { background: rgba(242,181,58,.13); color: #fff; }
  .gsr li.grp { display: flex; justify-content: space-between; padding: 10px 11px 4px; }
  .gsr li.grp span { font: 800 11px var(--body); letter-spacing: 0; color: var(--meso); }
  .gsr li.grp small { font: 700 10.5px var(--body); color: #8683B0; }
  .gsr li.more a { justify-content: flex-end; font: 700 11.5px var(--body); color: #8E8CBE; padding-top: 3px; }
  .gsr li.none { padding: 12px; color: #8E8CBE; font: 13px var(--body); }
  .signin { flex: none; display: inline-flex; align-items: center; gap: 6px; font: 700 13px var(--display); color: #fff; background: #5865F2; border-radius: 999px; padding: 9px 15px; text-decoration: none; white-space: nowrap; }
  .signin img { width: 20px; height: 20px; border-radius: 50%; image-rendering: auto; }
  .signin.me { background: rgba(255,255,255,.1); }
  .signin .sm { display: none; }
  
  .sb { position: fixed; z-index: 45; left: 0; top: calc(env(safe-area-inset-top, 0px) + var(--hdr)); bottom: 0; width: var(--sbw); overflow-y: auto; overscroll-behavior: contain;
    padding: 10px 12px 28px; background: #0B0F17; border-right: 1px solid var(--line); scrollbar-width: none; }
  .sb::-webkit-scrollbar { display: none; }
  .sb:not(:has(.sbnav)) { display: none; }
  body.has-sb { padding-left: var(--sbw); }
  
  @media (min-width: 901px) {
    :root { --shell: 1440px; --off: max(0px, calc((100vw - var(--shell)) / 2)); }
    body.has-sb { padding-left: calc(var(--off) + var(--sbw)); padding-right: max(var(--off), var(--rr, 0px)); }
    body.has-sb .sb { left: var(--off); border-left: 1px solid var(--line); }
    body.has-sb .nav { margin-left: calc(-1 * (var(--off) + var(--sbw))); margin-right: calc(-1 * max(var(--off), var(--rr, 0px)));
      padding-left: calc(var(--off) + 18px); padding-right: calc(var(--off) + 16px); }
    body.has-sb .nav .brand { min-width: calc(var(--sbw) - 32px); }
  }
  .sb-top { display: none; }
  .sbnav h4 { display: flex; align-items: center; gap: 8px; margin: 16px 8px 6px; font: 800 12px var(--body); letter-spacing: 0; color: var(--meso); }
  .sbnav h4::after { content: ""; flex: 1; height: 1px; background: rgba(242,181,58,.22); }
  .sbnav h4:first-child { margin-top: 4px; }
  .sb-i { position: relative; display: flex; align-items: center; gap: 10px; padding: 5px 8px; border-radius: 9px; text-decoration: none; font: 700 12.5px var(--display); letter-spacing: .04em; color: var(--dim); transition: background .12s, color .12s; }
  a.sb-i:hover { color: var(--ink); background: rgba(255,255,255,.05); }
  .sb-i[aria-current="page"] { color: var(--ink); background: rgba(242,181,58,.12); }
  .sb .sb-i[aria-current="page"]::before { content: ""; position: absolute; left: -12px; top: 7px; bottom: 7px; width: 3px; border-radius: 0 2px 2px 0; background: var(--meso); box-shadow: 0 0 10px rgba(242,181,58,.6); }
  .sb-i .ic { flex: none; width: 28px; height: 28px; border-radius: 6px; display: grid; place-items: center; background: var(--cell); border: 1px solid var(--cell-edge); box-shadow: inset 0 1px 0 #fff; }
  .sb-i .ic img { width: 22px; height: 22px; object-fit: contain; image-rendering: pixelated; }
  .sb-i .l { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .sb-i .cnt { margin-left: auto; font: 600 10.5px var(--body); color: #8A8EAE; font-variant-numeric: tabular-nums; }   
  .sb-i small { margin-left: auto; font: 700 10px var(--body); letter-spacing: .02em; color: var(--meso); }
  .sb-i.soon { opacity: .45; cursor: default; }
  .dpanel .sb-i { padding: 7px 8px; }
  .dpanel .sb-i:hover { background: rgba(242,181,58,.1); }
  
  @media (min-width: 1181px) {
    html[lang^="ko"], html[lang^="zh"] { --sbw: 156px; }   
    html[lang^="ko"] .sb .sbg .sb-i:not([data-one]), html[lang^="zh"] .sb .sbg .sb-i:not([data-one]) { padding: 0 8px 0 16px; }
    .sb { position: fixed; z-index: 45; left: 0; top: var(--hdr); bottom: 0; width: var(--sbw); overflow-y: auto; padding: 8px 10px 16px; background: #0B0F17; border-right: 1px solid var(--line); scrollbar-width: none; }
    .sb::-webkit-scrollbar { display: none; }
    .sb .sb-i .ic, .sb .sb-i .cnt { display: none; }
    .sb .sbg { border-top: 1px solid var(--line); padding: 2px 0 4px; }
    .sb .sbg:first-child { border-top: 0; }
    .sb .sbg > h4, .sb .sbg > summary { display: flex; align-items: center; height: 38px; margin: 0; padding: 0 10px; border-radius: 8px; font: 700 13.5px var(--body); letter-spacing: 0; text-transform: none; color: var(--ink); }
    .sb .sbg > h4::after { display: none; }
    .sb .sbg > summary { list-style: none; cursor: pointer; user-select: none; }
    .sb .sbg > summary::-webkit-details-marker { display: none; }
    .sb .sbg > summary::after { content: ""; margin-left: auto; width: 7px; height: 7px; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: translateY(-2px) rotate(45deg); opacity: .55; }
    .sb .sbg[open] > summary::after { transform: translateY(2px) rotate(-135deg); }
    .sb .sbg > summary:hover { background: rgba(255,255,255,.05); }
    .sb .sbg:not([open]) > summary { color: var(--dim); }
    .sb .sbg .sb-i { display: flex; align-items: center; height: 36px; margin: 0; padding: 0 10px 0 22px; border-radius: 8px; text-decoration: none; font: 600 13.5px var(--body); letter-spacing: 0; color: var(--txt); }
    .sb .sbg a.sb-i:hover { color: var(--ink); background: rgba(255,255,255,.07); }
    .sb .sbg .sb-i[aria-current="page"] { color: #1A1400; background: var(--meso); font-weight: 700; }
    .sb .sbg .sb-i[aria-current="page"]::before { display: none; }
    .sb .sbg .sb-i.soon { color: var(--dim2); opacity: .6; }
    .sb .sbg .sb-i small { margin-left: auto; font: 700 10.5px var(--body); letter-spacing: 0; color: var(--dim2); }
    .sb .sbg .sub .sb-i { padding-left: 38px; font-size: 13px; }
    .sb .sbg .sb-i[data-par="open"] { color: var(--ink); background: rgba(242,181,58,.10); }
    .sb .sbg .sb-i[data-one] { height: 38px; padding: 0 10px; font-weight: 700; color: var(--ink); }
    .sb .sbg .sb-i[data-one][aria-current="page"] { color: #1A1400; }
  }
  .sbback { position: fixed; inset: 0; z-index: 44; background: rgba(0,0,0,.55); backdrop-filter: blur(2px); }
  
  .adslot[hidden] { display: none; }
  .adslot { box-sizing: border-box; }
  @media (min-width: 1280px) { html.adsr[lang^="ko"], html.adsr[lang^="zh"] { --rr: 200px; } }   
  @media (min-width: 1366px) { html.adsr { --rr: 200px; } }
  .adr, .adl { position: fixed; z-index: 30; right: 20px; top: calc(env(safe-area-inset-top, 0px) + var(--hdr) + 16px); width: var(--aw); height: var(--ah, 600px); visibility: hidden; pointer-events: none; }
  .adl { right: auto; left: 20px; }
  .adr:has(ins[data-ad-status="filled"]), .adl:has(ins[data-ad-status="filled"]) { visibility: visible; pointer-events: auto; }
  .adr.nofit, .adl.nofit { display: none; }
  @media (max-width: 900px) { .adr, .adl { display: none !important; } }
  .adm { width: 100%; height: 0; overflow: hidden; clear: both; } .adm:has(ins[data-ad-status="filled"]) { height: auto; margin: 48px 0 36px; }
  .dbcol > .ads:has(ins[data-ad-status="filled"]) { margin-top: 18px; }
  .adk { position: fixed; z-index: 44; left: 50%; bottom: 0; transform: translateX(-50%); width: 728px; height: 90px; visibility: hidden; pointer-events: none; }
  .adk:has(ins[data-ad-status="filled"]) { visibility: visible; pointer-events: auto; }
  .adk .adk-x { position: absolute; right: 0; top: -30px; height: 30px; min-width: 40px; padding: 0 12px; border: 1px solid var(--line); border-bottom: 0; border-radius: 8px 8px 0 0; background: #0B0F17; color: #e8e8e8; font: 700 18px/1 var(--body); cursor: pointer; }
  html[data-theme="light"] .adk .adk-x { background: #F6EEDA; color: #333; }
  @media (max-width: 899px) { .adk { display: none !important; } }
  body:has(.adk ins[data-ad-status="filled"]) { padding-bottom: 124px; --adk-h: 124px; }   
  body:has(.adk ins[data-ad-status="filled"]) .fb-btn, body:has(.adk ins[data-ad-status="filled"]) .gw-pill { bottom: calc(136px + var(--flt, 0px)); }
  body:has(.adr:not(.nofit) ins[data-ad-status="filled"]) .gw-pill { right: 204px; }   
  .adb { width: min(970px, calc(100% - 32px)); margin: 0 auto; height: 0; overflow: hidden; }
  .adb:has(ins[data-ad-status="filled"]) { height: auto; margin: 28px auto 18px; }
  .adslot ins[data-ad-status="unfilled"] { display: none !important; }
  .ads { width: 100%; height: 0; overflow: hidden; } .ads:has(ins[data-ad-status="filled"]) { height: auto; }   
  
  @media (max-width: 1180px) {
    :root { --sbw: 68px; }
    .sb { padding: 10px 10px 24px; }
    .sb .sbnav h4 { font-size: 0; margin: 12px 6px 8px; } .sb .sbnav h4::after { background: var(--line); }
    .sb .sbg > summary { font-size: 0; margin: 12px 6px 8px; list-style: none; }
    .sb .sb-i { justify-content: center; padding: 6px 0; } .sb .sb-i .l, .sb .sb-i .cnt, .sb .sb-i small { display: none; }
    .sb .sb-i[aria-current="page"]::before { left: -10px; }
    .gs { max-width: 420px; }
  }
  @media (max-width: 1020px) { .signin .lg { display: none; } .signin .sm { display: inline; } .menu .top { padding: 9px 8px; } }
  
  .mbtn { display: none; }
  @media (max-width: 900px) {
    body.has-sb { padding-left: 0; }
    .menu { display: none; }
    .nav { gap: 10px; padding: 0 12px; }
    .gs { max-width: none; } .gs kbd { display: none; } .gs input { padding-right: 14px; }
    .mbtn { display: inline-grid; place-items: center; flex: none; width: 38px; height: 38px; border-radius: 10px; border: 1px solid rgba(255,255,255,.16); background: rgba(255,255,255,.05); color: #fff; cursor: pointer; padding: 0; }
    .mbtn:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }
    .mbtn i, .mbtn i::before, .mbtn i::after { display: block; width: 18px; height: 2px; border-radius: 2px; background: currentColor; position: relative; transition: transform .18s, background .18s; }
    .mbtn i::before, .mbtn i::after { content: ""; position: absolute; left: 0; } .mbtn i::before { top: -6px; } .mbtn i::after { top: 6px; }
    body.sb-open .mbtn i { background: transparent; } body.sb-open .mbtn i::before { transform: translateY(6px) rotate(45deg); } body.sb-open .mbtn i::after { transform: translateY(-6px) rotate(-45deg); }
    .sb { display: block; width: min(300px, 86vw); z-index: 55; transform: translateX(-102%); transition: transform .22s ease-out, box-shadow .22s; box-shadow: none; padding: 12px 14px 32px; }   
    .sb:not(:has(.sbnav)) { display: block; }
    body.sb-open .sb { transform: none; box-shadow: 20px 0 60px rgba(0,0,0,.5); }
    .sb .sbnav h4 { font-size: 12px; margin: 16px 8px 6px; }   
    .sb .sbg > summary { list-style: none; font: 800 12px var(--body); letter-spacing: .02em; color: var(--meso); margin: 16px 8px 6px; } .sb .sub .sb-i { padding-left: 28px; } .sb .sb-i[data-par="open"] { color: var(--ink); }
    .sb .sb-i { justify-content: flex-start; padding: 7px 8px; } .sb .sb-i .l, .sb .sb-i .cnt, .sb .sb-i small { display: inline; }
    .sb .sb-i .cnt, .sb .sb-i small { margin-left: auto; }
    .sb .sb-i .cnt { font-size: 11.5px; } .sb .sb-i small { font-size: 12px; }   
    .sb-top { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; padding: 4px 0 6px; }
    .sb-top a { text-align: center; font: 800 12px var(--display); letter-spacing: .02em; color: var(--ink); text-decoration: none; padding: 11px 6px; border-radius: 10px; background: rgba(255,255,255,.05); border: 1px solid var(--line); }
  }
  @media (max-width: 520px) { .brand .bt small { display: none; } .brand { font-size: 16px; } .signin { padding: 7px 11px; font-size: 12px; } .nav > * { min-width: 0; } .signin.me:has(img) .sm { display: none; } .signin.me:has(img) { padding: 3px; gap: 0; } }
  @media (max-width: 900px) { .nav > .signin { display: none; } }   
  .sb-login { display: none; }
  @media (max-width: 900px) { .sb .sb-login { display: flex; justify-content: center; position: sticky; bottom: -22px; z-index: 2; margin: 14px 0 0; padding: 12px 14px; font-size: 13px; box-shadow: 0 0 0 10px #0A0D14; }    .sb .sb-login .lg { display: inline; } .sb .sb-login .sm { display: none; } }
  @media (prefers-reduced-motion: reduce) { .dpanel, .sb, .mbtn i, .mbtn i::before, .mbtn i::after { transition: none; } }
  @media (max-width: 820px) { input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=button]):not([type=submit]):not([type=reset]):not([type=color]):not([type=file]), select, textarea { font-size: 16px !important; } }   
  .tk-sum[data-fade], .hp-chips[data-fade], .chg-subs[data-fade] { -webkit-mask-image: linear-gradient(90deg, #000 calc(100% - 36px), transparent); mask-image: linear-gradient(90deg, #000 calc(100% - 36px), transparent); }   
  .enm { flex: none; display: inline-flex; align-items: center; justify-content: center; gap: 6px; font: 700 13px var(--display); color: #E8E6FA; background: transparent; border: 1px solid rgba(255,255,255,.22); border-radius: 999px; padding: 8px 13px; cursor: pointer; white-space: nowrap; margin-right: 8px; }   
  .enm[aria-pressed="true"] { background: #F2B53A; border-color: #F2B53A; color: #1B1340; }
  .enm:focus-visible { outline: 2px solid #fff; outline-offset: 2px; } .enm .sm { display: none; }
  @media (max-width: 1020px) { .enm .lg { display: none; } .enm .sm { display: inline; } .enm { padding: 7px 10px; } }
  @media (max-width: 900px) { .enm { height: 38px; min-width: 44px; padding: 0 11px; margin-right: 0; } }   
  @media (max-width: 640px) { .langsw { font-size: 14px !important; gap: 0 6px !important; } .langsw a, .langsw span { display: inline-flex; align-items: center; min-height: 40px; padding: 0 10px; } }   
  .enm-toast { position: fixed; z-index: 120; left: 50%; bottom: calc(76px + env(safe-area-inset-bottom, 0px)); transform: translateX(-50%); max-width: min(92vw, 420px); padding: 10px 16px; border-radius: 12px; background: #1B1F2B; border: 1px solid rgba(242,181,58,.5); color: #F6F2E9; font: 600 13px/1.5 var(--body); text-align: center; box-shadow: 0 12px 30px rgba(0,0,0,.5); }
  .detail { top: calc(env(safe-area-inset-top, 0px) + var(--hdr) + 18px); }
  .page { max-width: 1180px; margin: 0 auto; padding-block: 24px 60px; padding-inline: var(--gutter); width: 100%; }   
  .crumb { font: 600 12px var(--body); color: var(--dim); }
  .crumb a { text-decoration: none; color: #8FE3A6; }
  h1 { font: 700 clamp(22px, 2.4vw, 28px)/1.25 var(--display); margin: 8px 0 6px; text-wrap: balance; }
  .lede { color: var(--dim); margin: 0 0 20px; font-size: 14px; line-height: 1.5; text-wrap: pretty; }
  
  .detail * { scrollbar-width: thin; scrollbar-color: #C99A3A rgba(255,255,255,.05); }
  .detail *::-webkit-scrollbar { width: 8px; height: 8px; }
  .detail *::-webkit-scrollbar-track { background: rgba(255,255,255,.05); border-radius: 999px; margin: 4px 0; }
  .detail *::-webkit-scrollbar-thumb { background: #C99A3A; border-radius: 999px; border: 2px solid transparent; background-clip: padding-box; }
  .detail *::-webkit-scrollbar-thumb:hover { background: #E3A11C; background-clip: padding-box; border: 2px solid transparent; }
  
  .sec { scroll-margin-top: calc(env(safe-area-inset-top, 0px) + var(--hdr) + 16px); }
  
  html { scrollbar-width: thin; scrollbar-color: transparent transparent; transition: scrollbar-color .3s; }
  html.sb-on { scrollbar-color: #C99A3A transparent; }
  html::-webkit-scrollbar { width: 10px; background: transparent; }
  html::-webkit-scrollbar-track { background: transparent; }
  html::-webkit-scrollbar-thumb { background: transparent; border-radius: 999px; border: 3px solid transparent; background-clip: padding-box; }
  html.sb-on::-webkit-scrollbar-thumb { background: #C99A3A; background-clip: padding-box; }
  html.sb-on::-webkit-scrollbar-thumb:hover { background: #E3A11C; background-clip: padding-box; }
  
  .layout.pre:not(.dba) > :not(.lcol), .layout.pre:not(.dba) > .lcol > :not(h1):not(.lede) { opacity: 0; animation: pre-show 0s 2s forwards; }   
  .layout, .layout > *, .layout > .lcol > * { transition: opacity .15s ease-out; }
  @keyframes pre-show { to { opacity: 1; } }
  @media (prefers-reduced-motion: reduce) { .layout, .layout > *, .layout > .lcol > * { transition: none; } }
  
  .lcol { min-width: 0; } .lcol h1 { margin-top: 0; } .lcol .lede { margin: 0 0 16px; font-size: 14.5px; }
  
  .lcol .secname { margin: 0 0 6px; font: 700 clamp(22px, 2.4vw, 28px)/1.25 var(--display); text-wrap: balance; }

  
  .gbl { max-width: 720px; margin: 28px auto 0; display: grid; gap: 18px; }
  .gbl.two { max-width: 1080px; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); }
  .gbl h2 { margin: 0 0 10px; font: 800 14px var(--body); color: #8E8CBE; }
  .gbl ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; }
  .gbl li a { display: grid; grid-template-columns: 36px minmax(0, 1fr) auto; gap: 10px; align-items: center; padding: 9px 12px; border-radius: 12px; background: rgba(255,255,255,.03); border: 1px solid var(--line); color: #fff; text-decoration: none; }
  .gbl li a:hover { border-color: rgba(242,181,58,.55); }
  .gbl li .ic { width: 36px; height: 36px; border-radius: 8px; background: var(--cell); border: 1px solid var(--cell-edge); display: grid; place-items: center; } .gbl li .ic img { width: 26px; height: 26px; image-rendering: pixelated; }
  .gbl li b { display: block; font: 700 14px var(--body); } .gbl li small { display: block; font-size: 12px; color: var(--dim); }
  .gbl li i { font-style: normal; color: var(--meso); font-weight: 800; }
  .gbl .all { display: inline-block; margin-top: 8px; font: 800 12px var(--display); color: var(--meso); text-decoration: none; }
  .gbl-v { display: grid; gap: 10px; }
  @media (max-width: 900px) { .gbl.two { grid-template-columns: minmax(0, 1fr); } }
  
  .gbl.gbc { max-width: 1080px; }
  .gbc-h { display: flex; align-items: flex-end; justify-content: space-between; gap: 10px; margin: 0 0 10px; }
  .gbl.gbc .gbc-h h2 { margin: 0; font: 800 17px/1.2 var(--display); letter-spacing: 0; text-transform: none; color: #fff; }
  .gbc-n { font: 600 14px var(--body); color: var(--dim); font-variant-numeric: tabular-nums; }
  .gbc-s { display: block; margin-top: 2px; font-size: 12px; color: var(--dim); }
  .gbl.gbc .gbc-h .all { margin: 0; font: 700 13px var(--body); color: #FFD27A; white-space: nowrap; }
  .gbl.gbc .gbc-g { grid-template-columns: minmax(0, 1fr); gap: 8px; }
  @media (min-width: 720px) { .gbl.gbc:not(.two) .gbc-g { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
  .gbl.gbc li a { grid-template-columns: 40px minmax(0, 1fr) auto; gap: 10px; padding: 10px 12px; border-radius: 16px; background: #151A22; border: 1px solid #262B36; }
  .gbl.gbc li a:hover { border-color: rgba(242,181,58,.55); }
  .gbl.gbc li .ic { width: 40px; height: 40px; box-shadow: inset 0 0 0 1px #fff; } .gbl.gbc li .ic img { width: 32px; height: 32px; }
  .gbl.gbc li b { font-size: 14.5px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .gbl.gbc li small { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .gbc-b { display: inline-flex; align-items: center; height: 20px; padding: 0 7px; border-radius: 6px; background: rgba(255,255,255,.08); color: #C9C6E4; font: 800 10.5px var(--display); font-style: normal; letter-spacing: .04em; white-space: nowrap; }
  .yt { margin: 0; } .yt .ytf { all: unset; cursor: pointer; position: relative; display: block; width: 100%; aspect-ratio: 16 / 9; border-radius: 12px; overflow: hidden; background: #000; border: 1px solid rgba(255,255,255,.12); }
  .yt .ytf img { width: 100%; height: 100%; object-fit: cover; display: block; }
  .yt .ytp { position: absolute; left: 50%; top: 50%; width: 68px; height: 48px; transform: translate(-50%, -50%); border-radius: 14px; background: rgba(224,69,43,.92); box-shadow: 0 6px 18px rgba(0,0,0,.5); }
  .yt .ytp::after { content: ""; position: absolute; left: 27px; top: 14px; border-style: solid; border-width: 10px 0 10px 17px; border-color: transparent transparent transparent #fff; }
  .yt .ytf:hover .ytp, .yt .ytf:focus-visible .ytp { background: #E0452B; } .yt .ytf:focus-visible { outline: 2px solid var(--meso); outline-offset: 2px; }
  .yt iframe { width: 100%; aspect-ratio: 16 / 9; border: 0; border-radius: 12px; display: block; }
  .yt figcaption { margin-top: 6px; font: 600 13px/1.4 var(--body); color: #E8E6FF; } .yt figcaption small { display: block; color: var(--dim); font-weight: 400; margin-top: 2px; }

  
  .dbsh, .dbcrumb, .dbfind, .dbtoc, .dbact { display: none; }
  .layout.dba { display: contents; }
  .layout.dba > .detail { display: contents; }
  .layout.dba.pre > .detail > * { opacity: 0; animation: pre-show 0s 2s forwards; }
  main.page:has(> .layout.dba) { padding-top: 20px; }
  @media (max-width: 900px) { main.page:has(> .layout.dba) { width: 100%; padding-inline: 16px; } }
  
  .dbh { margin: 0 0 14px; }
  .layout.dba .dbh { display: grid; grid-template-columns: minmax(0, 1fr) auto; column-gap: 10px; align-items: center; }
  .layout.dba .dbh-t { display: contents; }
  .layout.dba .dbh-t > * { grid-column: 1 / -1; }
  .layout.dba .dbh-t > .dbcrumb { grid-column: 1; grid-row: 1; }
  .layout.dba .dbh > .dbfind { grid-column: 2; grid-row: 1; }
  .layout.dba .dbcrumb { display: flex; flex-wrap: nowrap; align-items: center; gap: 0 6px; min-width: 0; margin: 0; font: 600 12px/1.5 var(--body); color: var(--dim); white-space: nowrap; }
  .layout.dba .dbcrumb + * { margin-top: 6px; }
  .dbcrumb a { color: var(--dim); text-decoration: none; } .dbcrumb a:hover { color: var(--ink); }
  .dbcrumb i { font-style: normal; opacity: .6; }
  .dbcrumb span { color: var(--ink); min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .dbh h1 { margin: 0; font: 700 clamp(22px, 2.4vw, 28px)/1.25 var(--display); text-wrap: balance; overflow-wrap: anywhere; }
  .dbh h1.qname { font-size: clamp(22px, 2.4vw, 28px); }   
  .dbsub { margin: 4px 0 0; font: 12px/1.5 var(--body); color: var(--dim); font-variant-numeric: tabular-nums; }
  
  .dbpill { all: unset; box-sizing: border-box; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; gap: 6px; height: 40px; padding: 0 18px; border-radius: 999px;
    background: #F2B53A; color: #15120A; border: 1px solid #C98A1A;
    font: 800 13px/1 var(--display); letter-spacing: 0; white-space: nowrap; text-align: center; text-decoration: none; }
  .dbpill:hover { background: #FFC24D; } .dbpill:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }
  .dbpill.ghost { background: rgba(255,255,255,.05); color: var(--ink); border-color: rgba(255,255,255,.16); box-shadow: none; }
  .dbpill.ghost:hover { filter: none; border-color: rgba(242,181,58,.6); }
  .dbpill.sm { height: 32px; padding: 0 13px; font-size: 12px; }
  .dbpill svg { width: 14px; height: 14px; flex: none; }
  .dbpill span { overflow: hidden; text-overflow: ellipsis; }
  .dbpill [hidden] { display: none; }
  .layout.dba .dbfind { display: inline-flex; flex: none; }
  .layout.dba .dbact { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
  .dbact .dbpill { flex: 1 1 auto; min-width: 0; } .dbact .dbpill:only-child { flex: none; }   
  @media (min-width: 561px) { .dbact .dbpill { flex: none; } }
  
  .layout.dba .dbtoc { position: sticky; top: calc(env(safe-area-inset-top, 0px) + var(--hdr)); z-index: 40; display: flex; gap: 6px; margin: 16px -16px 0; padding: 10px 16px;
    background: rgba(11,13,18,.97); border-bottom: 1px solid rgba(255,255,255,.08);
    overflow-x: auto; overscroll-behavior-x: contain; scrollbar-width: none; }
  .dbtoc::-webkit-scrollbar { display: none; }
  @media (max-width: 640px) { .layout.dba .dbtoc { padding: 10px 72px 8px 16px; } }   
  .dbtoc a { flex: none; display: inline-flex; align-items: center; gap: 5px; height: 30px; padding: 0 12px; border-radius: 999px; border: 1px solid rgba(255,255,255,.12);
    font: 700 12px/1 var(--body); color: #C9C6E4; text-decoration: none; white-space: nowrap; }
  .dbtoc a b { font-weight: 600; color: #8E8CBE; font-variant-numeric: tabular-nums; }
  .dbtoc a:hover { color: #fff; border-color: rgba(242,181,58,.5); }
  .dbtoc a.on { background: rgba(242,181,58,.16); border-color: #F2B53A; color: #FFD27A; } .dbtoc a.on b { color: #FFD27A; }.dbtoc a:focus-visible { outline: 2px solid var(--meso); outline-offset: 1px; }
  .dbtoc a[hidden] { display: none; }
  
  .dbsecs { display: flex; flex-direction: column; gap: 20px; margin-top: 18px; }
  .dbsecs .sec, .dbsecs .drops { margin-top: 0; }
  .dbcol { display: contents; }
  .dbsecs #sec-maps { order: 2; } .dbsecs #sec-calc { order: 3; }
  @media (min-width: 1024px) {
    .layout.dba .dbsecs.two { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); gap: 20px; align-items: start; }
    .layout.dba .dbsecs.two > .dbcol { display: flex; flex-direction: column; gap: 20px; min-width: 0; }
  }
  .layout.dba .sec, .layout.dba ~ .gbl, .layout.dba ~ .pagesum { scroll-margin-top: calc(env(safe-area-inset-top, 0px) + var(--hdr) + 64px) !important; }
  .layout.dba ~ .gbl { margin: 28px 0 0; } .layout.dba ~ .pagesum { margin: 28px 0 0; }
  
  .layout.dba .top .nameline { margin-bottom: 8px; }
  @media (min-width: 921px) {
    .layout.dba .dbhero { display: grid; grid-template-columns: calc(250 * var(--g)) minmax(0, 1fr); gap: 20px; align-items: start; }
    .layout.dba .dbhero-r > .g-extra:first-child { margin-top: 0; }
    .layout.dba .dbhero-r > .g-extra[hidden]:first-child + .under { margin-top: 0; }
    .layout.dba .dbhero-r > .under:first-child { margin-top: 0; }
  }
  
  .layout.dba .lcol { position: fixed; z-index: 57; left: 0; right: 0; bottom: 0; display: block; max-height: calc(100vh - var(--hdr) - 16px); max-height: calc(100dvh - var(--hdr) - 16px);
    overflow-y: auto; overscroll-behavior: contain; padding: 8px 12px calc(14px + env(safe-area-inset-bottom, 0px)); background: #151A22;
    border: 1px solid rgba(255,255,255,.12); border-bottom: 0; border-radius: 18px 18px 0 0; box-shadow: 0 -18px 40px rgba(0,0,0,.5);
    transform: translateY(104%); visibility: hidden; transition: transform .24s cubic-bezier(.2,.8,.2,1), visibility 0s .24s; }
  .layout.dba .lcol.open { transform: none; visibility: visible; transition: transform .24s cubic-bezier(.2,.8,.2,1); }
  .layout.dba .lcol:focus { outline: none; }
  @media (min-width: 901px) { .layout.dba .lcol { right: auto; width: 460px; left: calc(var(--off, 0px) + var(--sbw) + (100vw - 2 * var(--off, 0px) - var(--sbw) - 460px) / 2); } }
  .layout.dba .dbsh { display: block; position: relative; height: 14px; }
  .dbsh .grab { position: absolute; left: 50%; top: 2px; width: 40px; height: 4px; margin-left: -20px; border-radius: 999px; background: rgba(255,255,255,.2); }
  .dbx { all: unset; box-sizing: border-box; cursor: pointer; position: absolute; right: 0; top: 4px; width: 32px; height: 32px; display: grid; place-items: center; border-radius: 999px;
    background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.14); color: var(--ink); z-index: 1; }
  .dbx svg { width: 14px; height: 14px; } .dbx:hover { border-color: rgba(242,181,58,.6); } .dbx:focus-visible { outline: 2px solid var(--meso); outline-offset: 1px; }
  
  .layout.dba .lcol .secname, .layout.dba .lcol h1 { margin: 0 44px 10px 2px; font: 800 20px/1.3 var(--display); color: #C9C6E4; }
  .layout.dba .lcol .lede, .layout.dba .lside { display: none; }
  .layout.dba .lcol :is(.rows, .grid) { height: min(46vh, 440px); min-height: 220px; }
  .dbsback { position: fixed; inset: 0; z-index: 56; background: rgba(0,0,0,.55); -webkit-backdrop-filter: blur(2px); backdrop-filter: blur(2px); }
  .dbsback[hidden] { display: none; }
  html.dbs-open { overflow: hidden; }
  @media (prefers-reduced-motion: reduce) { .layout.dba .lcol { transition: none; } }
  :root { --b-r: 12px; --b-pri: #F2B53A; --b-pri-ink: #0B0D12; --b-sec-bg: #151A22; --b-sec-bd: #2C3340; --b-sec-ink: #F6F2E9; --b-chip-bd: #2C3340; --b-chip-ink: #C9CDD6;
    --b-on-bd: #F2B53A; --b-on-bg: #2A2208; --b-on-ink: #FFD27A; --b-dc: #5865F2; --b-red-bd: #E0452B; --b-red-ink: #FF9C8A; }   
  :root:root .dbpill:not(.ghost), :root:root .tk-pill:not(.ghost), :root:root .tosim, :root:root .mk-btn:not(.ghost):not(.discord):not(.danger):not(.danger2), :root:root .qdb:not([aria-pressed="true"]), :root:root .spz .tb.gold, :root:root .cz .c-pill, :root:root .spz .rb:not(.ghost), :root:root .ib.go, :root:root .ctl .acts .pri, :root:root .shrow button, :root:root .rgo, :root:root #hpGo, :root:root .hp-cta, :root:root .hp-btn, :root:root .hp-ask form button, :root:root .hp-myf button, :root:root .dbpill.ghost, :root:root .tk-pill.ghost, :root:root .mk-btn.ghost, :root:root .spz .tb:not(.gold), :root:root .spz .rb.ghost, :root:root .cz .c-ghost, :root:root .gh .act.shb:not(.b2), :root:root .ib:not(.go), :root:root .pgmore, :root:root .pmore, :root:root .allmaps, :root:root .reset, :root:root .ctl .acts button:not(.pri), :root:root .stg-acts button, :root:root .pa button:not(.del), :root:root .hp-x.hp-ed, :root:root .dbx, :root:root .mk-btn.danger, :root:root .mk-btn.danger2, :root:root .hp-x:not(.hp-ed), :root:root .mk-btn.discord, :root:root .hp-dc, :root:root .shrow a { box-sizing: border-box; display: inline-flex; align-items: center; justify-content: center; border-radius: var(--b-r); font-weight: 700; text-decoration: none; text-shadow: none; }   
  :root:root .dbpill:not(.ghost), :root:root .tk-pill:not(.ghost), :root:root .tosim, :root:root .mk-btn:not(.ghost):not(.discord):not(.danger):not(.danger2), :root:root .qdb:not([aria-pressed="true"]), :root:root .spz .tb.gold, :root:root .cz .c-pill, :root:root .ib.go, :root:root .ctl .acts .pri, :root:root .shrow button, :root:root .rgo, :root:root #hpGo, :root:root .hp-cta, :root:root .hp-btn, :root:root .hp-ask form button, :root:root .hp-myf button, :root:root .dbpill.ghost, :root:root .tk-pill.ghost, :root:root .mk-btn.ghost, :root:root .spz .tb:not(.gold), :root:root .cz .c-ghost, :root:root .gh .act.shb:not(.b2), :root:root .ib:not(.go), :root:root .reset, :root:root .ctl .acts button:not(.pri), :root:root .stg-acts button, :root:root .pa button:not(.del), :root:root .hp-x.hp-ed, :root:root .mk-btn.danger, :root:root .mk-btn.danger2, :root:root .hp-x:not(.hp-ed), :root:root .mk-btn.discord, :root:root .hp-dc, :root:root .shrow a { gap: 6px; }
  :root:root .dbpill:not(.ghost), :root:root .tk-pill:not(.ghost), :root:root .tosim, :root:root .mk-btn:not(.ghost):not(.discord):not(.danger):not(.danger2), :root:root .qdb:not([aria-pressed="true"]), :root:root .spz .tb.gold, :root:root .cz .c-pill, :root:root .spz .rb:not(.ghost), :root:root .ib.go, :root:root .ctl .acts .pri, :root:root .shrow button, :root:root .rgo, :root:root #hpGo, :root:root .hp-cta, :root:root .hp-btn, :root:root .hp-ask form button, :root:root .hp-myf button { min-height: 48px; background: var(--b-pri); background-image: none; color: var(--b-pri-ink); border: 0; box-shadow: none; font-size: 15px; }   
  :root:root .dbpill:not(.ghost):hover, :root:root .tk-pill:not(.ghost):hover, :root:root .tosim:hover, :root:root .mk-btn:not(.ghost):not(.discord):not(.danger):not(.danger2):hover, :root:root .qdb:not([aria-pressed="true"]):hover, :root:root .spz .tb.gold:hover, :root:root .cz .c-pill:hover, :root:root .spz .rb:not(.ghost):hover, :root:root .ib.go:hover, :root:root .ctl .acts .pri:hover, :root:root .shrow button:hover, :root:root .rgo:hover, :root:root #hpGo:hover, :root:root .hp-cta:hover, :root:root .hp-btn:hover, :root:root .hp-ask form button:hover, :root:root .hp-myf button:hover { background: #FFC24D; background-image: none; color: var(--b-pri-ink); }
  :root:root .dbpill.ghost, :root:root .tk-pill.ghost, :root:root .mk-btn.ghost, :root:root .spz .tb:not(.gold), :root:root .spz .rb.ghost, :root:root .cz .c-ghost, :root:root .gh .act.shb:not(.b2), :root:root .ib:not(.go), :root:root .pgmore, :root:root .pmore, :root:root .allmaps, :root:root .reset, :root:root .ctl .acts button:not(.pri), :root:root .stg-acts button, :root:root .pa button:not(.del), :root:root .hp-x.hp-ed, :root:root .dbx { min-height: 44px; background: var(--b-sec-bg); background-image: none; color: var(--b-sec-ink); border: 1px solid var(--b-sec-bd); box-shadow: none; font-size: 14px; }   
  :root:root .dbpill.ghost:hover, :root:root .tk-pill.ghost:hover, :root:root .mk-btn.ghost:hover, :root:root .spz .tb:not(.gold):hover, :root:root .spz .rb.ghost:hover, :root:root .cz .c-ghost:hover, :root:root .gh .act.shb:not(.b2):hover, :root:root .ib:not(.go):hover, :root:root .pgmore:hover, :root:root .pmore:hover, :root:root .allmaps:hover, :root:root .reset:hover, :root:root .ctl .acts button:not(.pri):hover, :root:root .stg-acts button:hover, :root:root .pa button:not(.del):hover, :root:root .hp-x.hp-ed:hover, :root:root .dbx:hover { background: var(--b-sec-bg); color: var(--b-sec-ink); border-color: var(--b-pri); filter: none; }
  :root:root .mk-btn.danger, :root:root .mk-btn.danger2, :root:root .hp-x:not(.hp-ed) { min-height: 44px; background: transparent; color: var(--b-red-ink); border: 1px solid var(--b-red-bd); box-shadow: none; font-size: 14px; }   
  :root:root .mk-btn.danger:hover, :root:root .mk-btn.danger2:hover, :root:root .hp-x:not(.hp-ed):hover { background: rgba(224,69,43,.1); color: var(--b-red-ink); border-color: var(--b-red-bd); }
  :root:root .mk-btn.discord, :root:root .hp-dc, :root:root .shrow a { min-height: 44px; background: var(--b-dc); background-image: none; color: #fff; border: 0; box-shadow: none; font-size: 14px; }   
  :root:root .mk-btn.discord:hover, :root:root .hp-dc:hover, :root:root .shrow a:hover { background: #6B76FF; color: #fff; }
  :root:root .qdb[aria-pressed="true"] { border-radius: var(--b-r); min-height: 48px; }   
  :root:root .signin { min-height: 38px; padding: 0 16px; border-radius: var(--b-r); font-size: 13px; }   
  :root:root .signin:not(.me) { background: var(--b-dc); color: #fff; }
  :root:root .dbpill:not(.ghost):disabled, :root:root .tk-pill:not(.ghost):disabled, :root:root .tosim:disabled, :root:root .mk-btn:not(.ghost):not(.discord):not(.danger):not(.danger2):disabled, :root:root .qdb:not([aria-pressed="true"]):disabled, :root:root .spz .tb.gold:disabled, :root:root .cz .c-pill:disabled, :root:root .spz .rb:not(.ghost):disabled, :root:root .ib.go:disabled, :root:root .ctl .acts .pri:disabled, :root:root .shrow button:disabled, :root:root .rgo:disabled, :root:root #hpGo:disabled, :root:root .hp-cta:disabled, :root:root .hp-btn:disabled, :root:root .hp-ask form button:disabled, :root:root .hp-myf button:disabled, :root:root .dbpill.ghost:disabled, :root:root .tk-pill.ghost:disabled, :root:root .mk-btn.ghost:disabled, :root:root .spz .tb:not(.gold):disabled, :root:root .spz .rb.ghost:disabled, :root:root .cz .c-ghost:disabled, :root:root .gh .act.shb:not(.b2):disabled, :root:root .ib:not(.go):disabled, :root:root .pgmore:disabled, :root:root .pmore:disabled, :root:root .allmaps:disabled, :root:root .reset:disabled, :root:root .ctl .acts button:not(.pri):disabled, :root:root .stg-acts button:disabled, :root:root .pa button:not(.del):disabled, :root:root .hp-x.hp-ed:disabled, :root:root .dbx:disabled, :root:root .mk-btn.danger:disabled, :root:root .mk-btn.danger2:disabled, :root:root .hp-x:not(.hp-ed):disabled { background: #1E222B; background-image: none; color: #747B8D; border: 1px solid #22262F; cursor: default; opacity: 1; filter: none; }   
  :root:root .pgmore, :root:root .pmore, :root:root .allmaps { display: flex; border-radius: var(--b-r); }
  :root:root .dbpill.sm, :root:root .tk-pill.sm, :root:root .tk-bar .tk-pill, :root:root .tk-sheet .tk-pill, :root:root .bar .mk-btn, :root:root .bar .ib, :root:root .spz .tb, :root:root .spz .rb, :root:root .dbh .dbpill, :root:root .dbshw .dbpill, :root:root .dbact .dbpill, :root:root .cz .cb-pipph .c-pill, :root:root .rhd .mk-btn, :root:root .fft .mk-btn { min-height: 44px; }   
  :root:root .spz .sk-b .rb { min-height: 40px; }   
  :root:root .tk-bar.compact .tk-acts .tk-pill, :root:root .tk-bar.compact .tk-acts .tk-pill:hover { border-radius: 0; background: none; border: 0; box-shadow: none; color: #FFD27A; min-height: 44px; font-size: 14px; }   
  :root:root .ctl .acts button, :root:root .shrow button, :root:root .shrow a { font-size: 13px; letter-spacing: .04em; white-space: nowrap; padding: 0 8px; }   
  :root:root .pa button:not(.del) { min-height: 36px; font-size: 12px; padding: 0; border-radius: 10px; }   
  :root:root .pa button.del { border-radius: 8px; }
  :root:root .tk-chip, :root:root .tk-sheet .chips button, :root:root .spz .pill, :root:root .cats button, :root:root .cpb button, :root:root .pvbar .poses button, :root:root .seg button, :root:root #modes button, :root:root .vbar button, :root:root .chipline .go, :root:root .chipline .bgm, :root:root .jump button, :root:root .dbtoc a, :root:root .mtabs button, :root:root .pmode button, :root:root .qdh, :root:root .hp-chip, :root:root .tt-sort button { box-sizing: border-box; display: inline-flex; align-items: center; justify-content: center; min-height: 36px; padding: 0 12px; border-radius: 999px; background: transparent; background-image: none; border: 1px solid var(--b-chip-bd); color: var(--b-chip-ink); font-size: 13px; font-weight: 700; letter-spacing: 0; text-shadow: none; box-shadow: none; }   
  :root:root .tk-chip:hover, :root:root .tk-sheet .chips button:hover, :root:root .spz .pill:hover, :root:root .cats button:hover, :root:root .cpb button:hover, :root:root .pvbar .poses button:hover, :root:root .seg button:hover, :root:root #modes button:hover, :root:root .vbar button:hover, :root:root .chipline .go:hover, :root:root .chipline .bgm:hover, :root:root .jump button:hover, :root:root .dbtoc a:hover, :root:root .mtabs button:hover, :root:root .pmode button:hover, :root:root .qdh:hover, :root:root .hp-chip:hover, :root:root .tt-sort button:hover { background: transparent; color: #fff; border-color: rgba(242,181,58,.55); }
  :root:root .tk-chip.on, :root:root .tk-chip[aria-pressed="true"], :root:root .tk-chip[aria-selected="true"], :root:root .tk-sheet .chips button.on, :root:root .tk-sheet .chips button[aria-pressed="true"], :root:root .tk-sheet .chips button[aria-selected="true"], :root:root .spz .pill.on, :root:root .spz .pill[aria-pressed="true"], :root:root .spz .pill[aria-selected="true"], :root:root .cats button.on, :root:root .cats button[aria-pressed="true"], :root:root .cats button[aria-selected="true"], :root:root .cpb button.on, :root:root .cpb button[aria-pressed="true"], :root:root .cpb button[aria-selected="true"], :root:root .pvbar .poses button.on, :root:root .pvbar .poses button[aria-pressed="true"], :root:root .pvbar .poses button[aria-selected="true"], :root:root .seg button.on, :root:root .seg button[aria-pressed="true"], :root:root .seg button[aria-selected="true"], :root:root #modes button.on, :root:root #modes button[aria-pressed="true"], :root:root #modes button[aria-selected="true"], :root:root .vbar button.on, :root:root .vbar button[aria-pressed="true"], :root:root .vbar button[aria-selected="true"], :root:root .chipline .go.on, :root:root .chipline .go[aria-pressed="true"], :root:root .chipline .go[aria-selected="true"], :root:root .chipline .bgm.on, :root:root .chipline .bgm[aria-pressed="true"], :root:root .chipline .bgm[aria-selected="true"], :root:root .jump button.on, :root:root .jump button[aria-pressed="true"], :root:root .jump button[aria-selected="true"], :root:root .dbtoc a.on, :root:root .dbtoc a[aria-pressed="true"], :root:root .dbtoc a[aria-selected="true"], :root:root .mtabs button.on, :root:root .mtabs button[aria-pressed="true"], :root:root .mtabs button[aria-selected="true"], :root:root .pmode button.on, :root:root .pmode button[aria-pressed="true"], :root:root .pmode button[aria-selected="true"], :root:root .qdh.on, :root:root .qdh[aria-pressed="true"], :root:root .qdh[aria-selected="true"], :root:root .hp-chip.on, :root:root .hp-chip[aria-pressed="true"], :root:root .hp-chip[aria-selected="true"], :root:root .tt-sort button.on, :root:root .tt-sort button[aria-pressed="true"], :root:root .tt-sort button[aria-selected="true"] { background: var(--b-on-bg); border-color: var(--b-on-bd); color: var(--b-on-ink); }   
  :root:root .tk-chip.on:hover, :root:root .tk-chip[aria-pressed="true"]:hover, :root:root .tk-chip[aria-selected="true"]:hover, :root:root .tk-sheet .chips button.on:hover, :root:root .tk-sheet .chips button[aria-pressed="true"]:hover, :root:root .tk-sheet .chips button[aria-selected="true"]:hover, :root:root .spz .pill.on:hover, :root:root .spz .pill[aria-pressed="true"]:hover, :root:root .spz .pill[aria-selected="true"]:hover, :root:root .cats button.on:hover, :root:root .cats button[aria-pressed="true"]:hover, :root:root .cats button[aria-selected="true"]:hover, :root:root .cpb button.on:hover, :root:root .cpb button[aria-pressed="true"]:hover, :root:root .cpb button[aria-selected="true"]:hover, :root:root .pvbar .poses button.on:hover, :root:root .pvbar .poses button[aria-pressed="true"]:hover, :root:root .pvbar .poses button[aria-selected="true"]:hover, :root:root .seg button.on:hover, :root:root .seg button[aria-pressed="true"]:hover, :root:root .seg button[aria-selected="true"]:hover, :root:root #modes button.on:hover, :root:root #modes button[aria-pressed="true"]:hover, :root:root #modes button[aria-selected="true"]:hover, :root:root .vbar button.on:hover, :root:root .vbar button[aria-pressed="true"]:hover, :root:root .vbar button[aria-selected="true"]:hover, :root:root .chipline .go.on:hover, :root:root .chipline .go[aria-pressed="true"]:hover, :root:root .chipline .go[aria-selected="true"]:hover, :root:root .chipline .bgm.on:hover, :root:root .chipline .bgm[aria-pressed="true"]:hover, :root:root .chipline .bgm[aria-selected="true"]:hover, :root:root .jump button.on:hover, :root:root .jump button[aria-pressed="true"]:hover, :root:root .jump button[aria-selected="true"]:hover, :root:root .dbtoc a.on:hover, :root:root .dbtoc a[aria-pressed="true"]:hover, :root:root .dbtoc a[aria-selected="true"]:hover, :root:root .mtabs button.on:hover, :root:root .mtabs button[aria-pressed="true"]:hover, :root:root .mtabs button[aria-selected="true"]:hover, :root:root .pmode button.on:hover, :root:root .pmode button[aria-pressed="true"]:hover, :root:root .pmode button[aria-selected="true"]:hover, :root:root .qdh.on:hover, :root:root .qdh[aria-pressed="true"]:hover, :root:root .qdh[aria-selected="true"]:hover, :root:root .hp-chip.on:hover, :root:root .hp-chip[aria-pressed="true"]:hover, :root:root .hp-chip[aria-selected="true"]:hover, :root:root .tt-sort button.on:hover, :root:root .tt-sort button[aria-pressed="true"]:hover, :root:root .tt-sort button[aria-selected="true"]:hover { background: var(--b-on-bg); border-color: var(--b-on-bd); color: var(--b-on-ink); }
  :root:root .cpb button i, :root:root .dbtoc a b { color: inherit; opacity: .7; }
  :root:root .spz .pill { font-size: 12.5px; padding: 0 11px; }   
  @media (max-width: 900px) { :root:root .win .chips button, :root:root .win .sort { box-sizing: border-box; display: inline-flex; flex: none; align-items: center; justify-content: center; min-height: 36px; padding: 0 12px; font-size: 13px; line-height: 1.2; white-space: nowrap; } }   
  @media (max-width: 900px) { :root:root .win .chips > :not(button) { flex: none; white-space: nowrap; } }
  @media (max-width: 900px) { :root:root .win .chips { flex-wrap: nowrap; gap: 6px; padding: 2px 28px 2px 6px; overflow-x: auto; overscroll-behavior-x: contain; scrollbar-width: none; -webkit-mask-image: linear-gradient(90deg, #000 calc(100% - 28px), transparent); mask-image: linear-gradient(90deg, #000 calc(100% - 28px), transparent); } :root:root .win .chips::-webkit-scrollbar { display: none; } }   
  
  html[lang^="ko"] body { word-break: keep-all; overflow-wrap: anywhere; }
  :root:root button, :root:root .mk-btn, :root:root .dbpill, :root:root .tk-pill, :root:root .tk-chip, :root:root .hp-chip, :root:root .pp, :root:root .chips button, :root:root .seg button { white-space: nowrap; }
  :root:root button:has(img, b + small, .lv, br), :root:root .pcell, :root:root .mk-row, :root:root .cell, :root:root .mrow { white-space: normal; }
  p, li, dd, td, figcaption, .note, .lede, .sub, .hint, .msg, .mtext { text-wrap: pretty; }
  h1, h2, h3, h4, .t, .ttl, .hm-aih { text-wrap: balance; }
  p, li, dd, .note, .lede { line-height: 1.65; }
  .layout { display: grid; grid-template-columns: 420px minmax(0, 1fr); gap: 24px; align-items: start; }
  @media (max-width: 920px) { .layout { grid-template-columns: minmax(0, 1fr); } }

  
  .win { background: var(--win-body); border: 1px solid var(--win-edge); border-radius: 7px; box-shadow: inset 0 0 0 2px #F7F8FA, 0 10px 30px rgba(0,0,0,.45); padding: 5px; color: #222; font-family: var(--game); }
  .win .title { height: 28px; display: flex; align-items: center; justify-content: space-between; background: #EDEDED; border: 1px solid #C9C9C9; border-radius: 4px; padding-inline: 8px; font: 700 13px var(--game); letter-spacing: .04em; color: #333; }
  .win .title i { width: 18px; height: 18px; border-radius: 3px; background: #E0403A; color: #fff; display: grid; place-items: center; font: 700 11px var(--game); font-style: normal; }
  .tabs { display: flex; gap: 2px; margin-top: 6px; border-bottom: 2px solid #D2243C; padding-inline: 2px; }
  .tabs button { all: unset; box-sizing: border-box; cursor: pointer; flex: 1; height: 24px; display: grid; place-items: center; text-align: center; line-height: 1.05; border-radius: 5px 5px 0 0; background: linear-gradient(#DADADA, var(--tab-off)); border: 1px solid #B8B8B8; border-bottom: 0; font: 700 11px var(--game); letter-spacing: .02em; color: #4B4F5A; text-shadow: 0 1px 0 rgba(255,255,255,.6); }
  .tabs button[aria-selected="true"] { background: linear-gradient(var(--tab-on-hi), var(--tab-on)); border-color: #C9546C; color: #fff; text-shadow: 0 1px 0 #9E2B44; height: 27px; margin-top: -3px; }
  .tabs button:focus-visible, .chips button:focus-visible, .cell:focus-visible, .srch input:focus-visible { outline: 2px solid #1C79E0; outline-offset: 1px; }
  .srch { display: flex; align-items: center; gap: 6px; margin: 7px 3px 4px; background: #FBFAF4; border: 1px solid #B8B5A8; border-radius: 4px; padding: 0 8px; box-shadow: inset 0 1px 2px rgba(0,0,0,.12); }
  .srch svg { width: 14px; height: 14px; flex: none; }
  .srch input { all: unset; flex: 1; height: 30px; font: 13px var(--game); color: #222; }
  
  .kwtip { margin: 0 3px 4px; font: 12px var(--game); color: #555; }
  .kwtip summary { cursor: pointer; list-style: none; display: inline-flex; align-items: center; gap: 5px; padding: 2px 4px; color: #6A6780; font-weight: 700; }
  .kwtip summary::-webkit-details-marker { display: none; }
  .kwtip summary::before { content: "?"; display: inline-grid; place-items: center; width: 14px; height: 14px; border-radius: 50%; background: #B8B5A8; color: #fff; font: 800 10px var(--game); }
  .kwtip[open] summary { color: #333; }
  .kwtip ul { list-style: none; margin: 4px 0 2px; padding: 8px 10px; background: #FBFAF4; border: 1px solid #D6D3C6; border-radius: 4px; display: grid; gap: 5px; }
  .kwtip li { display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px; }
  .kwtip li button { all: unset; cursor: pointer; font: 700 12px var(--game); color: #1C5FB8; background: #E9EEF8; border: 1px solid #C6D2EA; border-radius: 4px; padding: 1px 7px; }
  .kwtip li button:hover { background: #DCE6F7; } .kwtip li button:focus-visible { outline: 2px solid #1C79E0; }
  .kwtip li span { color: #666; }
  .srch input::placeholder { color: #9A9A9A; }
  .chips { display: flex; gap: 3px; flex-wrap: wrap; padding: 2px 3px; }
  .chips button { all: unset; cursor: pointer; padding: 3px 9px; border-radius: 999px; background: linear-gradient(#EFEFEF, #D3D3D3); border: 1px solid #B8B8B8; font: 700 11px var(--game); color: #4B4F5A; }
  .chips button[aria-pressed="true"] { background: linear-gradient(var(--tab-on-hi), var(--tab-on)); border-color: #C9546C; color: #fff; text-shadow: 0 1px 0 #9E2B44; }
  .sort { all: unset; cursor: pointer; font: 700 11px var(--game); color: #4B4F5A; padding: 1px 8px; border-radius: 999px; background: linear-gradient(#EFEFEF, #D3D3D3); border: 1px solid #B8B8B8; }
  .sort:focus-visible { outline: 2px solid #1C79E0; }
  .lvf { display: inline-flex; align-items: center; gap: 3px; margin-left: auto; margin-right: 6px; font: 700 11px var(--game); color: #4B4F5A; }
  .lvf input { all: unset; box-sizing: border-box; width: 40px; height: 20px; padding: 0 4px; background: #FBFAF4; border: 1px solid #B8B5A8; border-radius: 3px; font: 700 11px var(--game); color: #222; text-align: center; box-shadow: inset 0 1px 2px rgba(0,0,0,.12); }
  .lvf input::-webkit-inner-spin-button { display: none; } .lvf input:focus-visible { outline: 2px solid #1C79E0; }
  .count { align-items: center; display: flex; justify-content: space-between; padding: 4px 6px 2px; font: 700 11px var(--game); color: #6A6E78; }
  .grid { height: calc(100vh - 360px); min-height: 380px; overflow-y: auto; padding: 4px; display: grid; grid-template-columns: repeat(auto-fill, minmax(46px, 1fr)); gap: 3px; align-content: start; background: #F6F6F4; border: 1px solid #DCDBD4; border-radius: 3px; margin: 2px 3px 3px; }
  @media (max-width: 920px) { .grid { height: 46vh; min-height: 300px; } }
  .grid::-webkit-scrollbar { width: 12px; } .grid::-webkit-scrollbar-track { background: #CACBD8; border-radius: 6px; } .grid::-webkit-scrollbar-thumb { background: #9EA0B6; border-radius: 6px; border: 2px solid #CACBD8; }
  .grid { scrollbar-color: #9EA0B6 #CACBD8; }
  .cell { all: unset; box-sizing: border-box; cursor: pointer; aspect-ratio: 1; display: grid; place-items: center; position: relative; background: #E0DED3; border: 1px solid #D3D1C5; border-radius: 2px; }
  .cell img { width: 34px; height: 34px; object-fit: contain; }
  .cell b { position: absolute; left: 1px; bottom: 1px; font: 700 10.5px/1 var(--game); color: #fff; background: rgba(40,42,52,.78); padding: 2px 3px; border-radius: 3px; }
  .cell:hover { background: #fff; border-color: #7DA8E8; }
  .cell[aria-current="true"] { background: #DCE8FB; border-color: #3E86E0; box-shadow: inset 0 0 0 1px #3E86E0; }
  .empty { grid-column: 1 / -1; padding: 30px 10px; text-align: center; font: 13px var(--game); color: #6A6E78; }
  .meso { display: flex; align-items: center; gap: 6px; margin: 0 3px 2px; padding: 5px 8px; border-top: 1px solid #C8C6BA; font: 700 11px var(--game); color: #6A6E78; }
  .coin { width: 13px; height: 13px; flex: none; border-radius: 50%; background: radial-gradient(circle at 35% 35%, #FFF3A0, #E9B321 60%, #9A6C0B); border: 1px solid #7a5a10; }

  
  .hover-tip { position: fixed; z-index: 60; pointer-events: none; background: rgba(30,30,92,.94); border: 1px solid #8A8FC8; border-radius: 3px; color: #fff; padding: 6px 9px; font: 12px/1.4 var(--game); max-width: 240px; box-shadow: 0 6px 18px rgba(0,0,0,.45); }
  .hover-tip b { display: block; font-size: 13px; } .hover-tip span { color: #A6A6C4; font-size: 11px; }

  
  .detail { --g: 1.75px; position: sticky; top: calc(env(safe-area-inset-top, 0px) + var(--hdr, 58px) + 18px); scroll-margin-top: calc(var(--hdr, 58px) + 12px); }
  @media (max-width: 920px) { .detail { position: static; } }
  @media (max-width: 520px) { .detail { --g: 1.4px; } }
  .gtip { width: min(100%, calc(250 * var(--g))); background: rgb(45,46,92); border: calc(1 * var(--g)) solid #6E72B8; border-radius: calc(3 * var(--g)); color: #fff; padding: calc(6 * var(--g)) calc(7 * var(--g)) calc(8 * var(--g)); font: calc(10.5 * var(--g))/1.4 var(--game); box-shadow: 0 calc(6 * var(--g)) calc(18 * var(--g)) rgba(0,0,0,.5); }
  .g-name { margin: 0; font: 700 calc(17 * var(--g)) var(--game); letter-spacing: .01em; display: flex; align-items: center; justify-content: center; text-align: center; gap: calc(5 * var(--g)); }
  .g-name[data-rank="orange"] { color: #FFAA33; } .g-name[data-rank="blue"] { color: #66B3FF; } .g-name[data-rank="purple"] { color: #C38BFF; } .g-name[data-rank="yellow"] { color: #FFE14D; }
  
  .g-sub { text-align: center; color: #F08A2E; font: 700 calc(10.5 * var(--g)) var(--game); margin-top: calc(2 * var(--g)); }
  .g-top { display: grid; grid-template-columns: calc(84 * var(--g)) 1fr; gap: calc(14 * var(--g)); margin-top: calc(6 * var(--g)); align-items: center; }
  .g-icon { width: calc(84 * var(--g)); height: calc(88 * var(--g)); background: #D5D6E6; border-radius: calc(2 * var(--g)); display: grid; place-items: center; }
  .g-icon img { width: calc(68 * var(--g)); height: calc(68 * var(--g)); object-fit: contain; }
  .g-req { display: grid; grid-template-columns: max-content max-content 1fr; column-gap: calc(4 * var(--g)); font: 400 calc(12.5 * var(--g))/1.23 var(--game); letter-spacing: .02em; color: #F2F2F8; font-variant-numeric: tabular-nums; }
  .g-req div { display: contents; } .g-req .z { color: inherit; } .g-req .bad { color: #E3262E; }
  .g-lock { margin: calc(6 * var(--g)) 0 0; padding: calc(5 * var(--g)) calc(8 * var(--g)); border-radius: calc(4 * var(--g)); background: rgba(184,58,46,.16); border: 1px solid rgba(184,58,46,.5); color: #FFB3A6; font: 400 calc(12 * var(--g))/1.3 var(--game); word-break: keep-all; }
  .g-lock b { color: #fff; font-weight: 800; }
  .cell.lk b { background: #B83A2E !important; color: #fff !important; }
  .cell.lk { opacity: .78; }
  .g-jobs { display: flex; justify-content: space-between; gap: calc(4 * var(--g)); margin-top: calc(8 * var(--g)); padding-right: calc(8 * var(--g)); }
  .g-jobs b { flex: none; text-align: center; padding: calc(1 * var(--g)) 0; font: 400 calc(14 * var(--g)) var(--game); letter-spacing: 0; color: #E3262E; }
  .g-jobs b.ok { color: #fff; }
  .gtip hr { border: 0; border-top: calc(1 * var(--g)) solid #fff; margin: calc(6 * var(--g)) 0 calc(6 * var(--g)); opacity: .9; }
  .g-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 0; font-size: calc(16 * var(--g)); line-height: 1.3; text-align: center; }
  .gtip { text-shadow: 0 calc(.6 * var(--g)) 0 rgba(0,0,0,.45); }
  .g-list li { color: #fff; } .g-list b { font-weight: 400; color: #fff; } .g-list .c { white-space: pre; }
  
  .g-extra { width: min(100%, calc(250 * var(--g))); box-sizing: border-box; margin-top: 10px; padding: 12px 16px; border-radius: 10px; background: rgba(0,0,0,.28); border: 1px solid rgba(255,255,255,.1); display: grid; gap: 12px; font: 14px/1.5 var(--body); color: #E8E6FA; }
  .g-extra .xb { display: grid; gap: 4px; } .g-extra .xb + .xb { border-top: 1px solid rgba(255,255,255,.08); padding-top: 12px; }
  .g-extra .xh { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 4px 8px; font: 700 12px var(--body); letter-spacing: .02em; color: #A9A7DA; }
  .g-extra .xv { display: flex; flex-wrap: wrap; gap: 2px 18px; }
  .g-extra .xc { display: inline-flex; align-items: baseline; gap: 6px; white-space: nowrap; } .g-extra .xc > span { color: #CFCDE8; font-size: 14px; } .g-extra .xc b { font: 800 19px var(--body); color: #fff; font-variant-numeric: tabular-nums; }
  .g-extra .xs { font: 12.5px/1.5 var(--body); color: #A9A7DA; } .g-extra .xs span { color: #E8E6FA; font-weight: 700; } .g-extra .xs i { font-style: normal; }
  .g-list .gain b { color: #7CE0A8; }
  .g-desc { margin: 0; color: #E8E8F2; white-space: pre-line; font-size: calc(10 * var(--g)); line-height: 1.4; }
  .g-more { margin-top: calc(6 * var(--g)); color: #C9C9DA; }
  .dby { display: grid; grid-template-columns: repeat(auto-fill, minmax(170px, 1fr)); gap: 6px; }
  .dbm { display: grid; grid-template-columns: 40px 1fr auto; gap: 8px; align-items: center; padding: 6px 10px; border-radius: 10px; background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.1); color: #fff; text-decoration: none; font-size: 13px; }
  .dbm.ref { border-style: dashed; }
  .dbm img { width: 40px; height: 36px; object-fit: contain; } .dbm small { display: block; color: #A9A7DA; font-size: 11px; }
  .dbm em { font: 800 10px var(--game); font-style: normal; padding: 2px 5px; border-radius: 3px; background: #2E9E5B; color: #fff; } .dbm.ref em { background: #F2C230; color: #3A2410; }
  .dbm:hover { border-color: #F2B53A; }
  .dbm .spr { color: #FFD27A; font-weight: 800; } .dbm .cit { font-style: normal; color: #C9BCFF; }
  .dnote { display: flex; flex-wrap: wrap; gap: 6px 14px; margin-top: 8px; font-size: 12px; color: #A9A7DA; }
  .dnote i { font-style: normal; display: inline-block; padding: 1px 5px; border-radius: 3px; font: 800 10px var(--game); margin-right: 4px; }
  .dnote .k1 { background: #2E9E5B; color: #fff; } .dnote .k2 { background: #F2C230; color: #3A2410; }
  .soon-box { color: #A9A7DA; font-size: 14px; }
  .tosim { display: inline-block; margin-top: 14px; padding: 10px 16px; border-radius: 999px; background: #F2B53A; color: #1B1340; font: 800 13px var(--display); text-decoration: none; }
  .tosim:hover { background: #FFD27A; }
  .under { display: flex; flex-wrap: wrap; gap: 8px 16px; align-items: center; margin-top: 14px; }
  .under .sell { margin: 0; }
  .under .mkt { margin: 0; padding: 6px 12px; text-decoration: none; } .under .mkt:hover { border-style: solid; background: rgba(242,181,58,.08); } .under .mkt:focus-visible { outline: 2px solid #FFD27A; }
  .detail .sec { background: #151A22; border-color: rgba(255,255,255,.08); color: #fff; font: 15px/1.5 var(--game); }
  .gfloat-wrap { position: fixed; z-index: 80; pointer-events: none; --g: 1.2px; }
  .gfloat-wrap .gtip { width: calc(250 * var(--g)); box-shadow: 0 10px 30px rgba(0,0,0,.6); }
  .gone .gtip { filter: grayscale(1) brightness(.55); }
  
  .d-head { display: grid; grid-template-columns: 112px 1fr; gap: 20px; align-items: center; }
  @media (max-width: 520px) { .d-head { grid-template-columns: 84px 1fr; gap: 14px; } }
  .big-icon { aspect-ratio: 1; border-radius: 16px; display: grid; place-items: center; background: radial-gradient(circle at 50% 35%, #FFFFFF, #DDE2F2); box-shadow: 0 0 0 2px #F2B53A, 0 0 0 6px rgba(242,181,58,.16), 0 12px 28px rgba(0,0,0,.45); }
  .big-icon img { width: 64%; height: 64%; object-fit: contain; }
  .path { font: 800 11px var(--display); letter-spacing: 0; color: #F2B53A; }
  .path i { font-style: normal; color: #8E8CC8; margin: 0 6px; }
  .d-name { font: 800 clamp(24px, 2.6vw, 32px)/1.1 var(--display); margin: 6px 0 0; letter-spacing: -.01em; }
  .flags { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 10px; }
  .flags span { font: 700 11px var(--display); letter-spacing: .08em; padding: 4px 10px; border-radius: 999px; background: rgba(139,92,246,.18); border: 1px solid rgba(139,92,246,.4); color: #C9BCFF; }
  .flags .warn { background: rgba(224,69,43,.16); border-color: rgba(224,69,43,.45); color: #FFB3A6; }
  .sec { margin-top: 20px; padding: 16px 18px; border-radius: 12px; background: rgba(0,0,0,.24); border: 1px solid rgba(255,255,255,.08); }
  .sec h3 { margin: 0 0 10px; font: 800 11px var(--display); letter-spacing: .02em; color: #A9A7DA; }
  .req { display: grid; grid-template-columns: repeat(auto-fill, minmax(92px, 1fr)); gap: 6px; }
  .req div { background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.1); border-radius: 8px; padding: 6px 10px; }
  .req small { display: block; font: 800 9.5px var(--display); letter-spacing: .02em; color: #8E8CC8; }
  .req b { font: 800 20px var(--display); font-variant-numeric: tabular-nums; }
  .jobs { display: flex; gap: 4px; margin-top: 10px; }
  .jobs span { flex: 1; text-align: center; padding: 5px 0; border-radius: 6px; font: 800 10px var(--display); letter-spacing: .08em; background: transparent; color: #4A4878; border: 1px dashed rgba(255,255,255,.08); text-decoration: line-through; text-decoration-color: rgba(255,255,255,.18); }
  .jobs span.ok { background: rgba(240,138,46,.16); color: #FFB066; border: 1px solid rgba(240,138,46,.5); text-decoration: none; }
  .stats { display: grid; gap: 4px; margin: 0; padding: 0; list-style: none; }
  .stats li { display: flex; justify-content: space-between; align-items: baseline; padding: 7px 12px; border-radius: 8px; background: rgba(255,255,255,.05); font-size: 15px; }
  .stats li b { font: 800 17px var(--display); font-variant-numeric: tabular-nums; color: #fff; }
  .stats li.up b { color: #7CE0A8; } .stats li.up { background: rgba(46,158,91,.14); }
  .stats li.muted { color: #A9A7DA; font-size: 13px; } .stats li.muted b { font-size: 14px; color: #D8D6FF; }
  .desc { margin: 16px 0 0; color: #E8E9F6; line-height: 1.6; white-space: pre-line; }
  .sell { display: flex; align-items: center; gap: 8px; margin-top: 14px; font: 700 13px var(--game); color: #FFD27A; }
  .mkt { margin-top: 12px; padding: 10px 14px; border-radius: 10px; border: 1px dashed rgba(242,181,58,.4); font: 700 12px var(--display); letter-spacing: .06em; color: #F2B53A; }

  
  .sim-top { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
  .slots { display: flex; gap: 3px; } .slots i { width: 12px; height: 12px; border-radius: 3px; background: #F2B53A; }
  .slots i.used { background: rgba(255,255,255,.14); box-shadow: none; }
  .sim-note { font-size: 13px; color: #A9A7DA; margin-left: auto; }
  .scrolls { display: grid; gap: 6px; margin-top: 12px; }
  .scr { all: unset; box-sizing: border-box; cursor: pointer; display: grid; grid-template-columns: 34px 1fr auto; gap: 10px; align-items: center; padding: 7px 10px; border-radius: 10px; background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.1); font-size: 13px; }
  .scr img { width: 30px; height: 30px; object-fit: contain; }
  .g-extra .later { display: inline-block; padding: 1px 8px; border-radius: 999px; background: rgba(247,199,90,.16); color: #F7C75A; font: 700 10.5px var(--display); font-style: normal; letter-spacing: .04em; }
  .scr span { display: grid; gap: 1px; min-width: 0; } .scr small { font-size: 11px; color: #A9A7DA; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } .scr.boom small { color: #FFB3A6; }
  .scr em { font: 800 14px var(--display); font-style: normal; color: #FFD27A; }
  .scr.boom em { color: #FF8A7A; }
  .scr:hover:not(:disabled) { border-color: #F2B53A; background: rgba(242,181,58,.1); }
  .scr:disabled { opacity: .35; cursor: default; }
  .scr:focus-visible, .reset:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }
  .res { margin-top: 12px; padding: 9px 12px; border-radius: 8px; background: rgba(0,0,0,.25); font: 800 13px var(--display); letter-spacing: .04em; color: #A9A7DA; min-height: 34px; box-sizing: border-box; }
  #gstats .pot { opacity: .45; }
  .res.ok { color: #7CE0A8; } .res.fail { color: #FFB3A6; } .res.boom { color: #FF6A55; }
  .reset { all: unset; cursor: pointer; font: 800 11px var(--display); letter-spacing: .08em; padding: 5px 12px; border-radius: 999px; border: 1px solid rgba(255,255,255,.2); color: #D8D6FF; }
  
  .simwrap { container-type: inline-size; }
  .simrow { display: grid; gap: 12px; align-items: start; }
  .simbox { width: min(100%, calc(250 * var(--g))); box-sizing: border-box; margin: 0; padding: 12px; display: flex; flex-direction: column; gap: 8px; }
  .simbox h3 { margin: 0; }
  .simbox .sim-top { gap: 8px; } .simbox .slots { flex-wrap: wrap; } .simbox .reset { margin-left: auto; padding: 4px 10px; }
  .simbox .res { margin: 0; padding: 7px 10px; min-height: 0; font-size: 12px; line-height: 1.35; }
  .simbox .scrolls { margin: 0; gap: 5px; grid-template-columns: repeat(auto-fill, minmax(146px, 1fr)); align-content: start; max-height: 214px; overflow-y: auto; scrollbar-width: thin; scrollbar-color: rgba(255,255,255,.25) transparent; }
  .simbox .scr { grid-template-columns: 26px minmax(0, 1fr) auto; gap: 7px; padding: 5px 8px; border-radius: 8px; font-size: 12.5px; line-height: 1.2; }
  .simbox .scr img { width: 26px; height: 26px; } .simbox .scr em { font-size: 13px; }
  
  .simbox { position: relative; }
  .simhd { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
  .simmute { all: unset; box-sizing: border-box; cursor: pointer; flex: none; width: 26px; height: 26px; display: grid; place-items: center; border-radius: 999px; border: 1px solid rgba(255,255,255,.2); color: #D8D6FF; }
  .simmute svg { width: 14px; height: 14px; display: block; }
  .simmute[aria-pressed="true"] { color: #8E8CC8; border-color: rgba(255,255,255,.1); }
  .simmute:hover { border-color: #F2B53A; color: #FFD27A; } .simmute:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }
  .simkey { flex-basis: 100%; margin-top: -4px; text-align: right; font: 11px/1.3 var(--body); color: #8E8CC8; }
  @media (hover: none), (max-width: 560px) { .simkey { display: none; } }
  .simtoast { position: absolute; left: 50%; top: 10px; transform: translate(-50%, -4px); z-index: 2; padding: 5px 12px; border-radius: 999px; background: #2A1D14; border: 1px solid rgba(242,181,58,.5); color: #FFE3A6; font: 700 12px/1.3 var(--body); white-space: nowrap; box-shadow: 0 8px 20px rgba(0,0,0,.45); opacity: 0; pointer-events: none; transition: opacity .18s, transform .18s; }
  .simtoast.on { opacity: 1; transform: translate(-50%, 0); }
  
  .simwrap { position: relative; }
  .simfx { position: absolute; z-index: 5; pointer-events: none; background: no-repeat 0 0; image-rendering: pixelated; transform: translate(-50%, -50%) scale(1.4); }
  .simfx-ok { width: 164px; height: 156px; background-image: url(https://gmsimg.planet-helper.com/img/sfx/fx_success.webp); animation: simfx-ok 525ms steps(21) forwards; }
  .simfx-fail, .simfx-boom { width: 96px; height: 122px; background-image: url(https://gmsimg.planet-helper.com/img/sfx/fx_fail.webp); animation: simfx-fail 400ms steps(16) forwards; }
  .simfx-boom { transform: translate(-50%, -50%) scale(1.9); filter: hue-rotate(-30deg) saturate(3) brightness(.8) drop-shadow(0 0 12px #ef4444); }
  @media (max-width: 520px) { .simfx { transform: translate(-50%, -50%) scale(1.12); } .simfx-boom { transform: translate(-50%, -50%) scale(1.55); } }   
  @keyframes simfx-ok { to { background-position: -3444px 0; } }
  @keyframes simfx-fail { to { background-position: -1536px 0; } }
  @media (prefers-reduced-motion: reduce) { .simfx { display: none; } }
  @container (min-width: 690px) {
    .simrow { grid-template-columns: calc(250 * var(--g)) minmax(0, 1fr); align-items: stretch; }
    .simrow > .gtip { align-self: start; }
    .simbox { width: auto; }
    .simbox .scrolls { flex: 1 1 0; min-height: 0; max-height: none; grid-template-columns: minmax(0, 1fr); }
  }
  .gone .big-icon { filter: grayscale(1) brightness(.5); }
  .foot { padding: 28px 16px; font-size: 12px; color: var(--dim); text-align: center; border-top: 1px solid var(--line); }
  @media (prefers-reduced-motion: reduce) { * { transition: none !important; } }
  
  .pagesum { max-width: 720px; margin: 28px auto 0; padding-top: 20px; border-top: 1px solid var(--line); color: #A9A7DA; font: 14px/1.7 var(--body); }
  .pagesum h2 { margin: 0 0 10px; font: 800 13px var(--display); letter-spacing: 0; color: #8E8CBE; }
  .pagesum p { margin: 0 0 10px; }
  .pagesum a { color: #FFD27A; }
  em.fl { background: none !important; padding: 0 !important; display: flex; gap: 2px; } em.fl svg { width: 16px; height: 11px; display: block; border-radius: 1.5px; box-shadow: 0 0 0 .6px rgba(0,0,0,.4); }
  .dnote .fls { padding: 0 !important; display: inline-flex; gap: 2px; vertical-align: -1px; margin-right: 4px; } .dnote .fls svg { width: 14px; height: 10px; border-radius: 1.5px; box-shadow: 0 0 0 .6px rgba(0,0,0,.4); }
  .dnote2 { margin: 6px 0 0; font-size: 11.5px; opacity: .75; }
  .oldshop { margin: 10px 0 0; font-size: 12px; line-height: 1.55; opacity: .6; } .oldshop a { color: inherit; text-decoration: underline dotted; text-underline-offset: 2px; }   
  
  
  .detail { --g: 1.28px; }
  @media (max-width: 520px) { .detail { --g: 1.2px; } }
  .gtip { max-width: 100%; box-sizing: border-box; overflow: hidden; }
  .gtip .g-name { font-size: 18px; }
  .gtip .g-sub { font-size: 13px; }
  .gtip .g-req { font-size: 13px; }
  .gtip .g-list { font-size: 14.5px; }
  .gtip .g-desc { font-size: 13px; }
  html .gtip .g-jobs { flex-wrap: wrap; justify-content: center; gap: 2px .7em; padding-right: 0; }
  html .gtip .g-jobs b { font-size: 12px; line-height: 1.5; white-space: nowrap; }
  html:not([lang|="ko"]):not([lang|="zh"]) .gtip .g-jobs { gap: 2px .5em; } html:not([lang|="ko"]):not([lang|="zh"]) .gtip .g-jobs b { font-size: 11px; }   
  html, body { overflow-x: clip; }
  
  html[lang|="ko"] :is(p, li, td, th, dd, span, small, b, a, h1, h2, h3, label) { word-break: keep-all; overflow-wrap: break-word; }
  :is(p, li, td, dd, small) { text-wrap-style: pretty; }
  :is(span, b, a, h1, h2, h3) { text-wrap-style: balance; }
  :is(p, li) > :is(a:not([class]), b) { white-space: nowrap; }
  html[lang|="ko"] .g-extra .xs i { white-space: nowrap; }   
  
  .dbshw { display: none; position: relative; }
  .layout.dba .dbh { grid-template-columns: minmax(0, 1fr) auto auto; }
  .layout.dba .dbh > .dbshw { display: flex; grid-column: 3; grid-row: 1; }
  .dbshw > .dbpill { flex: 1 1 auto; }
  .dbshm { position: absolute; right: 0; top: calc(100% + 6px); z-index: 60; min-width: 170px; display: grid; padding: 6px; border-radius: 12px; background: #1A1F33; border: 1px solid rgba(255,255,255,.14); box-shadow: 0 12px 30px rgba(0,0,0,.5); }
  .dbshm[hidden], .dbtt { display: none; }
  .dbshm button { all: unset; box-sizing: border-box; cursor: pointer; padding: 10px 12px; border-radius: 8px; font: 700 13px/1.2 var(--body); color: #fff; white-space: nowrap; }
  .dbshm button:hover, .dbshm button:focus-visible { background: rgba(242,181,58,.16); color: #FFD27A; }
  #dbtoast { position: fixed; left: 50%; bottom: 24px; transform: translate(-50%, 12px); z-index: 90; max-width: min(460px, calc(100vw - 32px)); padding: 11px 16px; border-radius: 10px; background: #2A1D14; border: 1px solid rgba(242,181,58,.5); color: #FFE3A6;
    font: 13.5px/1.5 var(--body); box-shadow: 0 12px 30px rgba(0,0,0,.5); opacity: 0; pointer-events: none; transition: opacity .18s, transform .18s; word-break: break-all; }
  #dbtoast.on { opacity: 1; transform: translate(-50%, 0); }
  @media (max-width: 560px) {
    .layout.dba .dbh { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
    .layout.dba .dbh-t > .dbcrumb { grid-column: 1 / -1; }
    .layout.dba .dbh > .dbfind { grid-column: 1; grid-row: auto; margin-top: 12px; }
    .layout.dba .dbh > .dbshw { grid-column: 2; grid-row: auto; margin-top: 12px; }
    #dbtoast { bottom: calc(88px + env(safe-area-inset-bottom, 0px)); }
  }
  
  .rows { height: calc(100vh - 330px); min-height: 380px; overflow-y: auto; margin: 2px 3px 3px; background: #F6F6F4; border: 1px solid #DCDBD4; border-radius: 3px; }
  @media (max-width: 920px) { .rows { height: 40vh; min-height: 280px; } }
  .rows::-webkit-scrollbar { width: 12px; } .rows::-webkit-scrollbar-track { background: #CACBD8; border-radius: 6px; } .rows::-webkit-scrollbar-thumb { background: #9EA0B6; border-radius: 6px; border: 2px solid #CACBD8; }
  .rows { scrollbar-color: #9EA0B6 #CACBD8; }
  .mrow { all: unset; box-sizing: border-box; width: 100%; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; align-items: center; padding: 6px 10px; cursor: pointer; border-bottom: 1px solid #E6E5DE; font: 12.5px var(--game); color: #222; }
  .mrow b { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .mrow small { display: block; color: #6A6E78; font-size: 10.5px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .mrow small.qsn { color: #6B5A1E; }
  .mrow small.qsn mark { background: #FFE08A; color: inherit; border-radius: 2px; padding: 0 1px; }
  .mrow .lv { font: 700 11px var(--game); color: #4B4F5A; text-align: right; white-space: nowrap; }
  .mrow .town { font: 700 9px var(--game); color: #fff; background: #3E86E0; padding: 1px 5px; border-radius: 3px; margin-left: 5px; vertical-align: 1px; }
  .mrow:hover { background: #fff; } .mrow[aria-current="true"] { background: #DCE8FB; box-shadow: inset 0 0 0 2px #3E86E0; }
  .mrow:focus-visible { outline: 2px solid #1C79E0; outline-offset: -2px; }
  .mrow .cad { font: 700 9px var(--game); color: #fff; background: #8A5CD8; padding: 1px 5px; border-radius: 3px; margin-left: 5px; vertical-align: 1px; }
  .mrow .ch { color: #9A6A00; }
  .rwf { align-items: center; } .rwf .rwh { font: 700 10.5px var(--game); color: #6A6E78; margin: 0 2px 0 4px; }
  .rwf button { display: inline-flex; align-items: center; gap: 4px; padding-left: 5px; } .rwf button img { width: 16px; height: 16px; object-fit: contain; }
  .lvf { display: flex; align-items: center; gap: 4px; } .lvf input { width: 42px; font: 11px var(--game); padding: 2px 4px; border: 1px solid #B9B8B0; border-radius: 3px; text-align: center; }
  .count { display: flex; justify-content: space-between; align-items: center; }
  .street { color: #F2B53A; font: 800 11px var(--display); letter-spacing: 0; }
  .qname { margin: 0; font: 800 clamp(26px, 2.4vw, 30px)/1.1 var(--display); text-wrap: balance; }   
  .chipline { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px; }
  .chipline span { font: 800 11px var(--display); letter-spacing: .06em; padding: 4px 10px; border-radius: 999px; background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.14); color: #D8D6FF; }
  .chipline .lvc { background: #FFD27A; border-color: #FFD27A; color: #1B1340; } .chipline .cadc { background: #8A5CD8; border-color: #8A5CD8; color: #fff; }
  .chipline .go { all: unset; cursor: pointer; font: 800 11px var(--display); letter-spacing: .06em; padding: 4px 10px; border-radius: 999px; background: rgba(242,181,58,.14); border: 1px solid rgba(242,181,58,.55); color: #FFD27A; }
  .chipline .go:hover { background: #F2B53A; color: #1B1340; } .chipline .go:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }
  
  .chain { margin-top: 14px; display: flex; flex-wrap: wrap; align-items: center; gap: 6px; }
  .chain a { flex: 0 1 auto; min-width: 0; display: flex; align-items: center; gap: 6px; max-width: 260px; text-decoration: none; color: #D8D6FF; font: 700 12px var(--game); padding: 6px 10px; border-radius: 10px; background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.1); }
  .chain a b { flex: none; display: grid; place-items: center; width: 20px; height: 20px; border-radius: 50%; background: rgba(255,255,255,.1); font: 800 11px var(--display); }
  .chain a span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .chain a[aria-current="true"] { background: #F2B53A; border-color: #F2B53A; color: #1B1340; } .chain a[aria-current="true"] b { background: #1B1340; color: #FFD27A; }
  .chain a:hover { border-color: #F2B53A; } .chain .cl { flex: none; align-self: center; font: 800 10px var(--display); letter-spacing: .02em; color: #7E7CB0; margin-right: 2px; }
  
  .qsline { margin-top: 10px; display: flex; flex-direction: column; gap: 6px; }
  .qsline a { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 2px 10px; min-height: 44px; box-sizing: border-box; padding: 8px 12px; border-radius: 10px; border: 1px solid rgba(242,181,58,.5); background: rgba(242,181,58,.08); text-decoration: none; color: #FFE7B0; font: 700 13px var(--game); }
  .qsline a:hover { border-color: #F2B53A; } .qsline a:focus-visible { outline: 2px solid #FFD27A; outline-offset: 2px; } .qsline a b { min-width: 0; overflow-wrap: anywhere; } .qsline a span { color: #FFD27A; font-weight: 700; }
  
  
  .gw { margin-top: 14px; border-radius: 6px; background: #E4E9F0; border: 1px solid #8C9AAE; box-shadow: 0 0 0 1px #F6F8FB inset, 0 10px 26px rgba(0,0,0,.45); padding: 6px 6px 0; color: #4A4A4A; }
  .gw .in { display: grid; grid-template-columns: 150px minmax(0, 1fr); gap: 10px; padding: 10px; border-radius: 9px; background: #E7E5DD; border: 4px solid #4B4B4E; box-shadow: 0 0 0 1px #9A9A9A; }
  .gw .who { display: grid; justify-items: center; align-content: center; gap: 4px; padding: 6px 0; border-right: 2px solid #D2D0C6; padding-right: 10px; }
  .gw .who img { max-width: 120px; max-height: 120px; object-fit: contain; }
  .gw .tag { display: block; width: 100%; box-sizing: border-box; text-align: center; font: 15px/1.3 var(--game); color: #fff; background: #1C2B4F; border: 1px solid #F2F2F2; box-shadow: 0 0 0 1px #6A7894; padding: 2px 6px; text-decoration: none; }
  a.gw-tag:hover, .gw a.tag:hover { background: #2A3F70; }
  .gw .txt { background: #F2F2F2; border: 1px solid #D6D6D6; border-radius: 3px; padding: 14px 16px 12px; height: 210px; box-sizing: border-box; overflow-y: auto; overscroll-behavior: contain; display: flex; flex-direction: column; font: 16px/1.75 var(--game); color: #4A4A4A; }
  .gw .txt p { margin: 0; flex: 1; }
  .gw .txt .hl { color: #2626C8; }
  .gw .ob { margin-top: 12px; display: grid; gap: 6px; }
  .gw .ob .oh { font: 800 17px/1 var(--display); letter-spacing: .02em; color: #E8303A; -webkit-text-stroke: .5px #8A1016; text-shadow: 0 1px 0 #fff; }
  .gw .ob div { display: flex; align-items: center; gap: 8px; font: 15px var(--game); color: #4A4A4A; } .gw .ob img { width: 32px; height: 32px; object-fit: contain; }
  .gw .ob .xp { display: inline-grid; place-items: center; width: 32px; height: 18px; margin: 0; font: 800 9px/1 var(--display); font-style: normal; letter-spacing: .04em; color: #5A3A00; background: #FFD23A; border: 1px solid #C79A12; border-radius: 3px; }
  .gw .ob .oh { display: flex; align-items: center; gap: 6px; } .gw .ob .oh img { width: 26px; height: 26px; }
  .rw .big b .mi { width: 24px; height: 24px; object-fit: contain; vertical-align: -3px; margin-right: 6px; }
  .gw .gnav { display: flex; gap: 6px; justify-content: flex-end; margin-top: 12px; }
  .gw .bt { all: unset; cursor: pointer; font: 700 12px/1 var(--game); letter-spacing: .02em; color: #fff; padding: 6px 14px; border-radius: 2px; }
  .gw .bt:focus-visible { outline: 2px solid #1C2B4F; outline-offset: 2px; }
  .gw .bt.blue { background: #2F82DA; border: 1px solid #1B5CA8; box-shadow: 0 0 0 1px #9CC8F4 inset; }
  .gw .bt.blue:hover { background: #3C92EA; }
  .gw .bar { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; min-height: 28px; margin: 6px -6px 0; padding: 7px 8px; background: #B6C4D8; border-top: 1px solid #F4F6FA; border-radius: 0 0 5px 5px; }
  .gw .bt.lime { justify-self: start; display: inline-flex; align-items: center; gap: 6px; padding: 5px 12px 5px 9px; border-radius: 999px; background: #FFFFFF; border: 1px solid #8C9AAE; color: #1C2B4F; letter-spacing: .02em; font-size: 11px; box-shadow: 0 1px 0 rgba(28,43,79,.18); }
  .gw .bt.lime svg { width: 13px; height: 13px; } .gw .bt.lime:hover { background: #1C2B4F; border-color: #1C2B4F; color: #fff; }
  .gw .bt.lime:hover { background: #CFE03A; }
  .gw .bt.orange { background: #F0892A; border: 1px solid #A8561A; box-shadow: 0 0 0 1px #FFC58A inset; padding: 6px 26px; }
  .gw .pg { font: 700 10px var(--display); letter-spacing: .02em; color: #4E5E78; }
  @media (max-width: 560px) { .gw .in { grid-template-columns: minmax(0, 1fr); } .gw .who { grid-auto-flow: column; justify-content: start; align-items: end; border-right: 0; border-bottom: 2px solid #D2D0C6; padding: 0 0 8px; }
    .gw .who img { max-width: 64px; max-height: 64px; } .gw .tag { width: auto; } .gw .txt { font-size: 14px; min-height: 0; } }
  
  .need { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; }
  .nrow { display: grid; grid-template-columns: 40px minmax(0, 1fr) auto; gap: 10px; align-items: center; padding: 8px 12px; border-radius: 10px; background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.1); color: #fff; text-decoration: none; }
  a.nrow:hover { border-color: #F2B53A; }
  .nrow img { width: 40px; height: 40px; object-fit: contain; } .nrow b { display: block; font: 700 14px var(--game); } .nrow small { display: block; color: #A9A7DA; font-size: 11.5px; }
  .nrow small a { color: #FFD27A; } .nrow .cnt { font: 800 16px var(--display); color: #FFD27A; white-space: nowrap; }
  .nrow .tag { font: 800 10px var(--display); letter-spacing: .02em; color: #A9A7DA; }
  .rw { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 10px; }
  .rw .big { display: grid; padding: 8px 14px; border-radius: 10px; min-width: 110px; color: #fff; }
  .rw .big small { font: 800 10px var(--display); letter-spacing: .02em; opacity: .85; } .rw .big b { font: 800 20px var(--display); font-variant-numeric: tabular-nums; }
  .rw .exp { background: #3F8F4E; } .rw .meso { background: #8A6414; } .rw .ctb { background: #4B5BC4; }
  .items { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; }
  @media (max-width: 560px) { .need, .items { grid-template-columns: minmax(0, 1fr); } }
  .irow { display: grid; grid-template-columns: 34px minmax(0, 1fr) auto; gap: 8px; align-items: center; padding: 6px 10px; border-radius: 10px; background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.1); color: #fff; text-decoration: none; }
  a.irow:hover { border-color: #F2B53A; }
  .irow .xpb { display: grid; place-items: center; width: 34px; height: 20px; font: 800 9px/1 var(--display); font-style: normal; letter-spacing: .04em; color: #5A3A00; background: #FFD23A; border: 1px solid #C79A12; border-radius: 3px; } .irow .xpb.ctb { background: #9FB2FF; border-color: #5566C4; color: #1B2260; font-size: 8px; } .irow img { width: 34px; height: 34px; object-fit: contain; }
  .irow b { display: block; font: 700 13px var(--game); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .irow small { display: block; color: #A9A7DA; font-size: 11px; }
  .irow em { font: 800 11px var(--display); font-style: normal; color: #FFD27A; white-space: nowrap; }
  .sub { margin: 14px 0 6px; font: 800 12px var(--display); letter-spacing: .08em; color: #FFD27A; } .sub span { color: #7E7CB0; font-weight: 700; letter-spacing: 0; margin-left: 6px; }
  .jobs { display: flex; gap: 6px; flex-wrap: wrap; margin-bottom: 8px; }
  .jobs button { all: unset; cursor: pointer; font: 800 11px var(--display); letter-spacing: .06em; padding: 4px 10px; border-radius: 999px; border: 1px solid rgba(255,255,255,.2); color: #D8D6FF; }
  .jobs button[aria-pressed="true"] { background: #F2B53A; border-color: #F2B53A; color: #1B1340; } .jobs button:focus-visible { outline: 2px solid #fff; }
  .flow { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 16px; }
  .flow a { flex: 1 1 200px; text-decoration: none; color: #fff; padding: 10px 14px; border-radius: 10px; background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.1); font: 700 13px var(--game); }
  .flow a small { display: block; font: 800 10px var(--display); letter-spacing: .02em; color: #A9A7DA; margin-bottom: 2px; } .flow a:hover { border-color: #F2B53A; } .flow .nx { text-align: right; }
  .soon-box { color: #A9A7DA; font-size: 14px; margin: 0; }
  .seo { margin-top: 18px; color: #A9A7DA; font-size: 13px; line-height: 1.6; }
  
  .pagesum { max-width: 720px; margin: 28px auto 0; padding-top: 20px; border-top: 1px solid var(--line); color: #A9A7DA; font: 14px/1.7 var(--body); }
  .pagesum h2 { margin: 0 0 10px; font: 800 13px var(--display); letter-spacing: 0; color: #8E8CBE; }
  .pagesum p { margin: 0 0 10px; }
  .pagesum a { color: #FFD27A; }

  @media (min-width: 921px) {   
    main.page:has(> .layout:not(.dba)) { max-width: 1280px; width: calc(100% - 16px); padding: 16px 8px 60px; }
    .layout:not(.dba) { --lwo: 346px; grid-template-columns: minmax(480px, 40%) minmax(0, 1fr); gap: 20px; }
    .layout:not(.dba) .lcol h1 { font-size: 26px; margin: 0 0 2px; }
    .layout:not(.dba) .lcol .lede { margin: 0 0 8px; font-size: 13px; line-height: 1.4; }
    .layout:not(.dba) :is(.rows, .grid) { height: calc(100vh - var(--lwo)); min-height: 438px; }
  }
  @media (max-width: 920px) { main.page:has(> .layout:not(.dba)) { width: 100%; box-sizing: border-box; padding-inline: var(--gutter); } }   
  @media (min-width: 921px) and (min-height: 720px) { .layout:not(.dba) .lcol { position: sticky; top: calc(env(safe-area-inset-top, 0px) + var(--hdr, 58px) + 12px); } }
  .mrow small { font-size: 12px; } .mrow .lv { font-size: 11.5px; } .mrow .ch, .mrow .cad, .chain .cl, .chips .rwh { font-size: 11px; }   
  .gw .txt { height: auto; min-height: 120px; max-height: 360px; }   
  .gw .txt .pgs { flex: 1; display: grid; } .gw .txt .pgs p { grid-area: 1 / 1; visibility: hidden; } .gw .txt .pgs p.on { visibility: visible; }
  @media (min-width: 921px) {
    .layout.dba .dbsecs { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 16px; align-items: start; }   
    .layout.dba .dbsecs .need, .layout.dba .dbsecs .items { grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); }
  }
  .nrow .tag, .rw .big small, .irow .xpb, .gw .ob .xp, .jobs button, .flow a small, .gw .pg { font-size: 11px; } .nrow small, .irow small { font-size: 12px; }   
  .pagesum.clp { max-height: 9.5em; overflow: hidden; -webkit-mask-image: linear-gradient(#000 55%, transparent); mask-image: linear-gradient(#000 55%, transparent); }   
  .pagesum.clp.open { max-height: none; -webkit-mask-image: none; mask-image: none; }
  .pgmore { all: unset; box-sizing: border-box; display: block; max-width: 720px; margin: 6px auto 0; padding: 8px; text-align: center; cursor: pointer; border: 1px solid rgba(255,255,255,.14); border-radius: 8px; color: #fff; font: 600 13px var(--body); }
  .pgmore:hover { background: rgba(255,255,255,.05); } .pgmore:focus-visible { outline: 2px solid #FFD27A; }
  @media (max-width: 820px) { .gw .bt { display: inline-flex; align-items: center; min-height: 40px; box-sizing: border-box; padding: 0 16px; } }   
