
/* !important beats the engine's inline pointer-events:auto on GUI roots */
.atm[data-v-54c9452e] { position: fixed; inset: 0; pointer-events: none !important; z-index: 40;
}
.atm-tint[data-v-54c9452e] { position: absolute; inset: 0; transition: background 2s linear;
}
.atm-weather[data-v-54c9452e] { position: absolute; inset: 0; transition: background 3s linear;
}
.atm-fog[data-v-54c9452e] {
  position: absolute; inset: 0; transition: opacity 4s linear;
  background:
    radial-gradient(ellipse 60% 40% at 30% 40%, rgba(165, 175, 168, 0.5), transparent 70%),
    radial-gradient(ellipse 70% 50% at 75% 65%, rgba(150, 162, 155, 0.42), transparent 72%);
}
.atm-flash[data-v-54c9452e] { position: absolute; inset: 0; background: #e8ecf0; transition: opacity 500ms ease-out;
}
.atm-vignette[data-v-54c9452e] {
  position: absolute; inset: 0;
  background: radial-gradient(ellipse at center, transparent 58%, rgba(6, 10, 8, 0.34) 100%);
}
.atm-fx[data-v-54c9452e] { position: absolute; inset: 0; width: 100%; height: 100%;
}

.g-navrow[data-v-bf2ef434] { display: flex; border-bottom: 1px solid #22301f;
}
.g-navtab[data-v-bf2ef434] {
  flex: 1; background: none; border: none; border-right: 1px solid #16211a;
  color: #58614f; padding: 7px 4px; font-size: 11px; letter-spacing: 0.14em;
  cursor: pointer; font-family: 'Courier New', monospace;
}
.g-navtab[data-v-bf2ef434]:last-child { border-right: none;
}
.g-navtab[data-v-bf2ef434]:hover { color: #e8e4d8; background: #0a0c0b;
}
.g-navtab.on[data-v-bf2ef434] { color: #c9a24b; background: #0a0c0b; box-shadow: inset 0 -2px 0 #c9a24b;
}

.g-modal[data-v-18c57595] { position: fixed; inset: 0; background: rgba(10, 12, 11, 0.72); display: flex; align-items: center; justify-content: center; z-index: 100; font-family: 'Courier New', monospace; pointer-events: auto !important;
}
.g-sheet[data-v-18c57595] { width: min(720px, 94vw); max-height: 86vh; display: flex; flex-direction: column; background: #10160f; border: 1px solid #2e3d2a; box-shadow: 0 0 0 4px rgba(0, 0, 0, 0.4); color: #e8e4d8;
}
.g-head[data-v-18c57595] { display: flex; align-items: center; gap: 16px; padding: 12px 16px; border-bottom: 1px solid #22301f;
}
.g-title[data-v-18c57595] { letter-spacing: 0.3em; font-size: 16px;
}
.g-gold[data-v-18c57595] { margin-left: auto; color: #c9a24b; font-size: 13px; letter-spacing: 0.1em;
}
.g-x[data-v-18c57595] { background: none; border: 1px solid #2e3d2a; color: #87927f; cursor: pointer; padding: 2px 8px; font-family: inherit;
}
.g-x[data-v-18c57595]:hover { border-color: #d33a2c; color: #d33a2c;
}
.g-tabs[data-v-18c57595] { display: flex; flex-wrap: wrap; border-bottom: 1px solid #22301f;
}
.g-tab[data-v-18c57595] { background: none; border: none; border-right: 1px solid #22301f; color: #87927f; padding: 8px 10px; font-size: 11px; letter-spacing: 0.15em; cursor: pointer; font-family: inherit;
}
.g-tab.active[data-v-18c57595] { color: #c9a24b; background: #0a0c0b; box-shadow: inset 0 -2px 0 #c9a24b;
}
.g-feedback[data-v-18c57595] { padding: 6px 16px; color: #ce8f2c; font-size: 13px; border-bottom: 1px solid #22301f;
}
.g-body[data-v-18c57595] { display: grid; grid-template-columns: 1fr 1fr; overflow: hidden; flex: 1;
}
.g-list[data-v-18c57595] { overflow-y: auto; border-right: 1px solid #22301f; max-height: 60vh;
}
.g-item[data-v-18c57595] { width: 100%; display: flex; justify-content: space-between; gap: 8px; padding: 9px 12px; background: none; border: none; border-bottom: 1px solid #16211a; color: inherit; cursor: pointer; font-family: inherit; font-size: 14px; text-align: left;
}
.g-item[data-v-18c57595]:hover, .g-item.sel[data-v-18c57595] { background: #0a0c0b;
}
.g-item.sel[data-v-18c57595] { box-shadow: inset 2px 0 0 #c9a24b;
}
.g-item-meta[data-v-18c57595] { display: flex; gap: 6px; align-items: center;
}
.g-eq-tag[data-v-18c57595] { font-size: 9px; letter-spacing: 0.14em; color: #00c805; border: 1px solid #00c805; padding: 1px 4px;
}
.g-nb[data-v-18c57595] { color: #87927f; font-size: 13px;
}
.g-nft-tag[data-v-18c57595] { color: #ce8f2c; border: 1px solid #ce8f2c; font-size: 10px; padding: 1px 4px; letter-spacing: 0.12em;
}
.g-quest-tag[data-v-18c57595] { color: #3fbac2; border: 1px solid #3fbac2; font-size: 10px; padding: 1px 4px; letter-spacing: 0.12em;
}
[data-rarity='uncommon'][data-v-18c57595] { color: #00c805;
}
[data-rarity='rare'][data-v-18c57595] { color: #3fbac2;
}
[data-rarity='epic'][data-v-18c57595] { color: #c9a24b;
}
[data-rarity='legendary'][data-v-18c57595] { color: #ce8f2c;
}
[data-rarity='mythic'][data-v-18c57595] { color: #d33a2c;
}
.g-inspect[data-v-18c57595] { padding: 14px 16px; overflow-y: auto; max-height: 60vh; font-size: 14px;
}
.g-empty[data-v-18c57595] { color: #58614f; padding: 18px; font-size: 13px; letter-spacing: 0.08em; line-height: 1.6;
}
.g-i-name[data-v-18c57595] { font-size: 17px; letter-spacing: 0.06em;
}
.g-i-rarity[data-v-18c57595] { color: #87927f; font-size: 11px; letter-spacing: 0.2em; margin: 4px 0 10px;
}
.g-i-desc[data-v-18c57595] { color: #b9b4a6; line-height: 1.55; font-size: 13px;
}
.g-i-effect[data-v-18c57595] { color: #00c805; margin: 8px 0; font-size: 13px;
}
.g-i-rows[data-v-18c57595] { margin-top: 8px;
}
.g-i-row[data-v-18c57595] { display: flex; justify-content: space-between; gap: 10px; padding: 3px 0; border-bottom: 1px dotted #22301f; font-size: 12px; color: #b9b4a6;
}
.g-i-contract span[data-v-18c57595]:last-child { word-break: break-all; text-align: right;
}
.g-i-chain[data-v-18c57595] { margin-top: 12px; border: 1px solid #ce8f2c; padding: 8px 10px;
}
.g-i-chain-head[data-v-18c57595] { color: #ce8f2c; letter-spacing: 0.2em; font-size: 11px; margin-bottom: 6px;
}
.g-i-chain-note[data-v-18c57595] { color: #87927f; font-size: 11px; line-height: 1.5; margin-top: 8px;
}
.g-use[data-v-18c57595] { margin-top: 14px; width: 100%; padding: 10px; background: #00c805; color: #04130a; border: 1px solid #009a04; font-family: inherit; letter-spacing: 0.2em; cursor: pointer; font-weight: bold;
}
.g-use[data-v-18c57595]:disabled { background: #22301f; color: #58614f; border-color: #22301f; cursor: default;
}
.g-i-note[data-v-18c57595] { margin-top: 12px; color: #58614f; font-size: 12px;
}
@media (max-width: 640px) {
.g-body[data-v-18c57595] { grid-template-columns: 1fr;
}
.g-list[data-v-18c57595] { max-height: 32vh;
}
}

