*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden}body{font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:#101713;color:#eee6cf}button,input,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}.svg-defs{position:absolute;width:0;height:0;overflow:hidden}svg{width:1.2em;height:1.2em;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.topbar{height:68px;display:flex;align-items:center;gap:18px;padding:8px 16px;background:#172b26;border-bottom:1px solid #42574c;position:relative;z-index:20}.brand{display:flex;align-items:center;gap:9px;color:#f1e8cc;text-decoration:none}.brand-mark{width:38px;height:38px;border:1px solid #8b7c54;border-radius:10px;display:grid;place-items:center;background:#243a32}.brand small,.brand strong{display:block}.brand small{font-size:9px;letter-spacing:1.8px;color:#aeb9aa}.brand strong{font-size:18px;letter-spacing:1px}.topbar nav{display:flex;gap:5px}.nav-button,.icon-button{border:1px solid transparent;background:transparent;color:#d8dece;border-radius:9px;padding:8px 10px}.nav-button{display:flex;align-items:center;gap:6px}.nav-button:hover,.icon-button:hover{background:#263c33;border-color:#53685b}.header-end{margin-left:auto;display:flex;align-items:center;gap:10px}.save-indicator{display:flex;align-items:center;gap:6px;font-size:12px;color:#aab8aa}.save-indicator i,.statusbar i{width:7px;height:7px;background:#8ab16f;border-radius:50%;display:inline-block}.stage{position:relative;width:100%;height:calc(100vh - 102px);background:#0c1511;overflow:hidden}#world{position:absolute;inset:0;width:100%;height:100%;display:block;background:#1b2c24;touch-action:none}.world-ui{position:absolute;inset:0;pointer-events:none}.world-ui button{pointer-events:auto}.hero-hud{position:absolute;left:14px;top:14px;display:flex;align-items:center;gap:9px;background:#14221cdd;border:1px solid #4b6254;border-radius:13px;padding:7px 10px;box-shadow:0 5px 20px #0005}.hero-portrait{position:relative;width:55px;height:55px;padding:0;background:#253b31;border:1px solid #697b68;border-radius:10px;color:#fff}.hero-portrait canvas{width:48px;height:54px}.hero-portrait>b{position:absolute;right:-7px;bottom:-6px;min-width:24px;height:24px;display:grid;place-items:center;border-radius:50%;background:#8b7042;border:2px solid #18241e;font-size:11px}.hero-vitals{width:190px}.hero-name-row{display:flex;justify-content:space-between;gap:8px;font-size:12px;margin-bottom:5px}.hero-name-row span{color:#b4bfaf}.meter{height:14px;position:relative;background:#0d1511;border:1px solid #45594d;border-radius:8px;overflow:hidden;margin:3px 0}.meter i{display:block;height:100%;width:100%;transition:width .2s}.meter span{position:absolute;inset:0;display:grid;place-items:center;font-size:9px;text-shadow:0 1px 2px #000}.health i{background:#8c3e3a}.mana i{background:#3e668c}.xp-row{display:flex;align-items:center;gap:6px;font-size:9px;color:#b8c1b5}.xp-meter{height:5px;flex:1;background:#0c1310;border-radius:5px;overflow:hidden}.xp-meter i{display:block;height:100%;background:#b99b55}.region-hud{position:absolute;top:16px;left:50%;transform:translateX(-50%);background:#14221cdd;color:#eee6cf;border:1px solid #4b6254;border-radius:10px;padding:7px 18px;text-align:center}.eyebrow{display:block;font-size:9px;letter-spacing:1.4px;color:#b5a979}.region-hud strong{display:block;font-size:13px}.minimap-frame{position:absolute;right:14px;top:14px;width:178px;background:#14221cdd;border:1px solid #4b6254;border-radius:10px;padding:4px;color:#d9ddcf}.minimap-frame canvas{width:168px;height:110px;display:block}.minimap-frame>span{font-size:9px;display:flex;align-items:center;justify-content:center;gap:4px;padding:3px}.quest-tracker{position:absolute;right:14px;top:158px;display:flex;gap:8px;align-items:center;max-width:245px;text-align:left;background:#14221cdd;border:1px solid #4b6254;border-radius:10px;padding:8px;color:#eee6cf}.quest-mark{width:27px;height:27px;border-radius:50%;background:#8b7042;display:grid;place-items:center;font-weight:800}.quest-tracker small,.quest-tracker strong,.quest-tracker em{display:block}.quest-tracker small{font-size:8px;color:#b5a979}.quest-tracker strong{font-size:11px}.quest-tracker em{font-size:9px;color:#abb8aa;font-style:normal}.target-hud{position:absolute;top:80px;left:50%;transform:translateX(-50%);min-width:190px;text-align:center;background:#261b1bdd;border:1px solid #79504b;border-radius:9px;padding:6px}.target-hud span,.target-hud small{display:block}.target-hud small{color:#d2a09a}.interact-button{position:absolute;left:50%;bottom:118px;transform:translateX(-50%);border:1px solid #b89a59;background:#3c4932;color:#fff3cf;border-radius:20px;padding:10px 18px}.travel-hint{position:absolute;left:50%;bottom:80px;transform:translateX(-50%);background:#14221cbb;border:1px solid #4b6254;border-radius:9px;padding:7px 14px;text-align:center}.travel-hint span,.travel-hint small{display:block}.travel-hint small{color:#a9b4a8;font-size:10px}.controls{position:absolute;bottom:18px;pointer-events:auto}.movement{left:18px;width:154px;height:154px}.direction,.pad-center{position:absolute;width:50px;height:50px;border-radius:15px}.direction{background:#263b32cc;border:1px solid #657668;color:#eee}.direction.up{left:52px;top:0}.direction.down{left:52px;bottom:0;transform:rotate(180deg)}.direction.left{left:0;top:52px;transform:rotate(-90deg)}.direction.right{right:0;top:52px;transform:rotate(90deg)}.pad-center{left:52px;top:52px;display:grid;place-items:center;background:#18271fbb;border:1px solid #42564a;color:#897b53}.actions{right:18px;display:flex;align-items:end;gap:10px}.action-button{position:relative;width:72px;height:72px;border-radius:50%;border:2px solid #687868;background:#24372fdd;color:#f0ead7;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden}.action-button.attack{width:88px;height:88px;background:#51362fdd;border-color:#9b6756}.action-button svg{font-size:24px}.action-button span{font-size:10px}.action-button small{font-size:8px}.action-button>b{position:absolute;right:5px;top:4px;background:#7c3e37;border-radius:8px;padding:1px 5px}.cooldown{position:absolute;left:0;right:0;bottom:0;background:#0008;pointer-events:none}.gold-hud{position:absolute;right:18px;bottom:118px;background:#14221cdd;border:1px solid #4b6254;border-radius:18px;padding:6px 11px;display:flex;align-items:center;gap:5px;font-size:12px}.gold-hud small{font-size:8px;color:#b5a979}.coin{width:12px;height:12px;border-radius:50%;background:#c4a04e;border:2px solid #80662e}.statusbar{height:34px;display:flex;align-items:center;justify-content:space-between;padding:0 14px;background:#111c17;border-top:1px solid #34483d;color:#9fab9f;font-size:11px}.statusbar>span{display:flex;align-items:center;gap:6px}.statusbar button{background:none;border:0;color:#c9d0c4}.keyboard-hint{opacity:.7}.welcome-dialog,.panel-dialog{border:1px solid #526458;background:#101713;color:#eee6cf;box-shadow:0 20px 70px #000b}.welcome-dialog::backdrop,.panel-dialog::backdrop{background:#07100cdd}.welcome-dialog{padding:0;width:min(900px,94vw);max-height:92vh;border-radius:15px;overflow:auto}.welcome-dialog[open]{display:grid;grid-template-columns:300px 1fr}.welcome-scene{position:relative;background:#172b26;min-height:490px}.welcome-scene canvas{display:block;width:100%;height:100%}.scene-caption{position:absolute;left:18px;right:18px;bottom:18px;background:#0b120dcc;padding:13px;border:1px solid #536456;border-radius:9px}.scene-caption p{font-size:18px}.welcome-content{padding:30px}.welcome-content h1{font-size:38px;line-height:1.05;margin:10px 0 14px}.intro-copy{color:#b9c2b7;max-width:500px}.primary-button,.secondary-button,.text-button{border-radius:8px;padding:10px 13px}.primary-button{background:#596d45;color:#fff;border:1px solid #83966a}.secondary-button{background:#263a31;color:#e7e9df;border:1px solid #596c5e}.text-button{background:transparent;border:0;color:#cfc7a6}.full{width:100%}.divider{display:flex;align-items:center;gap:8px;margin:14px 0;color:#8f9c91;font-size:11px}.divider:before,.divider:after{content:"";height:1px;flex:1;background:#35463d}.class-options{border:1px solid #46584d;border-radius:10px;padding:10px;display:grid;grid-template-columns:1fr 1fr;gap:9px}.class-options legend{padding:0 7px;color:#b9c1b5}.class-card{position:relative;display:grid;grid-template-columns:60px 1fr;align-items:center;padding:8px;border:1px solid #45594c;border-radius:9px;background:#17251f}.class-card input{position:absolute;left:7px;top:7px}.class-card canvas{grid-row:1/3;width:55px;height:60px}.class-card strong,.class-card span{grid-column:2}.class-card span{font-size:11px;color:#aeb8ad}.class-card i{position:absolute;right:7px;top:7px}.field-label{display:block;margin:13px 0 5px}.welcome-content input[type=text],#player-name{width:100%;padding:10px;background:#17231e;color:#fff;border:1px solid #526359;border-radius:7px}.warning{color:#d9a27e}.welcome-footnote{display:flex;align-items:center;gap:5px;color:#9eaa9e;font-size:10px}.panel-dialog{width:min(720px,94vw);max-height:90vh;padding:0;border-radius:14px}.panel-header,.panel-footer{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#17271f}.panel-header{border-bottom:1px solid #425348}.panel-footer{border-top:1px solid #425348;color:#98a69b;font-size:10px}.panel-header h2{margin:2px 0 0}.panel-body{padding:16px;max-height:68vh;overflow:auto}.panel-intro,.muted{color:#aeb8ad}.small{font-size:11px}.stat-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin:10px 0}.stat-cell{background:#17261f;border:1px solid #405247;border-radius:8px;padding:8px;text-align:center}.stat-cell small,.stat-cell b{display:block}.stat-cell small{color:#9fab9e;font-size:9px}.item-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:9px}.item-card,.subsection,.project-note{background:#17251f;border:1px solid #405247;border-radius:9px;padding:11px}.button-row{display:flex;flex-wrap:wrap;gap:7px}.help-list{padding-left:20px}.help-list li{margin:7px 0}.pause-tag{position:absolute;left:50%;top:12px;transform:translateX(-50%);background:#111b16dd;border:1px solid #5d6d61;border-radius:8px;padding:6px 11px;color:#d7ddcf;font-size:10px}.no-script{position:fixed;inset:0;background:#111;color:#fff;display:grid;place-items:center;z-index:999}.bag-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.bag-head>div{display:flex;flex-direction:column;gap:3px}.bag-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:8px;max-height:58vh;overflow:auto;padding:4px}.bag-slot{position:relative;min-height:76px;border:1px solid #68735f;background:#26332c;color:#eee3c7;border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:5px;overflow:hidden}.bag-slot.empty{opacity:.38}.bag-slot>b{font-size:25px}.bag-slot>small{font-size:9px;line-height:1.05;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bag-slot>em{position:absolute;right:5px;bottom:4px;font-style:normal;font-weight:800;background:#101713dd;padding:1px 4px;border-radius:5px}.bag-slot>i{position:absolute;left:5px;top:4px;color:#cfe78f}.bag-slot.locked{opacity:.55;filter:saturate(.45)}
@media(max-width:760px){.topbar{height:58px;padding:6px 9px}.brand strong{font-size:14px}.brand small,.save-indicator,.nav-button span{display:none}.stage{height:calc(100vh - 88px)}.hero-hud{left:7px;top:7px;transform:scale(.86);transform-origin:top left}.region-hud{top:7px;padding:5px 9px}.minimap-frame{right:6px;top:6px;width:125px}.minimap-frame canvas{width:115px;height:76px}.quest-tracker{right:6px;top:112px;max-width:180px}.travel-hint{display:none}.movement{left:8px;bottom:8px;transform:scale(.86);transform-origin:bottom left}.actions{right:8px;bottom:8px;gap:5px;transform:scale(.86);transform-origin:bottom right}.gold-hud{right:8px;bottom:92px}.keyboard-hint{display:none}.welcome-dialog[open]{display:block}.welcome-scene{display:none}.welcome-content{padding:20px}.welcome-content h1{font-size:30px}.class-options{grid-template-columns:1fr}.panel-dialog{width:96vw}.stat-strip{grid-template-columns:repeat(2,1fr)}.bag-grid{grid-template-columns:repeat(4,1fr)}.bag-slot{min-height:68px}}
@media(max-height:620px){.hero-hud{transform:scale(.72)}.movement,.actions{transform:scale(.72)}.quest-tracker{display:none}.gold-hud{bottom:75px}.statusbar{height:28px}.stage{height:calc(100vh - 86px)}}
/* Eldara UI refinada + inventário visual */
.topbar{background:linear-gradient(180deg,#203a31,#13241f);box-shadow:0 3px 18px #0008}
.nav-button{min-width:82px;justify-content:center;border-color:#40584b;background:linear-gradient(180deg,#294239,#1b3028);box-shadow:inset 0 1px #ffffff10,0 2px 7px #0003}
.nav-button:active{transform:translateY(1px)}
#shop-nav{border-color:#79663f;background:linear-gradient(180deg,#4a4028,#2b291e);color:#f4dfa1}
.panel-dialog{background:linear-gradient(180deg,#17261f,#0e1713);border-color:#71806f;box-shadow:0 20px 80px #000d}
.panel-header{background:linear-gradient(180deg,#263c32,#17271f)}
.panel-body{background:radial-gradient(circle at 50% 0,#1d3027,#111b16 65%)}
.item-card,.subsection,.project-note{background:linear-gradient(145deg,#20332a,#14221c);border-color:#506658;box-shadow:inset 0 1px #ffffff0a,0 4px 12px #0003}
.primary-button{background:linear-gradient(180deg,#758b55,#4e633c);box-shadow:inset 0 1px #ffffff24,0 3px 8px #0004}
.secondary-button{background:linear-gradient(180deg,#334c40,#22352d)}
.bag-head{padding:10px 12px;background:linear-gradient(90deg,#263c32,#182820);border:1px solid #506457;border-radius:10px}
.bag-head b{text-transform:capitalize;font-size:17px}.bag-head small{color:#aebaad}
.bag-grid{grid-template-columns:repeat(auto-fill,minmax(76px,1fr));gap:7px;padding:7px;background:#0b120f99;border:1px solid #36493e;border-radius:11px}
.bag-slot{aspect-ratio:1/1;min-height:74px;background:linear-gradient(145deg,#2b3d34,#17251f);border:1px solid #5c6e61;box-shadow:inset 0 0 0 2px #0d171255,inset 0 1px #ffffff12,0 2px 5px #0004}
.bag-slot.empty{background:linear-gradient(145deg,#1b2923,#111b17);border-style:dashed;opacity:.48}
.bag-slot.weapon{border-color:#8a7b54;background:radial-gradient(circle at 50% 35%,#394a39,#18251f 68%)}
.bag-slot.locked:after{content:"🔒";position:absolute;top:4px;right:5px;font-size:11px}
.bag-slot>b{height:34px;display:grid;place-items:center}.bag-slot>small{font-size:9px;color:#ddd9c9}.bag-slot>em{background:#0a100dcc;border:1px solid #536558;font-size:11px}
.item-sprite{display:inline-grid;place-items:center;width:31px;height:31px;filter:drop-shadow(0 3px 3px #0008)}
.sword-sprite{position:relative;transform:rotate(-42deg)}
.sword-sprite:before{content:"";width:6px;height:28px;border-radius:5px 5px 2px 2px;background:linear-gradient(90deg,#fff9,var(--item-color),#6d6d68);box-shadow:0 0 9px var(--item-color)}
.sword-sprite:after{content:"";position:absolute;width:19px;height:5px;bottom:2px;background:#8a6a3e;border:1px solid #d4b77b;border-radius:3px}
.staff-sprite{font-size:30px;color:var(--item-color);text-shadow:0 0 9px var(--item-color)}
.potion-sprite{border-radius:45% 45% 50% 50%;width:23px;height:27px;background:linear-gradient(#7d2828,#ed5b4d);color:#ffd9cc;border:2px solid #c9b38a;box-shadow:0 0 7px #e84c43}
.material-sprite{font-size:25px;color:#d4bd82}
.item-card h3{color:#f0e4be}
.stat-strip{gap:9px}.stat-cell{background:linear-gradient(180deg,#253a31,#16251f);border-color:#506357}
@media(max-width:760px){.topbar nav{gap:3px}.nav-button{min-width:48px;padding:7px}.bag-grid{grid-template-columns:repeat(4,1fr)}}

/* Eldara v4 — menus em cartões quadrados */
.panel-body .item-grid,.shop-option-grid,.button-row{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(145px,1fr));
  gap:10px;
  align-items:stretch;
}
.panel-body .button-row .secondary-button,
.shop-tile{
  min-height:104px;
  width:100%;
  border:1px solid #566b5c;
  border-radius:12px;
  background:linear-gradient(145deg,#294137,#17271f);
  color:#eee6cf;
  box-shadow:inset 0 1px #ffffff12,0 4px 10px #0004;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:5px;
  padding:10px;
  text-align:center;
}
.shop-tile b{font-size:17px}.shop-tile span{color:#d7c58f}.shop-tile small{color:#aab5aa}
.shop-tile:active,.panel-body .button-row .secondary-button:active{transform:translateY(1px)}
.npc-tile{border-color:#857144;background:radial-gradient(circle at 50% 20%,#514729,#22291f 70%)}
.npc-shop-head{display:grid;grid-template-columns:72px 1fr;gap:12px;align-items:center;margin-bottom:14px;padding:12px;background:#17271f;border:1px solid #4c6254;border-radius:12px}
.npc-avatar{width:64px;height:64px;border-radius:14px;display:grid;place-items:center;font-size:34px;background:radial-gradient(circle,#4c6b7d,#1c302b);border:1px solid #77909a;box-shadow:0 0 18px #64c9e333}
.npc-shop-head h3,.npc-shop-head p{margin:3px 0}.exchange-rate{display:flex;align-items:center;justify-content:space-between;padding:12px;margin-bottom:12px;border:1px solid #78683f;background:#29271b;border-radius:10px}.exchange-rate strong{color:#e9d58d}

/* Slots quadrados + informações de armas */
.bag-grid{grid-template-columns:repeat(auto-fill,minmax(112px,1fr));align-items:stretch}
.bag-slot{aspect-ratio:auto;min-height:142px;padding:8px}
.bag-slot.empty{aspect-ratio:1/1;min-height:96px}
.bag-slot.weapon{justify-content:flex-start;padding-top:9px}
.bag-slot.weapon>b{height:38px}
.item-name{font-weight:700;color:#f2ead0!important;white-space:normal!important;line-height:1.1;text-align:center}
.weapon-info{width:100%;display:flex;flex-direction:column;gap:3px;margin-top:3px;padding-top:5px;border-top:1px solid #ffffff12}
.weapon-info>b{font-size:11px;color:#eee0b7}.weapon-info>small{font-size:8px;color:#aebaae;white-space:normal;line-height:1.15}
.rarity{display:inline-block;align-self:center;font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;border:1px solid currentColor;border-radius:5px;padding:2px 5px}
.rarity.common{color:#c9cec7}.rarity.uncommon{color:#7bd67d}.rarity.rare{color:#65aef2}.rarity.epic{color:#bd83ff}.rarity.legendary{color:#f2ae55}.rarity.mythic{color:#ff728e;text-shadow:0 0 8px #ff5577}
@media(max-width:760px){
 .panel-body .item-grid,.shop-option-grid,.button-row{grid-template-columns:repeat(2,minmax(0,1fr))}
 .bag-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
 .bag-slot{min-height:135px}
 .bag-slot.empty{min-height:90px}
}

/* Borin — mercador de armas */
.borin-head .npc-avatar{background:radial-gradient(circle,#7b6245,#2d251c);border-color:#9a7c52}
.borin-tile{border-color:#8d7048!important;background:radial-gradient(circle at 50% 20%,#59452d,#24281f 72%)!important}
.merchant-tabs{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:10px 12px;margin:10px 0 14px;background:#202c24;border:1px solid #526357;border-radius:10px}
.merchant-tabs span{color:#d7c48b;font-size:11px}
.merchant-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.merchant-card{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;gap:5px;min-height:245px;padding:12px;border:1px solid #526357;border-radius:12px;background:linear-gradient(145deg,#26382f,#14221c);box-shadow:inset 0 1px #ffffff10,0 4px 12px #0004}
.merchant-card.rare{border-color:#5186b7}.merchant-card.epic{border-color:#8c5fc1}.merchant-card.legendary{border-color:#bd7b36;box-shadow:inset 0 1px #ffffff10,0 0 14px #c8813530}
.merchant-weapon{height:46px;display:grid;place-items:center}.merchant-weapon .item-sprite{transform:scale(1.25) rotate(-42deg)}.merchant-weapon .staff-sprite{transform:scale(1.25)}
.merchant-card h3{margin:2px 0;font-size:14px;color:#eee2c2}.merchant-stats{display:flex;flex-direction:column;gap:2px}.merchant-stats small{font-size:9px;color:#aebaae}.price{margin-top:auto;color:#e1c36f}.sell-price{margin-top:auto;color:#8fd08c}
.merchant-card .primary-button,.merchant-card .secondary-button{width:100%}.sell-title{margin-top:20px}
.sell-card{min-height:205px}
@media(max-width:600px){.merchant-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.merchant-card{min-height:235px;padding:9px}.merchant-tabs{flex-direction:column;align-items:flex-start}}

/* Mercado de Aurora */
.market-sign{font-weight:900;letter-spacing:2px;color:#ead29a}
.borin-head .npc-avatar{background:radial-gradient(circle,#7b6245,#2d251c);border-color:#9a7c52}
.borin-tile{border-color:#8d7048!important;background:radial-gradient(circle at 50% 20%,#59452d,#24281f 72%)!important}

/* v7: Borin não é atalho de loja; negociação acontece ao conversar com o NPC */
.shop-option-grid .borin-tile{display:none!important}
/* Fachada e interior do Mercado usam peças próprias no mapa/editor */

/* Borin Armeiro + serviços do Mercado */
.borin-services{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:12px 0 16px}
.borin-services>div{min-height:78px;padding:9px;border:1px solid #536558;border-radius:10px;background:linear-gradient(145deg,#283a31,#17251f);display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center}
.borin-services b{color:#ead9aa;font-size:11px}.borin-services small{margin-top:4px;color:#aeb8ae;font-size:8px;line-height:1.25}
@media(max-width:600px){.borin-services{grid-template-columns:repeat(3,1fr);gap:5px}.borin-services>div{padding:6px}}

/* v9 — contratos, bestiário, elites, dano e drops */
.feature-head{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;margin-bottom:12px;border:1px solid #566b5c;border-radius:10px;background:#1b2d25}.feature-head b{color:#ead9aa}
.contract-grid,.bestiary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.contract-card,.bestiary-card{padding:11px;border:1px solid #526357;border-radius:11px;background:linear-gradient(145deg,#26382f,#14221c);display:flex;flex-direction:column;gap:6px}
.contract-card h3,.bestiary-card h3{margin:0;color:#eee2c2}.contract-card p{font-size:10px;margin:0;color:#b9c2b9}.contract-card small,.bestiary-card small{font-size:9px;color:#aeb8ae}
.contract-progress{height:7px;border-radius:8px;background:#0b120f;overflow:hidden}.contract-progress i{display:block;height:100%;background:#80965c;border-radius:8px}
.bestiary-card{text-align:center;align-items:center}.bestiary-icon{font-size:30px}
.floating-damage{position:fixed;z-index:99999;pointer-events:none;font-weight:900;font-size:18px;color:#f2eee2;text-shadow:0 2px 3px #000;animation:eldaraDamage .85s ease-out forwards}.floating-damage.critical{font-size:23px;color:#f0c15d}
@keyframes eldaraDamage{0%{transform:translate(-50%,0) scale(.8);opacity:0}20%{opacity:1;transform:translate(-50%,-8px) scale(1.15)}100%{opacity:0;transform:translate(-50%,-55px) scale(.95)}}
@media(max-width:600px){.contract-grid,.bestiary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.feature-head{flex-direction:column;align-items:flex-start;gap:3px}}

/* v11 — box diária, upgrades, armaduras e exploração */
.daily-box{display:grid;grid-template-columns:50px 1fr auto;gap:10px;align-items:center;padding:12px;margin-bottom:12px;border:1px solid #665b42;border-radius:12px;background:linear-gradient(135deg,#2b2a20,#18241e)}.daily-box>div{font-size:34px}.daily-box section{display:flex;flex-direction:column;gap:3px}.daily-box section b{color:#e7d18f}.daily-box section small{font-size:9px;color:#aeb8ae}.daily-box.ready{border-color:#d3a94e;box-shadow:0 0 16px #d3a94e28}
.equipment-row{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px}.equip-box{min-height:72px;padding:8px;border:1px solid #526357;border-radius:10px;background:#192920;display:flex;flex-direction:column;align-items:center;justify-content:center}.equip-box small{color:#9eaa9f}.equip-box b{font-size:9px;color:#e7dcc0;text-align:center}
.upgrade-list{padding:10px;margin-bottom:12px;border:1px solid #526357;border-radius:11px;background:#17261f}.upgrade-list h3{margin:0 0 8px}.upgrade-item{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px;border-top:1px solid #ffffff10}.upgrade-item span{display:flex;align-items:center;gap:7px}.upgrade-item small{color:#aeb8ae}
.skill-button{border-color:#9273ba!important;box-shadow:0 0 12px #9b70d633!important}
@media(max-width:600px){.daily-box{grid-template-columns:42px 1fr}.daily-box button{grid-column:1/-1}.equipment-row{grid-template-columns:1fr 1fr}}

/* v12 RPG Expansion */
.rpg-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:10px 0}.rpg-card{display:flex;flex-direction:column;gap:5px;padding:11px;border:1px solid #536557;border-radius:11px;background:#182820;color:#e7dfc5;text-align:left}.rpg-card.unlocked{border-color:#8c7b48}.rpg-card.locked{opacity:.62}.rpg-card span,.rpg-card small{font-size:9px;color:#aeb8ae}.action-card{width:100%;cursor:pointer}.talent-head,.material-strip,.world-boss{padding:10px;border:1px solid #665b42;border-radius:10px;background:#20271f;margin:8px 0}.world-boss{display:flex;flex-direction:column;gap:4px}.enchant-list{display:flex;flex-direction:column;gap:6px}.enchant-list button{min-width:34px;padding:7px}.bestiary-card small{display:block;margin-top:4px}@media(max-width:560px){.rpg-grid{grid-template-columns:1fr}}

/* Currency lives in the header, outside the canvas and combat controls. */
.topbar .gold-hud{position:static;inset:auto;flex:0 0 auto;margin:0;max-width:145px;padding:5px 8px;font-size:12px;white-space:nowrap;pointer-events:none}
.topbar .gold-hud b{font-variant-numeric:tabular-nums}
@media(max-width:760px){.topbar{gap:6px}.topbar nav{gap:0}.topbar .nav-button{padding:7px}.header-end{gap:3px}.topbar .gold-hud{font-size:11px;max-width:120px}.topbar .gold-hud small{display:none}.brand{gap:5px}}
@media(max-width:390px){.brand strong{font-size:12px}.brand-mark{width:28px;height:28px}.topbar .nav-button{padding:5px}.topbar .gold-hud{padding:5px;font-size:10px}.topbar .icon-button{padding:5px}}

/* Compact header and character navigation. */
.topbar{gap:10px;max-width:100%;min-width:0}.topbar nav{min-width:0;flex:0 0 auto}.topbar .nav-button{min-width:0}.header-end{min-width:0;flex:0 1 auto}.save-indicator{max-width:180px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.topbar .gold-hud{max-width:none}.topbar #gold{font-variant-numeric:tabular-nums}.brand{flex:0 0 auto}.character-menu{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.character-option{padding:14px;text-align:left;background:#20372c;color:#eee6cf;border:1px solid #5e715d;border-radius:10px;min-width:0}.character-option b,.character-option small{display:block}.character-option small{font-size:11px;color:#aebdad;margin-top:6px}.character-attributes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.character-attributes>div{display:flex;align-items:center;justify-content:space-between;gap:8px}.completion-badge{display:inline-block;color:#b6d69d;padding:7px 0}.quest-row,.contract-card{min-width:0}.hero-hud{max-width:calc(100% - 28px)}.hero-vitals{min-width:0}.hero-name-row strong{max-width:115px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:760px){.topbar{gap:6px}.topbar nav{gap:2px}.topbar .nav-button{width:32px;min-width:32px;padding:6px;justify-content:center}.topbar .nav-button svg{width:18px;height:18px}.header-end{gap:4px}.save-indicator{display:none}.topbar .gold-hud{padding:5px 6px;font-size:11px}.topbar .icon-button{padding:6px}.hero-hud{width:230px;transform:none;padding:5px;gap:6px}.hero-portrait{width:43px;height:48px;flex-shrink:0}.hero-portrait canvas{width:39px;height:44px}.hero-vitals{width:169px}.hero-name-row{font-size:10px}.hero-name-row strong{max-width:90px}.region-hud{top:76px;left:7px;transform:none;padding:4px 8px;max-width:230px}.region-hud strong{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.region-hud .eyebrow{font-size:8px}.minimap-frame{width:95px}.minimap-frame canvas{width:85px;height:58px}.minimap-frame>span{font-size:7px}.quest-tracker{display:none}.target-hud{top:117px;max-width:calc(100% - 20px);min-width:160px}}
@media(max-width:390px){.brand strong{font-size:11px}.brand-mark{width:26px;height:26px}.topbar{padding:6px;gap:4px}.topbar nav{gap:0}.topbar .nav-button{width:28px;min-width:28px;padding:4px}.topbar .gold-hud{font-size:10px;padding:5px 4px;gap:3px}.topbar .coin{width:10px;height:10px}.header-end{gap:2px}.hero-hud{width:212px}.hero-vitals{width:151px}.minimap-frame{width:86px}.minimap-frame canvas{width:76px;height:50px}.character-menu{gap:6px}.character-option{padding:10px}}
@media(max-height:620px){.hero-hud{transform:none}.target-hud{top:110px}}
@media(max-width:760px){.controls.actions{display:grid;grid-template-columns:56px 68px;gap:6px;align-items:center;transform:none;bottom:8px;right:8px}.actions .action-button{width:56px;height:56px}.actions .action-button.attack{width:68px;height:68px}.actions .action-button span,.actions .action-button small{font-size:9px}.actions .action-button svg{width:20px;height:20px}.actions #weapon-skill{grid-column:1;grid-row:1}.actions #potion-button{grid-column:2;grid-row:1}.actions #skill-button{grid-column:1;grid-row:2}.actions #attack-button{grid-column:2;grid-row:2}}
@media(max-width:760px) and (max-height:620px){.controls.actions{grid-template-columns:48px 56px;gap:4px}.actions .action-button{width:48px;height:48px}.actions .action-button.attack{width:56px;height:56px}}

.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.settings-grid label{font-size:12px;color:#d5dec8}.settings-grid input[type=range]{display:block;width:100%;accent-color:#c6b279;margin-top:8px}.item-comparison{white-space:normal!important;line-height:1.2}.item-comparison.better{color:#b8d895}.item-comparison.worse{color:#e5a891}.bag-slot{min-height:110px}.bag-slot .weapon-info{max-width:100%}@media(max-width:480px){.settings-grid{grid-template-columns:1fr}.bag-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}

#world{background:#13251f}.paperdoll{display:grid;grid-template-columns:minmax(120px,1fr) minmax(160px,1fr);gap:16px;align-items:center;background:#20372c;padding:14px;border:1px solid #48604c;border-radius:14px}.paperdoll canvas{width:100%;max-width:240px;image-rendering:pixelated}.worn-items{display:grid;gap:10px}.worn-items article{display:grid;gap:6px;padding:10px;border:1px solid #48604c;border-radius:8px}.worn-items small{color:#b4c5b1}.item-loot{border-left:5px solid var(--loot-color);max-width:min(440px,90vw);line-height:1.5;font-size:13px;white-space:normal}@media(max-width:450px){.paperdoll{grid-template-columns:1fr}.paperdoll canvas{margin:auto;width:170px}}

.character-roster{display:grid;gap:8px;margin:12px 0;max-height:220px;overflow:auto}.storage-columns{display:grid;grid-template-columns:1fr 1fr;gap:16px}.storage-card{display:grid;gap:7px;border:1px solid #48604c;border-radius:8px;padding:12px;margin-bottom:8px}.storage-card small{color:#b4c5b1;line-height:1.5}@media(max-width:600px){.storage-columns{grid-template-columns:1fr}}

.roster-option{display:flex!important;align-items:center;gap:12px}.roster-option canvas{width:60px;height:78px;image-rendering:pixelated;flex:none}.roster-option span{text-align:left}.filter-row{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0}.selected-filter{border-color:#dfc272!important;color:#f9dc91!important}.bag-item{position:relative;min-width:0}.bag-item .bag-slot{width:100%;height:100%;padding-top:30px}.favorite-button{position:relative;float:right;border:0;background:#263932;color:#f4cc70;padding:5px 9px;cursor:pointer;font-size:20px;z-index:2}.bag-item .favorite-button{position:absolute;right:3px;top:3px}.storage-card .item-comparison{display:block}.storage-card{overflow:hidden}

.loot-receipt{position:absolute;right:8px;bottom:145px;z-index:40;max-width:min(330px,calc(100% - 16px));padding:10px 12px;border:1px solid #d4b775;border-radius:10px;background:#10251af2;color:#f1e7ca;pointer-events:none;font-size:11px;box-shadow:0 4px 16px #0005}.loot-receipt b,.loot-receipt span{display:block}.loot-receipt b{color:#93d4a4;margin-bottom:4px}.quest-status{display:flex;flex-direction:column;gap:5px}.quest-status small{display:block}.worn-items{max-height:380px;overflow:auto}@media(max-width:760px){.quest-tracker{display:block!important;left:7px;right:auto;top:107px;max-width:230px;padding:5px 8px;pointer-events:none;font-size:10px}.quest-tracker h3{font-size:10px;margin:2px 0}.target-hud{top:152px}.loot-receipt{bottom:145px;max-width:calc(100% - 16px);font-size:10px}}@media(max-height:620px){.quest-tracker{display:block!important;top:88px;max-width:220px;left:7px;right:auto;font-size:9px}.loot-receipt{bottom:110px;max-width:270px}}
/* 1.3: painel pessoal, composição central e navegação consistente. */
.personal-panel{width:min(780px,96vw);border-color:#586358;background:#101b18}.personal-panel .panel-header{padding:18px 22px;background:linear-gradient(135deg,#22382f,#162720);border-bottom-color:#526452}.personal-panel .panel-header h2{font-size:22px;font-family:system-ui,sans-serif;letter-spacing:-.4px}.personal-panel .panel-body{padding:0 20px 20px;background:radial-gradient(ellipse at 50% 12%,#27423588,transparent 50%),#101b18}.character-tabs{position:sticky;top:0;z-index:3;display:flex;gap:4px;padding:12px 0;background:#101b1af5;border-bottom:1px solid #33473c;margin-bottom:20px;overflow:auto;scrollbar-width:thin}.character-tabs button{flex:1 0 auto;padding:10px 12px;border:1px solid transparent;border-radius:9px;background:transparent;color:#aab9ae;font:600 12px system-ui,sans-serif;min-height:40px}.character-tabs button.selected{background:#304237;border-color:#6c805c;color:#ead7a0}.character-tabs button:focus-visible,.orbit-slot:focus-visible,.character-option:focus-visible{outline:2px solid #dec991;outline-offset:3px}.character-workspace{font-family:system-ui,sans-serif;min-width:0}.character-profile{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 20px}.character-profile h2{font-size:30px;letter-spacing:-1px;margin:4px 0;overflow-wrap:anywhere}.profile-status{font-size:12px;color:#a3b3a7}.profile-level{display:grid;text-align:center;padding:10px 15px;border:1px solid #788064;background:#33433266;border-radius:12px}.profile-level small{color:#b9c3a7;font-size:9px;letter-spacing:1.5px}.profile-level b{font-size:28px;color:#ecd59a}.profile-vitals{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:18px}.profile-vitals span{display:flex;justify-content:space-between;font-size:11px;color:#aabcb0;gap:6px}.profile-vitals b{color:#dde7d9;font-size:11px;font-weight:500}.profile-meter{display:block;height:5px;overflow:hidden;background:#27342d;border-radius:10px;margin-top:7px}.profile-meter em{display:block;height:100%;border-radius:10px;background:linear-gradient(90deg,#904748,#d88d70)}.profile-meter.mana em{background:linear-gradient(90deg,#407c91,#84c3d5)}
.paperdoll.equipment-orbit{position:relative;display:grid;grid-template-columns:minmax(76px,1fr) minmax(110px,1.4fr) minmax(76px,1fr);grid-template-rows:repeat(3,minmax(98px,auto));gap:12px;padding:16px;border-radius:20px;border-color:#536453;background:radial-gradient(ellipse at center,#324f3a88,#192a2290 65%);isolation:isolate}.equipment-orbit:before{content:'';position:absolute;inset:18px 22%;border:1px solid #a2b27d22;border-radius:50%;z-index:-1}.hero-display{grid-column:2;grid-row:1/4;margin:0;align-self:center;display:grid;justify-items:center;min-width:0;position:relative}.hero-display:before{content:'';position:absolute;bottom:23px;width:90%;height:26px;border-radius:50%;background:radial-gradient(ellipse,#b2b98233,transparent 72%);z-index:-1}.hero-display canvas{display:block;width:100%;max-width:192px;height:auto;image-rendering:pixelated;margin:0}.hero-display-mark{font-size:9px;letter-spacing:1.3px;text-transform:uppercase;color:#b5c2a6;border:1px solid #7f92614a;border-radius:20px;padding:5px 9px}.hero-display figcaption{font-size:8px;letter-spacing:2px;color:#80997e;margin-top:6px}.orbit-slot{display:grid;justify-items:center;align-content:center;gap:4px;min-width:0;padding:10px 8px;text-align:center;border:1px solid #536251;background:linear-gradient(145deg,#2b3b2fee,#1c2c24);border-radius:12px;color:#e4e7d4;min-height:98px;transition:border-color .15s,background .15s}.orbit-slot.selected{border-color:#dec587;box-shadow:0 0 0 1px #dec58744,inset 0 0 24px #b19d5c15;background:linear-gradient(135deg,#3a4935,#253629)}.orbit-slot.empty{border-style:dashed;color:#9baf9c}.slot-label{font-size:9px;letter-spacing:.8px;text-transform:uppercase;color:#b7c3ac}.slot-symbol{height:30px;color:#c7b176}.slot-symbol svg{width:28px;height:28px}.orbit-slot b{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:11px;font-weight:600;line-height:1.3;overflow-wrap:anywhere;max-width:100%}.orbit-slot small{font-size:9px;color:#9aac96}.slot-helmet{grid-column:1;grid-row:1}.slot-chest{grid-column:1;grid-row:2}.slot-boots{grid-column:1;grid-row:3}.slot-weapon{grid-column:3;grid-row:1}.slot-amulet{grid-column:3;grid-row:2}.slot-ring{grid-column:3;grid-row:3}.character-combat-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;padding:12px 0;border-bottom:1px solid #33473c;margin-bottom:16px}.character-combat-stats div{text-align:center;border-right:1px solid #33473c}.character-combat-stats div:last-child{border:0}.character-combat-stats small{display:block;color:#a7b7a5;font-size:10px}.character-combat-stats b{display:block;color:#e0d1a7;font-size:21px;margin-top:3px}.equipment-inspector{display:grid;grid-template-columns:40px 1fr auto;gap:12px;align-items:center;padding:15px;border:1px solid #59644e;border-radius:13px;background:#24342977}.inspector-symbol{color:#d8bf7e}.inspector-symbol svg{width:34px;height:34px}.inspector-copy{min-width:0;position:relative;padding-right:28px}.inspector-copy h3{font-size:15px;margin:5px 0;overflow-wrap:anywhere}.inspector-copy p{font-size:11px;color:#b1bea8;margin:0;line-height:1.6;overflow-wrap:anywhere}.inspector-actions{display:grid;gap:7px}.inspector-actions button{font-size:11px;padding:9px 12px;min-height:38px}.equipment-note{font-size:11px;line-height:1.6;color:#859c87;margin:13px 0 22px}.character-service-group{margin:22px 0}.character-service-group>h3{font-size:9px;letter-spacing:1.5px;color:#a5b29b;margin:0 0 10px}.character-service-group .character-menu{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.character-service-group .character-option{display:grid;grid-template-columns:28px 1fr 10px;align-items:center;gap:9px;padding:13px;border-color:#3c5142;background:#20322780;border-radius:11px}.service-symbol{color:#cbb47a}.service-symbol svg{width:22px;height:22px}.character-service-group .character-option b{font-size:12px;font-weight:600}.character-service-group .character-option small{font-size:10px;line-height:1.4;color:#96ab97;margin-top:4px}.service-arrow{font-size:21px;color:#82987c}.personal-panel .rpg-card,.personal-panel .contract-card,.personal-panel .item-card,.personal-panel .storage-card,.personal-panel .subsection{border-radius:13px;border-color:#425647;background:linear-gradient(145deg,#24392a99,#16261d)}.personal-panel .stat-cell{padding:13px;border-radius:11px;background:#21352a;border-color:#465c48}.personal-panel .primary-button{background:#526b43;border-color:#80986a}.personal-panel .secondary-button{background:#263b2e;border-color:#5d7359}.personal-panel .bag-slot{border-radius:11px;border-color:#5a7054}.personal-panel .panel-footer{padding:13px 20px}
@media(max-width:480px){.personal-panel .panel-body{padding:0 12px 16px}.personal-panel .panel-header{padding:14px 16px}.character-tabs{margin-bottom:16px;gap:0}.character-tabs button{padding:9px 10px;font-size:11px}.character-profile h2{font-size:26px}.profile-vitals{gap:10px}.paperdoll.equipment-orbit{grid-template-columns:minmax(68px,1fr) minmax(92px,1.1fr) minmax(68px,1fr);gap:7px;padding:10px;grid-template-rows:repeat(3,minmax(93px,auto))}.orbit-slot{min-height:93px;padding:8px 5px}.orbit-slot b{font-size:10px}.orbit-slot small{font-size:8px}.hero-display-mark{font-size:8px;padding:4px 6px}.equipment-inspector{grid-template-columns:30px 1fr;padding:12px;gap:9px}.inspector-symbol svg{width:28px}.inspector-actions{grid-column:1/-1;grid-template-columns:1fr 1fr}.character-service-group .character-menu{grid-template-columns:1fr}.character-service-group .character-option{padding:12px}.character-workspace .stat-strip{grid-template-columns:repeat(2,1fr)}}
.hero-view-controls{display:flex;align-items:center;justify-content:center;gap:5px;margin-top:2px;max-width:100%;color:#94ac8f}.hero-view-controls span{font-size:7px;letter-spacing:1px;text-align:center}.hero-view-controls button{width:28px;min-height:32px;padding:0;border:1px solid #62785466;border-radius:8px;background:#263c2c;color:#d5c498;font-size:22px}.section-heading{margin-bottom:20px}.section-heading h2{font-size:24px;letter-spacing:-.6px;margin:6px 0}.section-heading p,.evolution-banner p{font-size:12px;line-height:1.65;color:#a6b9a5;margin:8px 0}.ability-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.ability-card{padding:18px;border:1px solid #435b43;border-radius:15px;background:linear-gradient(145deg,#2b4230,#17281d);display:flex;flex-direction:column;gap:12px;min-width:0}.ability-card.selected{border-color:#bca96a;background:linear-gradient(145deg,#3c4c32,#203325)}.ability-card-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.ability-symbol{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#687d4b33;color:#d9bf81}.ability-symbol svg{width:26px;height:26px}.ability-status{font-size:8px;letter-spacing:.7px;color:#a8b794}.ability-card.selected .ability-status{color:#e0c98d}.ability-card h3{font-size:16px;margin:0}.ability-card p{font-size:12px;line-height:1.6;color:#acbea6;flex:1;margin:0}.ability-meta{display:flex;flex-wrap:wrap;gap:6px;font-size:10px;color:#ccdabd}.ability-meta span{padding:5px 7px;border-radius:6px;background:#15261ab0}.ability-card button{font-size:11px;min-height:42px}.ability-card button:disabled{opacity:.75}.evolution-banner{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:20px;border:1px solid #6e8155;border-radius:16px;background:linear-gradient(125deg,#34482e,#1b3023)}.evolution-banner h2{font-size:28px;margin:6px 0;letter-spacing:-1px}.points-balance{display:grid;justify-items:center;border-left:1px solid #647955;padding-left:20px;min-width:78px}.points-balance b{font-size:40px;color:#e0cb8e;font-weight:500}.points-balance small{font-size:8px;letter-spacing:1px;color:#b2c39a;text-align:center}.evolution-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.evolution-card{display:flex;flex-direction:column;gap:12px;padding:17px;border:1px solid #425b45;border-radius:13px;background:#22372a99;min-width:0}.evolution-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.evolution-card-top h3{font-size:15px;margin:0}.evolution-card-top span{color:#d0bc80;font-size:13px;padding:4px 8px;background:#4e634633;border-radius:7px}.evolution-card p{font-size:12px;line-height:1.6;color:#a4b89e;margin:0;flex:1}.evolution-card button{font-size:11px;min-height:38px}.rank-track{height:4px;border-radius:4px;overflow:hidden;background:#13251a}.rank-track i{display:block;height:100%;background:#a1b577}.bag-header-actions{display:flex;gap:6px;flex-wrap:wrap}.bag-header-actions button{font-size:11px;padding:9px 10px}@media(max-width:620px){.ability-cards{grid-template-columns:1fr}.ability-card{padding:16px;gap:10px}.ability-card button{align-self:stretch}.evolution-banner{padding:16px}.points-balance{padding-left:12px}.points-balance b{font-size:34px}}@media(max-width:390px){.evolution-grid{grid-template-columns:1fr}.hero-view-controls{gap:1px}.hero-view-controls button{width:25px}.hero-view-controls span{font-size:6px;letter-spacing:.5px}}

/* Arsenal 2.9 */
.attack-training{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:16px;margin:16px 0;border:1px solid #799a7955;background:#263b31;border-radius:12px}.attack-training>div{flex:1}.attack-training small{display:block;color:#abc4b4;margin-top:6px}.attack-training progress{width:100%;height:10px;accent-color:#b3d58e}.arsenal-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.arsenal-card{padding:16px;border:1px solid #859c7955;background:#24362e;border-radius:12px}.arsenal-card h3{margin:8px 0}.arsenal-card small,.arsenal-card span{display:block;color:#b7cbbd}.arsenal-card p{font-size:13px}.arsenal-art{height:96px;text-align:center;background:#182c26;border-radius:8px;margin-bottom:12px}.arsenal-art svg{width:48px;height:88px}.arsenal-card.locked{border-color:#a0826055}.character-combat-stats{grid-template-columns:repeat(auto-fit,minmax(100px,1fr))}

/* Minimapa e equipamentos sempre visíveis, com gestos por toque. */
.equipment-hud{position:absolute;right:14px;top:14px;width:178px;max-height:calc(100% - 178px);overflow-y:auto;overscroll-behavior:contain;pointer-events:auto;background:#14221cf2;border:1px solid #5e6c58;border-radius:10px;padding:7px;scrollbar-width:thin;z-index:22}
.hud-section-heading{display:flex;align-items:center;justify-content:space-between;min-height:24px;color:#dfd2ab;font-size:11px;font-weight:600}
.hud-section-heading button{min-width:44px;min-height:44px;border:0;background:transparent;color:#e8dfc6;font-size:20px;padding:0}
.equipment-hud .minimap-frame{position:static;inset:auto;width:100%;padding:0;background:#0c1811;border-color:#415845;border-radius:5px}
.equipment-hud .minimap-frame canvas{width:100%;height:auto;aspect-ratio:17/12;image-rendering:pixelated}
.equipment-hud .minimap-frame>span{font-size:9px;padding:5px}
.hud-gear-section{margin-top:3px}.hud-equipment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(3,50px);gap:4px}
.hud-gear-slot{min-width:0;min-height:44px;padding:3px;border:1px solid #607057;border-radius:5px;background:linear-gradient(145deg,#304132,#19281e);color:#e9dfbc;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;touch-action:pan-y;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}
.hud-gear-slot.empty{border-style:dashed;color:#91a18b;background:#16231b}.hud-gear-slot small{font-size:9px;line-height:1.2}.hud-slot-icon{display:grid;place-items:center;width:28px;height:28px;overflow:hidden}.hud-slot-icon svg{width:27px;height:27px}.hud-slot-icon .item-sprite{transform:scale(.7);transform-origin:center}
.hud-helmet{grid-column:1;grid-row:1}.hud-chest{grid-column:1;grid-row:2}.hud-boots{grid-column:1;grid-row:3}.hud-weapon{grid-column:3;grid-row:1}.hud-amulet{grid-column:3;grid-row:2}.hud-ring{grid-column:3;grid-row:3}
#hud-hero{grid-column:2;grid-row:1/4;width:100%;height:auto;align-self:center;image-rendering:pixelated;pointer-events:none}
.hud-item-shortcuts{display:flex;gap:4px;margin-top:7px}.hud-item-shortcuts button{min-height:44px;min-width:44px;border:1px solid #586c53;border-radius:5px;background:#263a2c;color:#e9dfbc;padding:5px;display:flex;align-items:center;justify-content:center;gap:5px;font-size:11px;touch-action:pan-y;-webkit-touch-callout:none;user-select:none}#hud-potions{flex:1}#hud-potions b{color:#cfe1b1;font-variant-numeric:tabular-nums}.hud-gesture-hint{display:block;text-align:center;font-size:9px;color:#a6b99f;margin-top:6px}.equipment-collapsed #hud-equipment-content{display:none}
.equipment-hud~.quest-tracker{right:auto;left:14px;top:112px;max-width:245px}
.item-menu-dialog{width:min(360px,calc(100vw - 24px));max-height:80vh;overflow:auto;padding:15px;background:#18291e;color:#eee6cf;border:1px solid #8a9872;border-radius:12px;box-shadow:0 12px 50px #0009}.item-menu-dialog::backdrop{background:#07100c88}.item-menu-dialog header{display:flex;align-items:center;gap:9px}.item-menu-dialog h3{font-size:16px;line-height:1.3;flex:1;overflow-wrap:anywhere;margin:0}.item-menu-dialog header button{min-height:44px;min-width:44px;font-size:24px;padding:0}.item-menu-icon{display:grid;place-items:center;width:36px;flex:none}.item-menu-icon svg{width:34px;height:34px}.item-menu-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.item-menu-actions button{min-height:44px}.item-menu-actions #item-menu-drop{grid-column:1/-1;background:#3a2520;border-color:#886054;color:#edc6b6}.item-menu-dialog p{font-size:13px;line-height:1.65;color:#c6d2bc;white-space:pre-line}.bag-slot[data-item-id]{-webkit-touch-callout:none;user-select:none;-webkit-user-select:none;touch-action:pan-y}
@media(max-width:760px){.equipment-hud{right:7px;top:7px;width:156px;padding:5px;max-height:calc(100% - 165px)}.hud-equipment-grid{grid-template-rows:repeat(3,44px);gap:3px}.equipment-hud .minimap-frame canvas{height:75px;aspect-ratio:auto}.equipment-hud .minimap-frame>span{font-size:8px;padding:3px}.equipment-hud~.quest-tracker{left:7px;top:107px;max-width:calc(100% - 176px)}.hud-gesture-hint{font-size:9px}.hero-hud{max-width:calc(100% - 178px)}.hero-vitals{width:auto;flex:1}.region-hud{max-width:calc(100% - 176px)}.region-hud strong{white-space:normal}.target-hud{left:7px;transform:none;max-width:calc(100% - 176px);min-width:0}}
@media(max-width:480px){.hero-hud{width:calc(100% - 178px);gap:4px}.hero-name-row{display:block}.hero-name-row strong{display:block;max-width:100%}.hero-portrait{width:35px;height:42px}.hero-portrait canvas{width:32px;height:38px}.hero-name-row span{font-size:9px}.hero-hud .meter span{font-size:8px}.hero-hud .xp-label{font-size:8px}.xp-row{flex-wrap:wrap}.xp-meter{min-width:30px}.region-hud{top:96px}.equipment-hud~.quest-tracker{top:146px}.target-hud{top:210px;font-size:10px}.travel-hint{display:none}}
@media(max-height:620px){.equipment-hud{width:156px;top:7px;right:7px;padding:5px;max-height:calc(100% - 154px)}.equipment-hud .minimap-frame canvas{height:48px;aspect-ratio:auto}.equipment-hud .minimap-frame>span{display:none}.hud-equipment-grid{grid-template-rows:repeat(3,44px);gap:3px}.hud-gesture-hint{display:none}.hud-section-heading{min-height:20px}.hud-item-shortcuts{margin-top:4px}.hero-hud{max-width:calc(100% - 178px)}}

/* Morte exige confirmação para reviver; avisos de ações bloqueadas. */
.death-dialog{width:min(390px,calc(100vw - 24px));max-height:92dvh;overflow:auto;padding:24px;border:1px solid #8b7357;border-radius:16px;background:radial-gradient(ellipse at 50% 30%,#2e362c,#131e18 75%);color:#eee6cf;text-align:center;box-shadow:0 20px 80px #000b}.death-dialog::backdrop{background:#070e0bd9}.death-dialog h2{font-size:32px;margin:8px 0 18px;color:#efc5a8}.death-label{display:block;font-size:10px;letter-spacing:1.6px;color:#acbaa5}.death-dialog canvas{display:block;width:156px;height:auto;margin:0 auto;image-rendering:pixelated}.death-dialog canvas[hidden]{display:none}.death-dialog>strong{display:block;font-size:15px;margin-bottom:16px}.death-loss{padding:14px;border-top:1px solid #73583c;border-bottom:1px solid #73583c;background:#111a1455}.death-loss span,.death-loss b,.death-loss small{display:block}.death-loss span{font-size:12px;color:#b5c2ab}.death-loss b{font-size:27px;color:#e7a37b;margin:5px 0}.death-loss small{font-size:12px;color:#ddc89d}.death-dialog p{font-size:13px;color:#becbb3}.death-dialog button{min-height:48px}.action-notice{position:absolute;left:50%;bottom:170px;transform:translateX(-50%);max-width:min(450px,calc(100% - 24px));width:max-content;padding:12px 16px;border:1px solid #cfab63;border-radius:10px;background:#332b17f5;color:#fff0c5;z-index:55;pointer-events:none;font-size:13px;line-height:1.5;text-align:center;box-shadow:0 5px 20px #0008}.action-notice[hidden]{display:none}@media(max-height:620px){.death-dialog{padding:15px}.death-dialog h2{font-size:24px;margin:6px 0 8px}.death-dialog canvas{width:100px}.death-dialog>strong{margin-bottom:8px}.death-loss{padding:8px}.death-loss b{font-size:22px}.action-notice{bottom:145px}}

/* Diário das missões recebidas e evolução com quatro atributos. */
.mission-journal-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:12px 0}.mission-journal-head h2{margin:5px 0;font-size:24px}.mission-journal-head>span{font-size:12px;color:#b9c6ab}.mission-list,.mission-offers{display:grid;gap:12px}.mission-offers{margin-bottom:24px}.mission-offers>h3{font-size:14px;color:#d9c791}.mission-card{padding:18px;border:1px solid #465e49;border-radius:13px;background:linear-gradient(130deg,#253b2b,#16271d);display:grid;gap:10px;min-width:0}.mission-card h3{font-size:17px;margin:0;color:#ece3c5}.mission-card p{margin:0;line-height:1.6;font-size:13px;color:#b5c5ac}.mission-card>small{font-size:12px;color:#d4c49a}.mission-card button{min-height:44px}.mission-ready{border-color:#93a666}.mission-progress-copy{display:flex;justify-content:space-between;flex-wrap:wrap;gap:6px;font-size:11px;color:#c6d6b8}.mission-progress-copy b{font-weight:500}.mission-progress{height:6px;background:#102016;border-radius:5px;overflow:hidden}.mission-progress i{display:block;height:100%;background:#a4b873}.mission-empty{text-align:center;padding:35px 16px;color:#aabd9f}.mission-empty svg{width:34px;height:34px;color:#cbb578}.mission-empty h3{font-size:17px}.mission-empty p{font-size:13px;line-height:1.6}.mission-actions{display:flex;flex-wrap:wrap;gap:8px}.mission-actions button{flex:1;min-width:140px;text-align:left}.mission-actions small{display:block;font-size:11px;margin-top:5px}.evolution-four{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px}.evolution-attribute{padding:18px;border:1px solid #526950;border-radius:14px;background:linear-gradient(145deg,#2a3e2d,#18291e);display:flex;flex-direction:column;gap:12px;min-width:0}.evolution-attribute-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.evolution-attribute-head h3{margin:0;font-size:16px;flex:1}.evolution-attribute-head>span{color:#d8bd7a}.evolution-attribute-head small{font-size:11px;color:#b2c1a9}.evolution-value{font-size:24px;font-weight:500;color:#e5d6aa}.evolution-attribute p{font-size:12px;line-height:1.6;margin:0;color:#adbea4;flex:1}.evolution-attribute button{min-height:44px;font-size:12px}.combat-state{display:inline-block;margin-top:4px;border-radius:4px;padding:2px 5px;background:#693b29;color:#ffd7b0;font-size:10px}.combat-state.recovering{background:#2b4a30;color:#c4e3ae}.combat-state[hidden]{display:none}@media(max-width:480px){.evolution-four{gap:8px}.evolution-attribute{padding:13px;gap:9px}.evolution-attribute-head small{flex-basis:100%}.evolution-value{font-size:20px}.mission-card{padding:14px}.mission-journal-head{align-items:flex-start}.mission-journal-head>span{font-size:11px}.combat-state{font-size:9px}}

/* Estado e mapa local, sem contagem regressiva. */
.combat-state.safe-zone{background:#24463d;color:#bce4d3}.equipment-hud .minimap-frame[hidden]{display:none}

/* Mochila lateral e conversa por missão. */
.hud-backpack{border-top:1px solid #415845;margin-top:8px;padding-top:5px}.hud-backpack .hud-section-heading small{font-size:10px;color:#b2c4a7}.hud-bag-scroll{max-height:190px;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;scrollbar-width:thin}.hud-bag-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:2px}.hud-bag-slot{height:48px;position:relative;display:grid;place-items:center;min-width:0;border:1px solid #657456;border-radius:5px;background:#26362a;color:#dfd6b8;padding:3px;touch-action:pan-y;user-select:none;-webkit-touch-callout:none}.hud-bag-slot>span{max-width:100%;height:36px;display:grid;place-items:center;overflow:hidden}.hud-bag-slot svg{width:32px;height:36px}.hud-bag-slot b{position:absolute;right:2px;bottom:1px;font-size:10px;background:#122318dd;border-radius:3px;padding:0 3px}.hud-bag-slot.empty{border-style:dashed;background:#142218;color:#60795d;font-size:10px}.npc-conversation{padding:20px;border:1px solid #657652;border-radius:14px;background:linear-gradient(145deg,#2b3f2d,#14271c);margin:12px 0}.npc-speech,.npc-conversation>p{font-size:16px;line-height:1.75;color:#eee4c9}.npc-request{background:#14251b;padding:14px;border-radius:9px;border-left:3px solid #c0ae73;margin:16px 0}.npc-request h3{margin:0 0 8px}.npc-request p{font-size:13px;color:#bacaaf;line-height:1.6}.npc-request small{display:block;font-size:12px;color:#d8c891;margin:6px 0}.npc-answer-buttons{display:flex;flex-wrap:wrap;gap:8px}.npc-answer-buttons button{min-height:44px;flex:1}.npc-answer-buttons small{display:block;margin-top:4px}@media(max-height:620px){.hud-bag-scroll{max-height:116px}}@media(max-width:480px){.hud-bag-scroll{max-height:144px}.hud-bag-slot{height:44px}.npc-conversation{padding:14px}.npc-speech,.npc-conversation>p{font-size:14px}}

/* Lateral compacta: três linhas de mochila sempre reservadas. */
.equipment-hud{max-height:calc(100% - 110px)}
.equipment-hud .hud-section-heading{min-height:28px}.equipment-hud .hud-section-heading button{min-width:32px;min-height:32px;font-size:18px}
.equipment-hud .minimap-frame canvas{height:84px;aspect-ratio:auto}.equipment-hud .minimap-frame>span{padding:3px;font-size:8px}
.equipment-hud .hud-equipment-grid{grid-template-rows:repeat(3,36px);gap:3px}.equipment-hud .hud-gear-slot{min-height:36px;padding:2px;gap:1px}.equipment-hud .hud-gear-slot small{font-size:8px}.equipment-hud .hud-slot-icon{width:24px;height:24px}.equipment-hud .hud-slot-icon svg{width:23px;height:23px}
.equipment-hud #hud-hero{max-height:106px;width:auto;max-width:100%;justify-self:center}.equipment-hud .hud-gesture-hint{display:none}
.equipment-hud .hud-backpack{margin-top:5px;padding-top:3px}.equipment-hud .hud-bag-scroll{height:130px;min-height:130px;max-height:130px}.equipment-hud .hud-bag-grid{gap:3px;padding:2px}.equipment-hud .hud-bag-slot{height:40px;padding:2px}.equipment-hud .hud-bag-slot>span{height:30px}.equipment-hud .hud-bag-slot svg{width:28px;height:30px}
@media(max-height:620px){.equipment-hud{max-height:calc(100% - 100px)}.equipment-hud .minimap-frame canvas{height:48px}.equipment-hud .hud-section-heading{min-height:24px}.equipment-hud .hud-section-heading button{min-height:28px;min-width:28px}.equipment-hud .hud-equipment-grid{grid-template-rows:repeat(3,32px)}.equipment-hud .hud-gear-slot{min-height:32px}.equipment-hud .hud-slot-icon{height:21px}.equipment-hud .hud-slot-icon svg{height:21px}.equipment-hud #hud-hero{max-height:94px}.equipment-hud .hud-bag-scroll{height:118px;min-height:118px;max-height:118px}.equipment-hud .hud-bag-slot{height:36px}.equipment-hud .hud-bag-slot>span,.equipment-hud .hud-bag-slot svg{height:27px}}
@media(max-height:520px){.equipment-hud{max-height:calc(100% - 14px)}}

/* Catálogo de mochilas de diamantes. */
.diamond-shop-head h2{font-size:28px;margin:8px 0;color:#eadcba}.diamond-shop-head>p{color:#b5c5ae;font-size:14px}.diamond-shop-balance{display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;margin:18px 0 22px;padding:14px 18px;border:1px solid #526c57;background:#12241b;border-radius:10px;color:#c9d7bb}.diamond-shop-balance b{color:#f0e3c4}.diamond-backpack-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.diamond-backpack{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;gap:9px;border:1px solid var(--bag-color);border-radius:15px;background:linear-gradient(145deg,#23382c,#101f17);padding:18px;min-width:0;overflow:hidden}.backpack-rarity{align-self:flex-start;font-size:10px;letter-spacing:1.4px;text-transform:uppercase;color:var(--bag-color);padding:4px 8px;border:1px solid var(--bag-color);border-radius:5px}.diamond-backpack figure{margin:0;width:100%;height:174px;display:grid;place-items:center;background:radial-gradient(ellipse at center,#415e3c66,transparent 70%)}.diamond-backpack img{width:160px;height:160px;object-fit:contain;image-rendering:pixelated;filter:drop-shadow(0 5px 4px #0008)}.diamond-backpack h3{margin:2px 0;color:#efe2c0;font-size:17px}.diamond-backpack p{font-size:12px;line-height:1.65;color:#b5c5af;margin:0;flex:1}.backpack-capacity{display:flex;align-items:center;gap:6px;margin:5px 0;color:#d4d9c4}.backpack-capacity b{font-size:25px;color:var(--bag-color)}.backpack-capacity span{font-size:9px;letter-spacing:1px}.backpack-price{display:flex;align-items:center;gap:6px;font-size:22px;color:#e7d9b1}.backpack-price small{font-size:10px;font-weight:400;color:#a5b8a0}.diamond-backpack button{width:100%;min-height:44px;margin-top:4px;font-size:12px}.backpack-legendary{box-shadow:inset 0 0 25px #d4ac4820}.diamond-exchange-link{width:100%;margin-top:18px;min-height:44px;font-size:12px}@media(max-width:480px){.diamond-backpack-grid{gap:9px}.diamond-backpack{padding:10px;gap:7px}.diamond-backpack figure{height:128px}.diamond-backpack img{width:118px;height:118px}.diamond-backpack h3{font-size:14px}.diamond-backpack p{font-size:11px}.diamond-backpack button{font-size:10px;padding:9px 5px}.backpack-price{font-size:19px}.backpack-price small{font-size:9px}.diamond-shop-head h2{font-size:24px}}

/* Artes de itens: mesma leitura visual no painel, equipamentos e atalhos. */
.remastered-item{display:inline-block;width:64px;height:64px;max-width:100%;object-fit:contain;image-rendering:pixelated;vertical-align:middle;pointer-events:none;user-select:none;-webkit-user-drag:none}
.hud-bag-slot .remastered-item{width:42px;height:36px;max-height:100%}.hud-slot-icon .remastered-item{width:40px;height:34px;max-height:100%}.hud-gear-slot .hud-slot-icon{overflow:hidden}
#item-menu-icon .remastered-item{width:104px;height:104px}.bag-slot>b>.remastered-item{width:72px;height:72px}.merchant-weapon>.remastered-item{width:90px;height:90px}
.slot-symbol .remastered-item{width:58px;height:58px}.inspector-symbol .remastered-item{width:64px;height:64px}.stored-item-art{display:block}.stored-item-art .remastered-item{width:54px;height:54px}
.supply-item-art{flex:0 0 58px;display:grid;place-items:center}.supply-item-art .remastered-item{width:56px;height:56px}.market-supply-row{gap:12px}.market-supply-row>div{flex:1}
.remastered-materials{display:flex;flex-wrap:wrap;gap:8px;background:none;padding:0}.remastered-materials>span{display:grid;grid-template-columns:36px auto;align-items:center;column-gap:6px;padding:6px 10px;background:#17281d;border:1px solid #506448;border-radius:8px}.remastered-materials .remastered-item{grid-row:span 2;width:36px;height:40px}.remastered-materials small{font-size:10px;color:#b7c8ab}.remastered-materials b{font-size:13px;color:#e9dcc0}.alchemy-item-art{display:block}.alchemy-item-art .remastered-item{width:66px;height:66px}
.action-button.potion>.remastered-item{width:32px;height:32px;flex-shrink:0}@media(max-width:760px){.action-button.potion>.remastered-item{width:26px;height:26px}}@media(max-height:620px){.hud-bag-slot .remastered-item,.hud-slot-icon .remastered-item{height:30px;width:36px}}

.recipe-materials{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.recipe-materials>span{display:inline-flex;align-items:center;gap:3px}.recipe-materials .remastered-item{width:28px;height:28px}

/* Placas de pista e títulos temporários de área. */
#region-button[hidden]{display:none!important}
.eldara-reading-board{max-width:580px;margin:10px auto;padding:24px;border:8px solid #6e5034;border-radius:7px;background:#342c22;box-shadow:inset 0 0 0 2px #b18c59,0 8px 28px #0006;text-align:center}
.eldara-reading-board h2{color:#efd8a4;margin:12px 0 20px}.board-parchment{padding:26px 22px;background:#dfcca1;border:2px solid #a98b5a;border-radius:3px;box-shadow:inset 0 0 24px #96784355;color:#352e24;text-align:left}.board-parchment p{font-size:18px;line-height:1.65;white-space:pre-line;color:inherit;margin:0}.eldara-reading-board small{display:block;margin-top:20px;color:#cbb994}.npc-contact-role{display:flex;gap:10px;align-items:center;margin-bottom:16px;padding:10px 14px;border-bottom:1px solid #887852;color:#e7d6ab}.npc-contact-role span{font-size:12px;color:#b8c5ac}@media(max-width:550px){.eldara-reading-board{padding:14px;border-width:6px}.board-parchment{padding:20px 16px}.board-parchment p{font-size:16px}}

#mission-completion{position:absolute;top:76px;left:50%;transform:translateX(-50%);z-index:45;width:min(360px,65vw);padding:12px 18px;text-align:center;pointer-events:none;border:1px solid #bfa969;border-radius:9px;background:linear-gradient(135deg,#152d26ed,#10201bef);box-shadow:0 4px 16px #0005;animation:missionArrival .2s ease-out;color:#f1e4bb}#mission-completion b,#mission-completion span,#mission-completion small{display:block}#mission-completion b{color:#ead08a;font-size:17px}#mission-completion span{margin:5px 0;font-size:13px}#mission-completion small{font-size:12px;color:#d1dfcf}#mission-completion[hidden]{display:none!important}@keyframes missionArrival{from{opacity:0;transform:translate(-50%,-8px)}to{opacity:1;transform:translate(-50%,0)}}

.controls.movement{width:112px;height:112px}.joystick{--stick-x:0px;--stick-y:0px;position:relative;width:112px;height:112px;border-radius:50%;touch-action:none;user-select:none;background:radial-gradient(circle,#31493bdd 0,#192c24da 58%,#112219ba 70%);border:1px solid #84977888;box-shadow:inset 0 0 0 5px #52694333,0 4px 14px #0004;display:grid;place-items:center}.joystick-ring{width:78px;height:78px;border:1px solid #8b9d7355;border-radius:50%;pointer-events:none}.joystick-thumb{position:absolute;left:50%;top:50%;width:44px;height:44px;display:grid;place-items:center;transform:translate(calc(-50% + var(--stick-x)),calc(-50% + var(--stick-y)));border-radius:50%;background:linear-gradient(145deg,#627757,#304832);border:2px solid #b2ba8a;box-shadow:0 3px 8px #0007;pointer-events:none}.joystick-thumb svg{width:20px;height:20px;color:#e4cf91}.joystick.pressed .joystick-thumb{border-color:#e6d18f}.store-header{display:flex;justify-content:space-between;align-items:center;padding:6px 0 12px}.store-header>div{display:flex;gap:12px;align-items:center}.store-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin-bottom:12px}.store-tabs button{font-size:11px;padding:8px 4px}.store-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.store-card{border:1px solid var(--bag-color,#526b50);border-radius:9px;padding:9px 7px;background:linear-gradient(145deg,#293d2b,#16281f);display:flex;flex-direction:column;align-items:center;text-align:center;gap:7px;min-width:0}.store-card>img,.store-art{width:72px;height:72px;object-fit:contain;image-rendering:pixelated}.store-art{display:grid;place-items:center}.store-art svg{max-width:60px;max-height:68px}.store-art img{max-width:68px;max-height:68px;object-fit:contain}.store-card h3{font-size:12px;line-height:1.25;margin:0;min-height:30px}.store-card small{font-size:10px;color:#bec9b2}.store-card strong{font-size:12px}.store-card button{width:100%;padding:7px 3px;font-size:10px;min-height:32px;margin-top:auto}.store-owned{font-size:11px;color:#d6dc9d}.store-card canvas{width:72px;height:86px;image-rendering:pixelated}@media(max-width:480px){.store-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.store-card{padding:7px 5px}.store-card>img,.store-art{width:58px;height:58px}.store-art svg,.store-art img{max-width:54px;max-height:54px}.store-tabs button{font-size:10px}}@media(max-width:340px){.store-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

.merchant-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.merchant-card{padding:10px 8px;min-width:0}.merchant-card .merchant-weapon{height:64px;min-height:64px;padding:3px}.merchant-card .merchant-weapon img,.merchant-card .merchant-weapon svg{max-width:58px;max-height:60px}.merchant-card h3{font-size:13px}.merchant-card .merchant-stats{gap:4px;font-size:11px}.merchant-card .price,.merchant-card .sell-price{font-size:13px}.merchant-card button{font-size:11px;padding:8px 5px}.merchant-card .merchant-stats b{font-size:12px}@media(max-width:390px){.merchant-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Compact premium storefront, with no world animation or per-frame artwork work. */
.hero-name-row .vip-status{font-size:9px;font-weight:600;color:#e3c488;letter-spacing:.02em;white-space:nowrap;padding:1px 4px;border:1px solid #a8884a50;border-radius:4px;background:#362e1b55;flex-shrink:0}
.vip-status[hidden]{display:none!important}.hero-name-row #hero-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.store-section-label{margin-top:20px}.premium-summary{display:flex;align-items:center;gap:18px;margin-bottom:18px}.premium-summary>.premium-art{width:96px;height:96px;object-fit:contain;flex-shrink:0;image-rendering:pixelated}.premium-summary h3{margin:5px 0}.premium-summary p{font-size:12px;color:var(--muted);margin:6px 0}.premium-benefits{padding-left:22px;line-height:1.7;font-size:13px}.premium-benefits b{color:#e3c488}.prize-odds{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.prize-odds span{padding:7px 10px;background:#142a25;border:1px solid #546b5655;border-radius:8px;font-size:12px}.prize-odds b{color:#e3c488;margin-left:4px}
.prize-level-odds{margin:16px 0;overflow:auto}.prize-level-odds table{width:100%;border-collapse:collapse;font-size:12px}.prize-level-odds th,.prize-level-odds td{text-align:left;padding:7px 10px;border-bottom:1px solid #74876b35}.prize-level-odds th{color:#e3c488}.prize-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.prize-card{min-width:0;padding:9px;text-align:center;background:#11231fe8;border:1px solid #51644c60;border-radius:8px}.prize-card>div{height:62px;display:flex;align-items:center;justify-content:center}.prize-card img{width:52px;height:52px;object-fit:contain;image-rendering:pixelated}.prize-card svg{height:58px;width:38px}.prize-card h4{font-size:11px;line-height:1.25;margin:7px 0;overflow-wrap:anywhere}.prize-card small{display:block;font-size:10px;color:var(--muted)}.prize-card b{display:block;font-size:12px;color:#e3c488;margin-top:5px}.premium-receipt{text-align:center;display:flex;align-items:center;flex-direction:column;gap:10px;padding:12px}.premium-receipt>.premium-art{width:112px;height:112px;object-fit:contain;image-rendering:pixelated}.premium-receipt h3,.premium-receipt p{margin:0}.premium-receipt small{color:var(--muted)}.prize-received-art{height:110px;display:flex;align-items:center;justify-content:center}.prize-received-art img{width:96px;height:96px;object-fit:contain}.prize-received-art svg{width:64px;height:104px}
@media(max-width:480px){.prize-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.premium-summary{gap:12px}.premium-summary>.premium-art{width:76px;height:76px}}
@media(max-width:340px){.prize-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-name-row .vip-status{font-size:8px;padding:1px 3px}}

/* Temporary chat beside the joystick */
.game-chat{position:absolute;z-index:18;pointer-events:auto;font:12px system-ui;color:#e4dec8}.chat-toggle{padding:10px 14px;border-radius:8px;background:#152d26e8;border:1px solid #857650;color:#e9d5a0;cursor:pointer}.chat-toggle span{background:#c3a05b;color:#14271f;border-radius:12px;padding:2px 5px}.chat-window{width:min(340px,calc(100vw - 24px));border:1px solid #8d7950;border-radius:10px;background:#10251eef;box-shadow:0 5px 24px #0005;overflow:hidden}.chat-window header{display:flex;justify-content:space-between;align-items:center;padding:9px 12px;background:#2b3d2d}.chat-window button{color:#e5d5ae;border:1px solid #596449;background:#263c2f;border-radius:5px;cursor:pointer;padding:6px 9px}.chat-window header button{font-size:18px;padding:0 8px}.chat-channels{display:flex;gap:6px;padding:8px}.chat-channels .selected{border-color:#d2ae65;background:#46533a}.chat-messages{height:125px;max-height:24vh;overflow:auto;padding:0 10px;overscroll-behavior:contain;user-select:text}.chat-messages p{margin:7px 0;overflow-wrap:anywhere}.chat-messages b{color:#dac38e}.chat-window form{padding:8px}.chat-window input{min-width:0;width:100%;background:#071b15;color:#f0e2c0;border:1px solid #56684d;border-radius:5px;padding:8px;font:inherit}.chat-compose{display:flex;gap:5px;margin:5px 0}.chat-compose input{flex:1}.chat-window small{color:#9eae96}
@media(max-width:760px){.welcome-content{max-height:85vh;overflow:auto}.chat-window{width:min(300px,calc(100vw - 24px))}}

/* Touch controls retain their own hit area, with chat above them when open. */
.controls.movement{z-index:19;touch-action:none;pointer-events:auto}.joystick{pointer-events:auto;touch-action:none;-webkit-user-select:none;-webkit-touch-callout:none}.joystick>*{pointer-events:none}.game-chat{max-width:calc(100% - 16px)}.store-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}

.world-context-menu{position:fixed;z-index:90;width:180px;padding:9px;display:grid;gap:6px;border:1px solid #a49263;border-radius:9px;background:#142a22f5;color:#eee0ba;box-shadow:0 5px 18px #0007;pointer-events:auto}.world-context-menu[hidden]{display:none}.world-context-menu strong{font-size:12px;overflow-wrap:anywhere;padding:3px}.world-context-menu button{padding:8px;border:1px solid #64775a;border-radius:5px;background:#304a36;color:#f0e0b9}.world-context-menu button[hidden]{display:none}

/* Coletas junto à borda inferior, no centro do campo de jogo. */
#loot-receipt{left:50%;right:auto;bottom:8px;transform:translateX(-50%);max-width:min(390px,calc(100% - 24px));text-align:center;padding:7px 10px;z-index:40}

.equip-receipt-art{width:40px;height:40px;margin:0 auto 3px}.equip-receipt-art img,.equip-receipt-art svg{width:100%;height:100%;object-fit:contain}.equip-receipt-art .item-art{width:100%;height:100%}