.g-bossbar[data-v-91d2b596] {
  position: fixed; top: 58px; left: 50%; transform: translateX(-50%);
  width: min(440px, 80vw); z-index: 95; text-align: center;
  font-family: 'Courier New', monospace; pointer-events: none !important;
}
.g-boss-name[data-v-91d2b596] { color: #d33a2c; font-size: 15px; letter-spacing: 0.4em; text-shadow: 0 1px 0 #000;
}
.g-boss-track[data-v-91d2b596] { height: 10px; margin-top: 4px; background: #0a0c0b; border: 1px solid #d33a2c; box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.5);
}
.g-boss-fill[data-v-91d2b596] { height: 100%; background: #d33a2c; transition: width 180ms steps(4, end);
}
.g-boss-hp[data-v-91d2b596] { color: #87927f; font-size: 11px; letter-spacing: 0.2em; margin-top: 3px;
}

.g-modal[data-v-588808eb] { position: fixed; inset: 0; background: rgba(10, 12, 11, 0.72); display: flex; align-items: center; justify-content: center; z-index: 100; font-family: 'Courier New', monospace; pointer-events: auto !important;
}
.g-sheet[data-v-588808eb] { width: min(440px, 92vw); max-height: 86vh; overflow-y: auto; background: #10160f; border: 1px solid #2e3d2a; box-shadow: 0 0 0 4px rgba(0, 0, 0, 0.4); color: #e8e4d8;
}
.g-head[data-v-588808eb] { display: flex; align-items: center; padding: 12px 16px; border-bottom: 1px solid #22301f;
}
.g-title[data-v-588808eb] { letter-spacing: 0.3em; font-size: 15px;
}
.g-x[data-v-588808eb] { margin-left: auto; background: none; border: 1px solid #2e3d2a; color: #87927f; cursor: pointer; padding: 2px 8px; font-family: inherit;
}
.g-x[data-v-588808eb]:hover { border-color: #d33a2c; color: #d33a2c;
}
.g-body[data-v-588808eb] { padding: 14px 16px;
}
.g-row-top[data-v-588808eb] { display: flex; justify-content: space-between; align-items: baseline; margin-bottom: 12px;
}
.g-name[data-v-588808eb] { font-size: 17px; letter-spacing: 0.08em;
}
.g-titleline[data-v-588808eb] { color: #c9a24b; font-size: 12px; letter-spacing: 0.12em; margin-top: 3px;
}
.g-lv[data-v-588808eb] { color: #00c805; font-size: 17px;
}
.g-stats[data-v-588808eb] { border-top: 1px solid #22301f;
}
.g-stat[data-v-588808eb] { display: flex; justify-content: space-between; padding: 6px 0; border-bottom: 1px dotted #1a2418; font-size: 13px; color: #87927f;
}
.g-stat b[data-v-588808eb] { color: #e8e4d8; font-weight: normal;
}
.g-stat .gold[data-v-588808eb] { color: #c9a24b;
}
.mock[data-v-588808eb] { color: #ce8f2c; border: 1px solid #ce8f2c; font-size: 9px; padding: 0 3px; font-style: normal; letter-spacing: 0.1em;
}
.g-sect[data-v-588808eb] { color: #58614f; font-size: 11px; letter-spacing: 0.24em; margin: 14px 0 6px;
}
.g-copy[data-v-588808eb] { color: #87927f; font-size: 12px; line-height: 1.6;
}
.g-copy b[data-v-588808eb] { color: #c9a24b;
}
.g-btn[data-v-588808eb] { width: 100%; margin-top: 8px; padding: 9px; background: #16211a; color: #e8e4d8; border: 1px solid #2e3d2a; font-family: inherit; letter-spacing: 0.18em; font-size: 12px; cursor: pointer;
}
.g-btn[data-v-588808eb]:hover { border-color: #c9a24b;
}

.g-death[data-v-4e1ae2b7] {
  position: fixed; inset: 0; z-index: 140; display: flex; align-items: center; justify-content: center;
  background: rgba(8, 4, 4, 0.82); font-family: 'Courier New', monospace;
  pointer-events: auto !important;
  animation: death-in-4e1ae2b7 600ms ease-out;
}
@keyframes death-in-4e1ae2b7 {
from { opacity: 0;
}
to { opacity: 1;
}
}
.g-death-box[data-v-4e1ae2b7] { text-align: center; border: 1px solid #d33a2c; background: rgba(13, 8, 8, 0.95); padding: 34px 48px; box-shadow: 0 0 0 4px rgba(0, 0, 0, 0.5);
}
.g-death-title[data-v-4e1ae2b7] { color: #d33a2c; font-size: 30px; letter-spacing: 0.4em;
}
.g-death-src[data-v-4e1ae2b7] { color: #87927f; font-size: 13px; letter-spacing: 0.15em; margin-top: 6px;
}
.g-death-note[data-v-4e1ae2b7] { color: #b9b4a6; font-size: 13px; line-height: 1.6; max-width: 320px; margin: 14px auto;
}
.g-death-btn[data-v-4e1ae2b7] { background: #0a0c0b; border: 1px solid #c9a24b; color: #c9a24b; font-family: inherit; font-size: 14px; letter-spacing: 0.18em; padding: 10px 22px; cursor: pointer;
}
.g-death-btn[data-v-4e1ae2b7]:hover { background: #c9a24b; color: #0a0c0b;
}
.g-death-auto[data-v-4e1ae2b7] { color: #58614f; font-size: 11px; letter-spacing: 0.1em; margin-top: 10px;
}

.g-modal[data-v-41770ecf] { position: fixed; inset: 0; background: rgba(10, 12, 11, 0.72); display: flex; align-items: center; justify-content: center; z-index: 100; font-family: 'Courier New', monospace; pointer-events: auto !important;
}
.g-sheet[data-v-41770ecf] { width: min(520px, 94vw); max-height: 86vh; display: flex; flex-direction: column; background: #10160f; border: 1px solid #2e3d2a; box-shadow: 0 0 0 4px rgba(0, 0, 0, 0.4); color: #e8e4d8;
}
.g-head[data-v-41770ecf] { display: flex; align-items: center; gap: 12px; padding: 12px 16px; border-bottom: 1px solid #22301f;
}
.g-title[data-v-41770ecf] { letter-spacing: 0.3em; font-size: 16px;
}
.g-gold[data-v-41770ecf] { color: #c9a24b; font-size: 13px; letter-spacing: 0.1em;
}
.g-x[data-v-41770ecf] { margin-left: auto; background: none; border: 1px solid #2e3d2a; color: #87927f; cursor: pointer; padding: 2px 8px; font-family: inherit;
}
.g-x[data-v-41770ecf]:hover { border-color: #d33a2c; color: #d33a2c;
}
.g-feedback[data-v-41770ecf] { padding: 6px 16px; font-size: 12px; color: #c9a24b; border-bottom: 1px solid #22301f;
}
.g-body[data-v-41770ecf] { overflow-y: auto; padding: 12px 16px;
}
.g-slots[data-v-41770ecf] { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-bottom: 10px;
}
.g-slot[data-v-41770ecf] { border: 1px solid #22301f; background: #0d120c; padding: 8px 10px; display: flex; flex-direction: column; gap: 4px;
}
.g-slot-name[data-v-41770ecf] { font-size: 10px; letter-spacing: 0.2em; color: #58614f;
}
.g-slot-item[data-v-41770ecf] { font-size: 13px;
}
.g-slot-empty[data-v-41770ecf] { font-size: 12px; color: #3f4a3a;
}
.g-statrow[data-v-41770ecf] { display: flex; flex-wrap: wrap; gap: 10px; font-size: 12px; letter-spacing: 0.08em; color: #b9b4a6; border: 1px solid #22301f; background: #0a0c0b; padding: 8px 10px; margin-bottom: 10px;
}
.g-kind[data-v-41770ecf] { color: #c9a24b;
}
.g-broken[data-v-41770ecf] { color: #d33a2c; font-style: normal;
}
.g-sect[data-v-41770ecf] { color: #58614f; font-size: 11px; letter-spacing: 0.25em; margin: 8px 0 6px;
}
.g-empty[data-v-41770ecf] { color: #58614f; font-size: 13px; padding: 8px 0;
}
.g-item[data-v-41770ecf] { display: flex; align-items: center; gap: 10px; border: 1px solid #22301f; background: #0d120c; padding: 8px 10px; margin-bottom: 6px;
}
.g-item-main[data-v-41770ecf] { flex: 1; display: flex; align-items: baseline; gap: 8px; flex-wrap: wrap;
}
.g-item-name[data-v-41770ecf] { font-size: 14px;
}
.g-item-name[data-rarity='uncommon'][data-v-41770ecf] { color: #00c805;
}
.g-item-name[data-rarity='rare'][data-v-41770ecf] { color: #3fbac2;
}
.g-item-name[data-rarity='epic'][data-v-41770ecf] { color: #b06ad4;
}
.g-item-name[data-rarity='legendary'][data-v-41770ecf] { color: #c9a24b;
}
.g-item-slot[data-v-41770ecf] { font-size: 10px; letter-spacing: 0.15em; color: #58614f;
}
.g-nft-tag[data-v-41770ecf] { font-size: 9px; letter-spacing: 0.14em; color: #ce8f2c; border: 1px solid #ce8f2c; padding: 1px 4px;
}
.g-item-info[data-v-41770ecf] { display: flex; gap: 8px; font-size: 11px; color: #87927f;
}
.g-btn[data-v-41770ecf] { background: #0a0c0b; border: 1px solid #2e3d2a; color: #e8e4d8; font-family: inherit; cursor: pointer; letter-spacing: 0.12em;
}
.g-btn[data-v-41770ecf]:hover { border-color: #c9a24b;
}
.g-btn[data-v-41770ecf]:disabled { color: #58614f; cursor: default; border-color: #22301f;
}
.g-btn-sm[data-v-41770ecf] { font-size: 11px; padding: 4px 8px;
}
.g-repair[data-v-41770ecf] { width: 100%; padding: 8px; font-size: 12px; margin-top: 8px;
}
.g-note[data-v-41770ecf] { color: #58614f; font-size: 11px; line-height: 1.5; margin-top: 8px;
}

.g-modal[data-v-a02e752e] { position: fixed; inset: 0; background: rgba(10, 12, 11, 0.72); display: flex; align-items: center; justify-content: center; z-index: 100; font-family: 'Courier New', monospace; pointer-events: auto !important;
}
.g-sheet[data-v-a02e752e] { width: min(560px, 94vw); max-height: 86vh; display: flex; flex-direction: column; background: #10160f; border: 1px solid #2e3d2a; box-shadow: 0 0 0 4px rgba(0, 0, 0, 0.4); color: #e8e4d8;
}
.g-head[data-v-a02e752e] { display: flex; align-items: center; gap: 10px; padding: 12px 16px; border-bottom: 1px solid #22301f; flex-wrap: wrap;
}
.g-title[data-v-a02e752e] { letter-spacing: 0.25em; font-size: 15px;
}
.g-mock[data-v-a02e752e] { color: #ce8f2c; border: 1px solid #ce8f2c; font-size: 10px; padding: 2px 5px; letter-spacing: 0.12em;
}
.g-art[data-v-a02e752e] { color: #58614f; font-size: 10px; letter-spacing: 0.1em; margin-top: 3px;
}
.g-art.ready[data-v-a02e752e] { color: #00c805;
}
.g-after[data-v-a02e752e] { color: #c9a24b;
}
.g-bal[data-v-a02e752e] { margin-left: auto; font-size: 12px; color: #87927f;
}
.g-bal b[data-v-a02e752e] { color: #c9a24b;
}
.g-x[data-v-a02e752e] { background: none; border: 1px solid #2e3d2a; color: #87927f; cursor: pointer; padding: 2px 8px; font-family: inherit;
}
.g-x[data-v-a02e752e]:hover { border-color: #d33a2c; color: #d33a2c;
}
.g-body[data-v-a02e752e] { overflow-y: auto; padding: 12px 16px;
}
.g-copy[data-v-a02e752e] { color: #87927f; font-size: 12px; line-height: 1.6; margin-bottom: 12px;
}
.g-mint[data-v-a02e752e] { border: 1px solid #22301f; background: #0d120c; padding: 10px 12px; margin-bottom: 10px; cursor: pointer;
}
.g-mint[data-v-a02e752e]:hover, .g-mint.sel[data-v-a02e752e] { border-color: #c9a24b;
}
.g-mint-top[data-v-a02e752e] { display: flex; justify-content: space-between; gap: 8px;
}
.g-mint-name[data-v-a02e752e] { font-size: 15px; letter-spacing: 0.06em;
}
[data-rarity='epic'][data-v-a02e752e] { color: #c9a24b;
}
[data-rarity='legendary'][data-v-a02e752e] { color: #ce8f2c;
}
.g-supply[data-v-a02e752e] { font-size: 11px; color: #3fbac2; letter-spacing: 0.1em;
}
.g-owned[data-v-a02e752e] { font-size: 10px; color: #00c805; border: 1px solid #00c805; padding: 1px 4px; letter-spacing: 0.1em;
}
.g-transfer-btn[data-v-a02e752e] { margin-top: 6px; width: 100%; padding: 6px; background: none; color: #d33a2c; border: 1px dotted #d33a2c; font-family: inherit; font-size: 10px; letter-spacing: 0.12em; cursor: pointer;
}
.g-transfer-btn[data-v-a02e752e]:hover { background: rgba(211, 58, 44, 0.08);
}
.g-mint-meta[data-v-a02e752e] { color: #58614f; font-size: 11px; letter-spacing: 0.12em; margin-top: 2px;
}
.g-mint-effect[data-v-a02e752e] { color: #00c805; font-size: 12px; margin-top: 4px;
}
.g-mint-detail[data-v-a02e752e] { margin-top: 10px; border-top: 1px dotted #22301f; padding-top: 8px;
}
.g-mint-desc[data-v-a02e752e] { color: #b9b4a6; font-size: 12px; line-height: 1.5;
}
.g-split-head[data-v-a02e752e] { color: #58614f; font-size: 10px; letter-spacing: 0.14em; margin: 8px 0 4px;
}
.g-split-row[data-v-a02e752e] { display: flex; justify-content: space-between; font-size: 12px; color: #b9b4a6; padding: 2px 0; border-bottom: 1px dotted #1a2418;
}
.g-mint-btn[data-v-a02e752e] { margin-top: 10px; width: 100%; padding: 9px; background: #c9a24b; color: #0a0c0b; border: 1px solid #8a6e2f; font-family: inherit; letter-spacing: 0.15em; font-weight: bold; cursor: pointer;
}
.g-mint-btn[data-v-a02e752e]:disabled { background: #22301f; color: #58614f; border-color: #22301f; cursor: default;
}
.g-legal[data-v-a02e752e] { color: #58614f; font-size: 10px; letter-spacing: 0.06em; margin-top: 8px; line-height: 1.5;
}
.g-feedback[data-v-a02e752e] { color: #ce8f2c; font-size: 13px; padding: 6px 0;
}

.g-hitfx[data-v-ebb18e21] { position: fixed; inset: 0; z-index: 85; pointer-events: none !important; font-family: 'Courier New', monospace;
}
.g-hit-flash[data-v-ebb18e21] {
  position: absolute; inset: 0;
  background: radial-gradient(ellipse at center, transparent 45%, rgba(211, 58, 44, 0.38) 100%);
  animation: hit-pulse-ebb18e21 380ms ease-out;
}
@keyframes hit-pulse-ebb18e21 {
from { opacity: 1;
}
to { opacity: 0.4;
}
}
/* slash arc: sweeps across the player (screen center) in the facing direction */
.g-slash[data-v-ebb18e21] {
  position: absolute; left: 50%; top: 50%; width: 64px; height: 64px;
  margin: -32px 0 0 -32px;
  border: 3px solid rgba(232, 228, 216, 0.9);
  border-color: transparent rgba(232, 228, 216, 0.95) transparent transparent;
  border-radius: 50%;
  animation: slash-sweep-ebb18e21 180ms ease-out forwards;
}
.g-slash[data-kind='bow'][data-v-ebb18e21], .g-slash[data-kind='staff'][data-v-ebb18e21] {
  border-radius: 0; border: none; width: 26px; height: 3px; margin: -1px 0 0 -13px;
  background: linear-gradient(90deg, transparent, #e8e4d8);
  animation: bolt-out-ebb18e21 200ms ease-out forwards;
}
.g-slash[data-kind='staff'][data-v-ebb18e21] { background: linear-gradient(90deg, transparent, #3fbac2);
}
.g-slash[data-dir='1'][data-v-ebb18e21] { transform: rotate(-135deg)
}
.g-slash[data-dir='2'][data-v-ebb18e21] { transform: rotate(-45deg)
}
.g-slash[data-dir='3'][data-v-ebb18e21] { transform: rotate(45deg)
}
.g-slash[data-dir='4'][data-v-ebb18e21] { transform: rotate(135deg)
}
@keyframes slash-sweep-ebb18e21 {
from { opacity: 0.95; scale: 0.7; rotate: 0deg;
}
to { opacity: 0; scale: 1.25; rotate: 100deg;
}
}
@keyframes bolt-out-ebb18e21 {
from { opacity: 1; translate: 0 0;
}
to { opacity: 0; translate: 46px 0;
}
}
/* damage number pop, offset above-right of the player */
.g-dmg-pop[data-v-ebb18e21] {
  position: absolute; left: 52%; top: 40%;
  font-size: 22px; font-weight: bold; color: #ffffff;
  text-shadow: 0 2px 0 #000, 0 0 6px rgba(0, 0, 0, 0.6);
  animation: dmg-rise-ebb18e21 300ms ease-out forwards;
}
.g-dmg-pop[data-crit='true'][data-v-ebb18e21] { color: #c9a24b; font-size: 30px;
}
@keyframes dmg-rise-ebb18e21 {
from { transform: translateY(6px); opacity: 1;
}
to { transform: translateY(-16px); opacity: 0;
}
}
.g-hit-text[data-v-ebb18e21] {
  position: absolute; left: 50%; top: 38%; transform: translateX(-50%);
  font-size: 20px; letter-spacing: 0.15em; color: #d33a2c; text-shadow: 0 1px 0 #000;
  animation: hit-rise-ebb18e21 380ms ease-out;
}
.g-hit-block[data-v-ebb18e21] { color: #87927f; font-size: 14px;
}
@keyframes hit-rise-ebb18e21 {
from { transform: translateX(-50%) translateY(6px);
}
to { transform: translateX(-50%) translateY(0);
}
}

#rpg.gen-shake { animation: gen-shake 300ms steps(6, end);
}
@keyframes gen-shake {
0% { transform: translate(3px, -2px);
}
25% { transform: translate(-3px, 2px);
}
50% { transform: translate(2px, 2px);
}
75% { transform: translate(-2px, -2px);
}
100% { transform: none;
}
}
@media (prefers-reduced-motion: reduce) {
#rpg.gen-shake { animation: none;
}
}

/* !important is load-bearing: the engine force-sets inline pointer-events:auto
   on every displayed GUI root, which turned this full-screen layer into an
   invisible click shield. Interactive children re-enable pointer-events. */
.g-hud[data-v-db426716] { position: fixed; inset: 0; pointer-events: none !important; font-family: 'Courier New', monospace; z-index: 50;
}
.g-panel[data-v-db426716] {
  background: rgba(13, 18, 12, 0.92);
  border: 1px solid #2e3d2a;
  box-shadow: inset 0 1px 0 rgba(232, 228, 216, 0.06);
  color: #e8e4d8;
}
.g-charblock[data-v-db426716] { position: absolute; top: 12px; left: 12px; width: 210px; padding: 10px 12px; pointer-events: auto;
}
.g-row[data-v-db426716] { display: flex; justify-content: space-between; align-items: baseline;
}
.g-name[data-v-db426716] { font-size: 15px; letter-spacing: 0.1em; margin-bottom: 8px;
}
.g-bar-label[data-v-db426716] { display: flex; justify-content: space-between; font-size: 11px; letter-spacing: 0.15em; color: #87927f; margin: 4px 0 2px;
}
.g-bar[data-v-db426716] { height: 8px; background: #0a0c0b; border: 1px solid #22301f;
}
.g-bar-thin[data-v-db426716] { height: 5px;
}
.g-fill[data-v-db426716] { height: 100%; transition: width 200ms steps(4, end);
}
.g-fill-hp[data-v-db426716] { background: #d33a2c;
}
.g-fill-sp[data-v-db426716] { background: #c9a24b;
}
.g-fill-xp[data-v-db426716] { background: #00c805;
}
.g-goldrow[data-v-db426716] { margin-top: 8px; font-size: 13px;
}
.g-dim[data-v-db426716] { color: #87927f; letter-spacing: 0.12em; font-size: 12px;
}
.g-gold-txt[data-v-db426716] { color: #c9a24b; letter-spacing: 0.08em;
}
.g-quest[data-v-db426716] { position: absolute; top: 12px; left: 50%; transform: translateX(-50%); padding: 8px 16px; max-width: 380px; text-align: center;
}
.g-quest-title[data-v-db426716] { font-size: 13px; letter-spacing: 0.2em; color: #c9a24b;
}
.g-quest-obj[data-v-db426716] { font-size: 13px; color: #e8e4d8; margin-top: 3px;
}
.g-topright[data-v-db426716] { position: absolute; top: 12px; right: 12px; display: flex; flex-direction: column; gap: 6px; align-items: flex-end;
}
.g-chip[data-v-db426716] { padding: 6px 10px; font-size: 12px; letter-spacing: 0.1em; display: flex; gap: 8px; align-items: center; pointer-events: auto; cursor: default;
}
.g-stock[data-v-db426716], .g-menubtn[data-v-db426716] { cursor: pointer; font-family: inherit;
}
.g-stock[data-v-db426716]:hover, .g-menubtn[data-v-db426716]:hover { border-color: #c9a24b;
}
.g-dot[data-v-db426716] { width: 7px; height: 7px; background: #ce8f2c; display: inline-block;
}
.g-mock[data-v-db426716] { color: #ce8f2c; border: 1px solid #ce8f2c; padding: 1px 4px; font-size: 10px; letter-spacing: 0.16em;
}
.g-menubtn[data-v-db426716] { justify-content: center; letter-spacing: 0.25em; color: #e8e4d8;
}
.g-bottom[data-v-db426716] { position: absolute; bottom: 12px; left: 50%; transform: translateX(-50%); display: flex; flex-direction: column; align-items: center; gap: 6px;
}
.g-quick[data-v-db426716] { display: flex; gap: 4px; padding: 5px; pointer-events: auto;
}
.g-quick-slot[data-v-db426716] { position: relative; width: 44px; height: 44px; background: #0a0c0b; border: 1px solid #22301f; cursor: pointer; font-family: inherit;
}
.g-quick-slot.empty[data-v-db426716] { cursor: default;
}
.g-quick-slot.sel[data-v-db426716] { border-color: #00c805; box-shadow: 0 0 0 1px #00c805;
}
.g-quick-key[data-v-db426716] { position: absolute; top: 1px; left: 3px; font-size: 12px; color: #58614f;
}
.g-quick-cd[data-v-db426716] {
  position: absolute; inset: 0; display: flex; align-items: center; justify-content: center;
  background: rgba(10, 12, 11, 0.72); color: #c9a24b; font-size: 15px;
}
.g-quick-slot[data-v-db426716]:hover:not(.empty) { border-color: #c9a24b;
}
.g-quick-abbr[data-v-db426716] { font-size: 12px; color: #e8e4d8; letter-spacing: 0.05em;
}
.g-quick-abbr[data-rarity='uncommon'][data-v-db426716] { color: #00c805;
}
.g-quick-abbr[data-rarity='rare'][data-v-db426716] { color: #3fbac2;
}
.g-quick-nb[data-v-db426716] { position: absolute; bottom: 1px; right: 3px; font-size: 11px; color: #c9a24b;
}
.g-controls[data-v-db426716] { padding: 4px 12px; font-size: 11px; letter-spacing: 0.18em; color: #58614f;
}
.g-prompt[data-v-db426716] { padding: 6px 14px; font-size: 13px; letter-spacing: 0.08em; color: #e8e4d8; border-color: #c9a24b;
}
/* A prompt for something the CURRENT objective needs — green like every
   other "this is the money path" cue, with a soft pulse so it reads as an
   invitation rather than another label. */
.g-prompt-quest[data-v-db426716] { border-color: #00c805; box-shadow: 0 0 0 1px rgba(0,200,5,0.25); animation: g-quest-pulse-db426716 1.8s ease-in-out infinite;
}
.g-prompt-mark[data-v-db426716] { color: #00c805; margin-right: 8px; font-size: 12px;
}
@keyframes g-quest-pulse-db426716 {
0%,100% { box-shadow: 0 0 0 1px rgba(0,200,5,0.20);
}
50% { box-shadow: 0 0 10px 1px rgba(0,200,5,0.45);
}
}
.g-prompt-key[data-v-db426716] {
  display: inline-block; background: #c9a24b; color: #0a0c0b; font-weight: bold;
  padding: 1px 6px; margin-right: 8px; font-size: 12px;
}
.g-clock[data-v-db426716] { gap: 10px;
}
.g-clock-phase[data-v-db426716] { color: #c9a24b; letter-spacing: 0.18em;
}
.g-clock-weather[data-v-db426716] { color: #87927f; letter-spacing: 0.14em;
}
@media (max-width: 760px) {
.g-quest[data-v-db426716] { display: none;
}
.g-charblock[data-v-db426716] { width: 170px;
}
}

.g-modal[data-v-6dcdd852] { position: fixed; inset: 0; background: rgba(10, 12, 11, 0.72); display: flex; align-items: center; justify-content: center; z-index: 100; font-family: 'Courier New', monospace; pointer-events: auto !important;
}
.g-sheet[data-v-6dcdd852] { width: min(560px, 94vw); max-height: 84vh; display: flex; flex-direction: column; background: #10160f; border: 1px solid #2e3d2a; box-shadow: 0 0 0 4px rgba(0, 0, 0, 0.4); color: #e8e4d8;
}
.g-head[data-v-6dcdd852] { display: flex; align-items: center; padding: 12px 16px; border-bottom: 1px solid #22301f;
}
.g-title[data-v-6dcdd852] { letter-spacing: 0.3em; font-size: 16px;
}
.g-x[data-v-6dcdd852] { margin-left: auto; background: none; border: 1px solid #2e3d2a; color: #87927f; cursor: pointer; padding: 2px 8px; font-family: inherit;
}
.g-x[data-v-6dcdd852]:hover { border-color: #d33a2c; color: #d33a2c;
}
.g-tabs[data-v-6dcdd852] { display: flex; border-bottom: 1px solid #22301f;
}
.g-tab[data-v-6dcdd852] { flex: 1; background: none; border: none; border-right: 1px solid #22301f; color: #87927f; padding: 8px; font-size: 12px; letter-spacing: 0.15em; cursor: pointer; font-family: inherit;
}
.g-tab.active[data-v-6dcdd852] { color: #c9a24b; background: #0a0c0b; box-shadow: inset 0 -2px 0 #c9a24b;
}
.g-body[data-v-6dcdd852] { overflow-y: auto; padding: 12px 16px;
}
.g-empty[data-v-6dcdd852] { color: #58614f; font-size: 13px; letter-spacing: 0.06em; line-height: 1.6; padding: 14px 4px;
}
.g-quest[data-v-6dcdd852] { border: 1px solid #22301f; padding: 12px 14px; margin-bottom: 12px; background: #0d120c;
}
.g-q-top[data-v-6dcdd852] { display: flex; justify-content: space-between; gap: 8px; flex-wrap: wrap;
}
.g-q-title[data-v-6dcdd852] { color: #c9a24b; letter-spacing: 0.2em; font-size: 14px;
}
.g-q-region[data-v-6dcdd852] { color: #58614f; font-size: 11px; letter-spacing: 0.12em;
}
.g-q-giver[data-v-6dcdd852] { color: #87927f; font-size: 12px; margin-top: 2px;
}
.g-q-desc[data-v-6dcdd852] { color: #b9b4a6; font-size: 13px; line-height: 1.55; margin: 8px 0;
}
.g-q-obj-head[data-v-6dcdd852] { color: #58614f; font-size: 11px; letter-spacing: 0.2em; margin-bottom: 4px;
}
.g-q-obj[data-v-6dcdd852] { font-size: 13px; padding: 2px 0; color: #e8e4d8;
}
.g-q-obj.done[data-v-6dcdd852] { color: #00c805;
}
.g-q-rewards[data-v-6dcdd852] { margin-top: 8px; font-size: 12px; color: #e8e4d8;
}
.g-dim[data-v-6dcdd852] { color: #58614f; letter-spacing: 0.15em; font-size: 11px; margin-right: 6px;
}
.g-q-stock[data-v-6dcdd852] { margin-top: 6px; font-size: 11px; color: #ce8f2c; letter-spacing: 0.06em;
}

/* !important beats the engine's inline pointer-events:auto on GUI roots — this
   full-screen banner must never eat clicks while it shows (4.2s per level). */
.g-wrap[data-v-6e30fe1f] { position: fixed; inset: 0; display: flex; align-items: center; justify-content: center; pointer-events: none !important; z-index: 120; font-family: 'Courier New', monospace;
}
.g-banner[data-v-6e30fe1f] {
  position: relative; text-align: center; padding: 26px 44px;
  background: rgba(13, 18, 12, 0.95); border: 1px solid #00c805;
  box-shadow: 0 0 0 4px rgba(0, 0, 0, 0.5), 0 0 40px rgba(0, 200, 5, 0.25);
  animation: pop-6e30fe1f 300ms steps(5, end);
  color: #e8e4d8;
}
@keyframes pop-6e30fe1f {
from { transform: scale(0.85); opacity: 0;
}
to { transform: none; opacity: 1;
}
}
.g-glow[data-v-6e30fe1f] { position: absolute; left: 0; right: 0; top: 0; height: 2px; background: #00c805;
}
.g-label[data-v-6e30fe1f] { letter-spacing: 0.5em; font-size: 14px; color: #00c805;
}
.g-level[data-v-6e30fe1f] { font-size: 52px; color: #e8e4d8; margin: 6px 0;
}
.g-unlocks[data-v-6e30fe1f] { margin-top: 6px;
}
.g-unlock[data-v-6e30fe1f] { color: #c9a24b; font-size: 13px; padding: 2px 0;
}
.g-note[data-v-6e30fe1f] { margin-top: 10px; color: #58614f; font-size: 11px; max-width: 340px; line-height: 1.5; letter-spacing: 0.04em;
}

.g-modal[data-v-fd45ab9b] { position: fixed; inset: 0; background: rgba(10, 12, 11, 0.78); display: flex; align-items: center; justify-content: center; z-index: 100; font-family: 'Courier New', monospace; pointer-events: auto !important;
}
.g-sheet[data-v-fd45ab9b] { width: min(760px, 94vw); max-height: 90vh; display: flex; flex-direction: column; background: #10160f; border: 1px solid #2e3d2a; box-shadow: 0 0 0 4px rgba(0, 0, 0, 0.4); color: #e8e4d8;
}
.g-head[data-v-fd45ab9b] { display: flex; align-items: center; gap: 14px; padding: 12px 16px; border-bottom: 1px solid #22301f;
}
.g-title[data-v-fd45ab9b] { letter-spacing: 0.3em; font-size: 15px;
}
.g-region[data-v-fd45ab9b] { color: #c9a24b; font-size: 13px; letter-spacing: 0.2em;
}
.g-x[data-v-fd45ab9b] { margin-left: auto; background: none; border: 1px solid #2e3d2a; color: #87927f; cursor: pointer; padding: 2px 8px; font-family: inherit;
}
.g-x[data-v-fd45ab9b]:hover { border-color: #d33a2c; color: #d33a2c;
}
.g-body[data-v-fd45ab9b] { padding: 12px 16px; overflow: auto;
}
.g-map-wrap[data-v-fd45ab9b] { position: relative; border: 1px solid #22301f;
}
.g-map-img[data-v-fd45ab9b] { display: block; width: 100%; image-rendering: pixelated;
}
.g-marker[data-v-fd45ab9b] {
  position: absolute; width: 10px; height: 10px; transform: translate(-50%, -50%) rotate(45deg);
  background: #00c805; box-shadow: 0 0 0 2px #0a0c0b, 0 0 10px rgba(0, 200, 5, 0.9);
  animation: mk-fd45ab9b 1.2s steps(2, end) infinite;
}
@keyframes mk-fd45ab9b {
50% { box-shadow: 0 0 0 2px #0a0c0b, 0 0 16px rgba(0, 200, 5, 1);
}
}
.g-empty[data-v-fd45ab9b] { color: #58614f; font-size: 13px; padding: 30px; text-align: center; letter-spacing: 0.08em;
}
.g-legend[data-v-fd45ab9b] { display: flex; justify-content: space-between; gap: 10px; margin-top: 8px; font-size: 10px; letter-spacing: 0.16em; color: #58614f;
}

.g-modal[data-v-672413bf] { position: fixed; inset: 0; background: rgba(10, 12, 11, 0.72); display: flex; align-items: center; justify-content: center; z-index: 100; font-family: 'Courier New', monospace; pointer-events: auto !important;
}
.g-sheet[data-v-672413bf] { width: min(640px, 96vw); max-height: 88vh; display: flex; flex-direction: column; background: #10160f; border: 1px solid #2e3d2a; box-shadow: 0 0 0 4px rgba(0, 0, 0, 0.4); color: #e8e4d8;
}
.g-head[data-v-672413bf] { display: flex; align-items: center; gap: 10px; padding: 12px 16px; border-bottom: 1px solid #22301f; flex-wrap: wrap;
}
.g-title[data-v-672413bf] { letter-spacing: 0.25em; font-size: 15px;
}
.g-mock[data-v-672413bf] { color: #ce8f2c; border: 1px solid #ce8f2c; font-size: 10px; padding: 2px 5px; letter-spacing: 0.12em;
}
.g-bal[data-v-672413bf] { margin-left: auto; font-size: 12px; color: #87927f;
}
.g-bal b[data-v-672413bf] { color: #c9a24b;
}
.g-x[data-v-672413bf] { background: none; border: 1px solid #2e3d2a; color: #87927f; cursor: pointer; padding: 2px 8px; font-family: inherit;
}
.g-x[data-v-672413bf]:hover { border-color: #d33a2c; color: #d33a2c;
}
.g-tabs[data-v-672413bf] { display: flex; border-bottom: 1px solid #22301f;
}
.g-tab[data-v-672413bf] { flex: 1; background: none; border: none; border-right: 1px solid #16211a; color: #58614f; padding: 7px 4px; font-size: 10px; letter-spacing: 0.12em; cursor: pointer; font-family: inherit;
}
.g-tab[data-v-672413bf]:last-child { border-right: none;
}
.g-tab[data-v-672413bf]:hover { color: #e8e4d8; background: #0a0c0b;
}
.g-tab.active[data-v-672413bf] { color: #c9a24b; background: #0a0c0b; box-shadow: inset 0 -2px 0 #c9a24b;
}
.g-body[data-v-672413bf] { overflow-y: auto; padding: 12px 16px;
}
.g-hint[data-v-672413bf] { color: #87927f; font-size: 11px; line-height: 1.6; margin-bottom: 10px;
}
.g-hint b[data-v-672413bf] { color: #b9b4a6;
}
.g-filters[data-v-672413bf] { display: flex; gap: 6px; margin-bottom: 10px; flex-wrap: wrap;
}
.g-search[data-v-672413bf], .g-sel[data-v-672413bf], .g-input[data-v-672413bf] { background: #0a0c0b; border: 1px solid #22301f; color: #e8e4d8; font-family: inherit; font-size: 11px; padding: 5px 6px;
}
.g-search[data-v-672413bf] { flex: 1; min-width: 120px;
}
.g-input[data-v-672413bf] { width: 130px;
}
.g-list[data-v-672413bf] { display: flex; flex-direction: column; gap: 8px;
}
.g-empty[data-v-672413bf] { color: #58614f; font-size: 12px; padding: 16px 0; text-align: center; line-height: 1.6;
}
.g-card[data-v-672413bf] { border: 1px solid #22301f; background: #0d120c; padding: 10px 12px; cursor: pointer;
}
.g-card[data-v-672413bf]:hover, .g-card.sel[data-v-672413bf] { border-color: #c9a24b;
}
.g-card-top[data-v-672413bf] { display: flex; justify-content: space-between; gap: 8px; align-items: baseline;
}
.g-card-name[data-v-672413bf] { font-size: 14px; letter-spacing: 0.05em;
}
[data-rarity='uncommon'][data-v-672413bf] { color: #7fb069;
}
[data-rarity='rare'][data-v-672413bf] { color: #3fbac2;
}
[data-rarity='epic'][data-v-672413bf] { color: #c9a24b;
}
[data-rarity='legendary'][data-v-672413bf] { color: #ce8f2c;
}
[data-rarity='mythic'][data-v-672413bf] { color: #d33a2c;
}
.g-price[data-v-672413bf] { color: #c9a24b; font-size: 13px; white-space: nowrap;
}
.g-card-meta[data-v-672413bf] { color: #58614f; font-size: 10px; letter-spacing: 0.1em; margin-top: 3px;
}
.g-verified[data-v-672413bf] { color: #00c805; border: 1px solid #00c805; padding: 0 3px; margin-left: 4px;
}
.g-card-eff[data-v-672413bf] { color: #00c805; font-size: 11px; margin-top: 4px;
}
.g-card-seller[data-v-672413bf] { color: #87927f; font-size: 11px; margin-top: 3px;
}
.g-tags[data-v-672413bf] { display: flex; gap: 4px;
}
.g-tag[data-v-672413bf] { font-size: 9px; padding: 1px 4px; letter-spacing: 0.1em; border: 1px solid;
}
.g-tag.on[data-v-672413bf] { color: #00c805; border-color: #00c805;
}
.g-tag.list[data-v-672413bf] { color: #ce8f2c; border-color: #ce8f2c;
}
.g-detail[data-v-672413bf] { margin-top: 10px; border-top: 1px dotted #22301f; padding-top: 8px;
}
.g-split-head[data-v-672413bf] { color: #58614f; font-size: 10px; letter-spacing: 0.14em; margin: 8px 0 4px;
}
.g-split-row[data-v-672413bf] { display: flex; justify-content: space-between; font-size: 11px; color: #b9b4a6; padding: 2px 0; border-bottom: 1px dotted #1a2418;
}
.g-after[data-v-672413bf] { color: #c9a24b;
}
.g-preview[data-v-672413bf] { margin-top: 6px;
}
.g-row[data-v-672413bf] { display: flex; gap: 6px; align-items: center; margin: 6px 0;
}
.g-btn[data-v-672413bf] { margin-top: 10px; width: 100%; padding: 9px; background: #c9a24b; color: #0a0c0b; border: 1px solid #8a6e2f; font-family: inherit; letter-spacing: 0.14em; font-weight: bold; cursor: pointer; font-size: 11px;
}
.g-btn[data-v-672413bf]:disabled { background: #22301f; color: #58614f; border-color: #22301f; cursor: default;
}
.g-btn.sm[data-v-672413bf] { margin-top: 0; width: auto; padding: 6px 12px;
}
.g-btn.warn[data-v-672413bf] { background: none; color: #d33a2c; border: 1px dotted #d33a2c;
}
.g-legal[data-v-672413bf] { color: #58614f; font-size: 10px; margin-top: 8px; line-height: 1.5;
}
.g-status[data-v-672413bf] { letter-spacing: 0.12em;
}
.g-status.active[data-v-672413bf] { color: #00c805;
}
.g-status.sold[data-v-672413bf] { color: #c9a24b;
}
.g-status.cancelled[data-v-672413bf], .g-status.expired[data-v-672413bf], .g-status.stale[data-v-672413bf] { color: #d33a2c;
}
.g-act[data-v-672413bf] { display: flex; gap: 8px; align-items: baseline; font-size: 11px; padding: 5px 0; border-bottom: 1px dotted #1a2418; flex-wrap: wrap;
}
.g-act-kind[data-v-672413bf] { font-size: 9px; letter-spacing: 0.1em; padding: 1px 4px; border: 1px solid #58614f; color: #87927f;
}
.g-act-kind.mint[data-v-672413bf] { color: #00c805; border-color: #00c805;
}
.g-act-kind.sale[data-v-672413bf] { color: #c9a24b; border-color: #c9a24b;
}
.g-act-kind.burn[data-v-672413bf] { color: #d33a2c; border-color: #d33a2c;
}
.g-act-item[data-v-672413bf] { color: #e8e4d8;
}
.g-act-price[data-v-672413bf] { color: #c9a24b;
}
.g-act-who[data-v-672413bf] { color: #58614f; margin-left: auto;
}
.g-feedback[data-v-672413bf] { color: #ce8f2c; font-size: 12px; padding: 6px 16px; border-bottom: 1px solid #22301f;
}
.g-help-row[data-v-672413bf] { display: flex; flex-direction: column; gap: 2px; padding: 8px 0; border-bottom: 1px dotted #1a2418;
}
.g-help-row b[data-v-672413bf] { color: #c9a24b; font-size: 11px; letter-spacing: 0.12em;
}
.g-help-row span[data-v-672413bf] { color: #b9b4a6; font-size: 12px; line-height: 1.5;
}
.g-totals[data-v-672413bf] { margin-top: 12px;
}
.g-steps[data-v-672413bf] { list-style: none; margin: 0 0 6px; padding: 0;
}
.g-steps li[data-v-672413bf] { display: flex; gap: 8px; align-items: flex-start; padding: 5px 0; border-bottom: 1px dotted #1a2418;
}
.g-step-mark[data-v-672413bf] { flex: 0 0 18px; height: 18px; line-height: 18px; text-align: center; border: 1px solid #2e3d2a; color: #58614f; font-size: 10px;
}
.g-steps li.done .g-step-mark[data-v-672413bf] { color: #00c805; border-color: #00c805;
}
.g-step-body[data-v-672413bf] { display: flex; flex-direction: column; gap: 1px;
}
.g-step-body b[data-v-672413bf] { color: #e8e4d8; font-size: 12px; font-weight: normal;
}
.g-steps li.done .g-step-body b[data-v-672413bf] { color: #87927f; text-decoration: line-through;
}
.g-step-hint[data-v-672413bf] { color: #58614f; font-size: 11px; line-height: 1.4;
}

.g-scrim[data-v-784429d6] { position: fixed; inset: 0; background: rgba(10, 12, 11, 0.55); z-index: 100; font-family: 'Courier New', monospace; pointer-events: auto !important;
}
.g-drawer[data-v-784429d6] {
  position: absolute; top: 0; right: 0; bottom: 0; width: min(320px, 88vw);
  background: #10160f; border-left: 1px solid #2e3d2a; color: #e8e4d8;
  display: flex; flex-direction: column;
  animation: slide-in-784429d6 160ms steps(4, end);
}
@keyframes slide-in-784429d6 {
from { transform: translateX(40px); opacity: 0.4;
}
to { transform: none; opacity: 1;
}
}
.g-head[data-v-784429d6] { display: flex; align-items: center; padding: 14px 16px; border-bottom: 1px solid #22301f;
}
.g-title[data-v-784429d6] { letter-spacing: 0.35em; font-size: 17px; color: #e8e4d8;
}
.g-x[data-v-784429d6] { margin-left: auto; background: none; border: 1px solid #2e3d2a; color: #87927f; cursor: pointer; padding: 2px 8px; font-family: inherit;
}
.g-x[data-v-784429d6]:hover { border-color: #d33a2c; color: #d33a2c;
}
.g-nav[data-v-784429d6] { display: flex; flex-direction: column;
}
.g-entry[data-v-784429d6] { display: flex; justify-content: space-between; align-items: center; background: none; border: none; border-bottom: 1px solid #16211a; color: #b9b4a6; padding: 11px 16px; font-family: inherit; font-size: 14px; letter-spacing: 0.12em; cursor: pointer; text-align: left;
}
.g-entry[data-v-784429d6]:hover { color: #e8e4d8; background: #0a0c0b;
}
.g-entry.active[data-v-784429d6] { color: #c9a24b; box-shadow: inset 2px 0 0 #c9a24b; background: #0a0c0b;
}
.g-tag[data-v-784429d6] { font-size: 9px; letter-spacing: 0.15em; color: #58614f; border: 1px solid #22301f; padding: 1px 4px;
}
.g-detail[data-v-784429d6] { padding: 12px 16px; overflow-y: auto; border-top: 1px solid #22301f;
}
.g-d-title[data-v-784429d6] { color: #c9a24b; letter-spacing: 0.25em; font-size: 12px; margin-bottom: 8px;
}
.g-d-p[data-v-784429d6] { color: #87927f; font-size: 12px; line-height: 1.6; margin-bottom: 8px;
}
.g-foot[data-v-784429d6] { margin-top: auto; padding: 10px 16px; border-top: 1px solid #22301f; color: #58614f; font-size: 10px; letter-spacing: 0.2em;
}
.g-slider[data-v-784429d6] { display: flex; align-items: center; gap: 8px; margin-bottom: 8px; font-size: 11px; letter-spacing: 0.15em; color: #87927f;
}
.g-slider span[data-v-784429d6]:first-child { width: 62px;
}
.g-slider input[type='range'][data-v-784429d6] { flex: 1; accent-color: #c9a24b; height: 4px;
}
.g-slider-val[data-v-784429d6] { width: 24px; text-align: right; color: #c9a24b;
}
.g-mute[data-v-784429d6] { display: flex; align-items: center; gap: 8px; font-size: 11px; letter-spacing: 0.15em; color: #b9b4a6; margin: 10px 0; cursor: pointer;
}
.g-mute input[data-v-784429d6] { accent-color: #d33a2c;
}

.g-modal[data-v-f22a78b5] { position: fixed; inset: 0; background: rgba(10, 12, 11, 0.72); display: flex; align-items: center; justify-content: center; z-index: 100; font-family: 'Courier New', monospace; pointer-events: auto !important;
}
.g-sheet[data-v-f22a78b5] { width: min(420px, 92vw); background: #10160f; border: 1px solid #2e3d2a; box-shadow: 0 0 0 4px rgba(0, 0, 0, 0.4); color: #e8e4d8;
}
.g-head[data-v-f22a78b5] { display: flex; align-items: center; gap: 10px; padding: 12px 16px; border-bottom: 1px solid #22301f;
}
.g-title[data-v-f22a78b5] { letter-spacing: 0.25em; font-size: 15px;
}
.g-mock[data-v-f22a78b5] { color: #ce8f2c; border: 1px solid #ce8f2c; font-size: 10px; padding: 2px 5px; letter-spacing: 0.14em;
}
.g-x[data-v-f22a78b5] { margin-left: auto; background: none; border: 1px solid #2e3d2a; color: #87927f; cursor: pointer; padding: 2px 8px; font-family: inherit;
}
.g-x[data-v-f22a78b5]:hover { border-color: #d33a2c; color: #d33a2c;
}
.g-body[data-v-f22a78b5] { padding: 14px 16px;
}
.g-copy[data-v-f22a78b5] { color: #87927f; font-size: 12px; line-height: 1.6; margin-bottom: 12px;
}
.g-opts[data-v-f22a78b5] { display: grid; grid-template-columns: 1fr 1fr; gap: 6px;
}
.g-opt[data-v-f22a78b5] { display: flex; justify-content: space-between; align-items: center; background: #0a0c0b; border: 1px solid #22301f; color: #e8e4d8; padding: 10px 12px; font-family: inherit; font-size: 14px; letter-spacing: 0.15em; cursor: pointer;
}
.g-opt[data-v-f22a78b5]:hover { border-color: #c9a24b;
}
.g-opt.sel[data-v-f22a78b5] { border-color: #00c805; color: #00c805;
}
.g-sel-tag[data-v-f22a78b5] { font-size: 9px; letter-spacing: 0.12em;
}
.g-current[data-v-f22a78b5] { margin-top: 12px; font-size: 12px; color: #87927f; letter-spacing: 0.08em;
}
.g-gold[data-v-f22a78b5] { color: #c9a24b;
}
.g-dimtxt[data-v-f22a78b5] { color: #58614f;
}
.g-totals[data-v-f22a78b5] { display: flex; gap: 24px; margin-bottom: 12px;
}
.g-lbl[data-v-f22a78b5] { display: block; color: #58614f; font-size: 10px; letter-spacing: 0.2em; margin-bottom: 3px;
}
.g-sect[data-v-f22a78b5] { color: #58614f; font-size: 11px; letter-spacing: 0.24em; margin: 14px 0 6px;
}
.g-row[data-v-f22a78b5] { display: flex; align-items: center; gap: 10px; padding: 7px 0; border-top: 1px solid #22301f;
}
.g-q[data-v-f22a78b5] { flex: 1; color: #e8e4d8; font-size: 12px; text-transform: capitalize;
}
.g-amt[data-v-f22a78b5] { color: #c9a24b; font-size: 12px;
}
.g-wd[data-v-f22a78b5] { background: #00c805; color: #06210a; border: 0; padding: 5px 12px; font-family: inherit; font-size: 11px; font-weight: bold; letter-spacing: 0.14em; cursor: pointer;
}
.g-wd[data-v-f22a78b5]:disabled { background: #2e3d2a; color: #87927f; cursor: default;
}
.g-st[data-v-f22a78b5] { color: #58614f; font-size: 11px; letter-spacing: 0.14em;
}
.g-result[data-v-f22a78b5] { color: #00c805; font-size: 11px; line-height: 1.6; margin-top: 12px; letter-spacing: 0.05em;
}

.g-toast[data-v-bce1773e] {
  position: fixed; bottom: 76px; left: 50%; transform: translateX(-50%);
  background: rgba(13, 18, 12, 0.94); border: 1px solid #2e3d2a;
  box-shadow: inset 0 1px 0 rgba(232, 228, 216, 0.06);
  padding: 8px 18px; text-align: center; z-index: 90;
  /* !important beats the engine's inline pointer-events:auto on GUI roots —
     without it every toast becomes a transient click shield */
  font-family: 'Courier New', monospace; color: #e8e4d8; pointer-events: none !important;
}
.g-toast[data-kind='coins'][data-v-bce1773e] { border-color: #c9a24b;
}
.g-toast[data-kind='pickup'][data-v-bce1773e] { border-color: #00c805;
}
.g-toast[data-kind='region'][data-v-bce1773e] { border-color: #c9a24b; bottom: auto; top: 18%; padding: 12px 28px;
}
.g-toast[data-kind='region'] .g-toast-title[data-v-bce1773e] { color: #c9a24b; font-size: 18px; letter-spacing: 0.3em;
}
.g-toast[data-kind='region'] .g-toast-line[data-v-bce1773e] { color: #87927f; font-size: 12px; letter-spacing: 0.12em;
}
.g-toast-title[data-v-bce1773e] { font-size: 12px; letter-spacing: 0.22em; color: #87927f; text-transform: uppercase;
}
.g-toast[data-kind='coins'] .g-toast-title[data-v-bce1773e] { color: #c9a24b;
}
.g-toast[data-kind='pickup'] .g-toast-title[data-v-bce1773e] { color: #00c805;
}
.g-toast-line[data-v-bce1773e] { font-size: 14px; margin-top: 3px;
}
.toast-enter-active[data-v-bce1773e] { animation: rise-bce1773e 180ms steps(4, end);
}
.toast-leave-active[data-v-bce1773e] { transition: opacity 300ms;
}
.toast-leave-to[data-v-bce1773e] { opacity: 0;
}
@keyframes rise-bce1773e {
from { transform: translate(-50%, 8px); opacity: 0;
}
to { transform: translate(-50%, 0); opacity: 1;
}
}

.g-modal[data-v-4c5017aa] { position: fixed; inset: 0; background: rgba(10, 12, 11, 0.72); display: flex; align-items: center; justify-content: center; z-index: 100; font-family: 'Courier New', monospace; pointer-events: auto !important;
}
.g-sheet[data-v-4c5017aa] { width: min(420px, 92vw); background: #10160f; border: 1px solid #2e3d2a; box-shadow: 0 0 0 4px rgba(0, 0, 0, 0.4); color: #e8e4d8;
}
.g-head[data-v-4c5017aa] { display: flex; align-items: center; gap: 10px; padding: 12px 16px; border-bottom: 1px solid #22301f;
}
.g-title[data-v-4c5017aa] { letter-spacing: 0.3em; font-size: 15px;
}
.g-mock[data-v-4c5017aa] { color: #ce8f2c; border: 1px solid #ce8f2c; font-size: 10px; padding: 2px 5px; letter-spacing: 0.14em;
}
.g-x[data-v-4c5017aa] { margin-left: auto; background: none; border: 1px solid #2e3d2a; color: #87927f; cursor: pointer; padding: 2px 8px; font-family: inherit;
}
.g-x[data-v-4c5017aa]:hover { border-color: #d33a2c; color: #d33a2c;
}
.g-body[data-v-4c5017aa] { padding: 14px 16px;
}
.g-status[data-v-4c5017aa] { color: #87927f; font-size: 12px; letter-spacing: 0.08em; line-height: 1.6; margin-bottom: 10px;
}
.g-why[data-v-4c5017aa] { color: #58614f; font-size: 11px; line-height: 1.7; margin: 0 0 12px;
}
.g-connect[data-v-4c5017aa] { width: 100%; padding: 12px; background: #00c805; color: #06210a; border: 0; font-family: inherit; font-size: 13px; font-weight: bold; letter-spacing: 0.18em; cursor: pointer;
}
.g-connect[data-v-4c5017aa]:disabled { background: #2e3d2a; color: #87927f; cursor: default;
}
.g-linked[data-v-4c5017aa] { display: flex; align-items: center; gap: 10px; padding: 12px; border: 1px solid #00c805; margin-bottom: 10px;
}
.g-dot[data-v-4c5017aa] { width: 8px; height: 8px; background: #00c805; display: inline-block;
}
.g-addr[data-v-4c5017aa] { color: #e8e4d8; font-size: 13px; letter-spacing: 0.06em;
}
.g-ok[data-v-4c5017aa] { color: #00c805; font-size: 10px; letter-spacing: 0.2em; margin-left: auto;
}
.g-warn[data-v-4c5017aa] { color: #c8a33a; font-size: 11px; line-height: 1.6; margin-top: 10px; letter-spacing: 0.06em;
}
.g-err[data-v-4c5017aa] { color: #d33a2c; font-size: 11px; line-height: 1.6; margin-top: 10px; letter-spacing: 0.06em;
}
.g-stat[data-v-4c5017aa] { display: flex; justify-content: space-between; padding: 7px 0; border-top: 1px solid #22301f; border-bottom: 1px solid #22301f; font-size: 13px; color: #87927f;
}
.g-stat b[data-v-4c5017aa] { color: #c9a24b; font-weight: normal;
}
.g-sect[data-v-4c5017aa] { color: #58614f; font-size: 11px; letter-spacing: 0.24em; margin: 12px 0 6px;
}
.g-empty[data-v-4c5017aa] { color: #58614f; font-size: 12px;
}
.g-nft[data-v-4c5017aa] { display: flex; justify-content: space-between; font-size: 13px; padding: 5px 0; border-bottom: 1px dotted #1a2418; text-transform: capitalize;
}
.g-tid[data-v-4c5017aa] { color: #ce8f2c;
}
.g-note[data-v-4c5017aa] { color: #58614f; font-size: 11px; line-height: 1.6; margin-top: 12px;
}

/* Root spans the screen ON PURPOSE: while a dialogue is open, any click is a
   dialogue interaction (complete typing / advance). The engine force-sets
   inline pointer-events:auto on GUI roots, which is what we want here. */
.gdlg[data-v-742ea84d] {
  position: fixed;
  inset: 0;
  z-index: 101;
  font-family: 'Courier New', monospace;
}
.gdlg-win[data-v-742ea84d] {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  width: min(520px, 86vw);
  background: rgba(13, 18, 12, 0.96);
  border: 1px solid #c9a24b;
  box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.45), inset 0 1px 0 rgba(232, 228, 216, 0.07);
  padding: 14px 18px;
  animation: gdlg-in-742ea84d 160ms steps(4, end);
}
.gdlg-win[data-pos='bottom'][data-v-742ea84d] { top: 30%;
}
.gdlg-win[data-pos='middle'][data-v-742ea84d] { top: 40%;
}
.gdlg-win[data-pos='top'][data-v-742ea84d] { top: 12%;
}
.gdlg-text[data-v-742ea84d] {
  margin: 0;
  font-size: 16px;
  line-height: 1.55;
  color: #e8e4d8;
  white-space: pre-wrap;
  min-height: 1.55em;
}
.gdlg-more[data-v-742ea84d] {
  text-align: center;
  color: #c9a24b;
  font-size: 12px;
  margin-top: 6px;
  animation: gdlg-bob-742ea84d 900ms steps(2, end) infinite;
}
.gdlg-choices[data-v-742ea84d] { list-style: none; margin: 10px 0 0; padding: 6px 0 0; border-top: 1px solid #22301f;
}
.gdlg-choice[data-v-742ea84d] {
  padding: 6px 8px;
  font-size: 15px;
  color: #b9b4a6;
  cursor: pointer;
  letter-spacing: 0.04em;
}
.gdlg-choice.active[data-v-742ea84d] { color: #c9a24b; background: #0a0c0b;
}
.gdlg-cursor[data-v-742ea84d] { display: inline-block; width: 14px; color: #c9a24b;
}
@keyframes gdlg-in-742ea84d {
from { transform: translateX(-50%) translateY(8px); opacity: 0.2;
}
to { transform: translateX(-50%) translateY(0); opacity: 1;
}
}
@keyframes gdlg-bob-742ea84d {
from { transform: translateY(0);
}
to { transform: translateY(3px);
}
}
@media (prefers-reduced-motion: reduce) {
.gdlg-win[data-v-742ea84d], .gdlg-more[data-v-742ea84d] { animation: none;
}
}
