
.app > header .v358-logo::after{content:"V4.67"!important}

/* Character page becomes one compact RPG hub instead of a long stack of cards. */
#character{
  padding:8px!important;
  overflow-x:hidden!important;
}
#character > .hero-card{
  margin:0 0 9px!important;
  border:1px solid #3e5840!important;
  border-radius:18px!important;
  background:linear-gradient(180deg,#111c14,#09110c)!important;
  box-shadow:0 18px 40px #0008!important;
}
#character .character-stage{
  min-height:0!important;
  padding:9px 7px 7px!important;
  overflow:hidden!important;
  background:
    radial-gradient(circle at 50% 31%,rgba(103,211,83,.18),transparent 31%),
    radial-gradient(circle at 12% 12%,rgba(218,175,70,.08),transparent 26%),
    linear-gradient(180deg,#17251a,#0a120d 88%)!important;
}
#character .char-head{display:none!important}
#character .char-head .tiny{font-size:8px!important;color:#89a18b!important}
#character .equipment-grid{
  display:grid!important;
  grid-template-columns:66px minmax(0,1fr) 66px!important;
  gap:7px!important;
  align-items:center!important;
  min-height:0!important;
  width:100%!important;
  overflow:visible!important;
}
#character .equip-col{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:7px!important;
  min-width:0!important;
}
#character .slot{
  width:100%!important;
  min-width:0!important;
  min-height:64px!important;
  height:64px!important;
  padding:5px 3px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:1px!important;
  border-radius:12px!important;
  overflow:hidden!important;
  cursor:pointer!important;
  background:radial-gradient(circle at 50% 22%,rgba(255,255,255,.05),transparent 35%),#0c1510!important;
  box-shadow:inset 0 0 18px #0007,0 4px 11px #0005!important;
}
#character .slot-icon{
  width:auto!important;height:auto!important;min-height:27px!important;
  display:grid!important;place-items:center!important;
  font-size:25px!important;line-height:1!important;
  background:none!important;border:0!important;
}
#character .slot-label{
  font-size:6.2px!important;line-height:1!important;letter-spacing:.08em!important;
  color:#829484!important;text-align:center!important;
}
/* Slot detail belongs to the tap overlay, not the hero itself. */
#character .slot-name,
#character .slot > .tiny,
#character .slot .slot-actions,
#character .slot .v123-item-effects,
#character .slot .set-tag,
#character .slot .v296-mystic-special{display:none!important}

#character .center-hero{
  min-width:0!important;
  min-height:0!important;
  height:auto!important;
  padding:2px 3px 4px!important;
  border:0!important;
  border-radius:16px!important;
  background:radial-gradient(circle at 50% 40%,rgba(99,206,83,.13),transparent 40%)!important;
}
#character .v123-gear-summary{display:none!important}
#character .avatar-scene{
  width:100%!important;height:128px!important;min-height:0!important;
  overflow:hidden!important;display:flex!important;align-items:flex-end!important;justify-content:center!important;
}
#character .avatar-scene:before{
  width:126px!important;height:126px!important;bottom:0!important;
  background:radial-gradient(circle,rgba(103,215,83,.22),rgba(38,77,39,.08) 58%,transparent 72%)!important;
}
#character .class-avatar-big{font-size:82px!important;line-height:1!important}
#character .v41-portrait{
  width:100%!important;max-width:145px!important;max-height:132px!important;
  transform:scale(.80)!important;transform-origin:center bottom!important;
}
#character .avatar-prop{font-size:38px!important;transform:scale(.76)!important}
#character .avatar-leaf{font-size:24px!important;transform:scale(.78)!important}
#character .center-name{
  margin-top:1px!important;font-size:17px!important;line-height:1.05!important;
  white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;
}
#character .center-class{font-size:7.3px!important;line-height:1.2!important;margin-top:2px!important}
#character .level-shield{
  margin-top:5px!important;padding:4px 9px!important;border-radius:9px!important;font-size:8px!important;
}
#character .level-shield b{font-size:15px!important}
#character .center-xp{max-width:170px!important;margin:5px auto 0!important}
#character .center-xp-row{font-size:7px!important;margin-bottom:2px!important}
#character .center-xp-track{height:8px!important}
#character .center-hero > .char-sub{display:none!important}
#character #v106BookBtn{
  transform:scale(.78)!important;transform-origin:center top!important;margin:3px auto -4px!important;
}

/* Former .char-bottom is intentionally renamed by V4.67 so V4.42/V4.44 cannot
   drag inventory/materials back into the hero during their old boot timers. */
#character .v459-hero-bottom{
  padding:8px!important;border-top:1px solid #304633!important;background:#0a120d!important;
}
#character .v459-hero-bottom .combat-row{
  display:grid!important;grid-template-columns:1fr 1fr!important;gap:7px!important;margin:0!important;
}
#character .v459-hero-bottom .combat-box{
  min-height:50px!important;padding:7px 8px!important;border-radius:11px!important;
  background:linear-gradient(180deg,#142019,#0c1410)!important;border:1px solid #334b37!important;
}
#character .v459-hero-bottom .combat-box span{font-size:7px!important}
#character .v459-hero-bottom .combat-box b{font-size:16px!important}
#v459SetSummary{
  display:flex;align-items:center;justify-content:center;gap:5px;flex-wrap:wrap;
  min-height:25px;margin-top:6px;padding:5px 7px;border:1px solid #304b35;border-radius:9px;
  background:#0b160e;color:#9fb3a0;font-size:7px;font-weight:900;text-align:center;
}
#v459SetSummary b{color:#e7c96d}

/* Main navigation inside the character screen. */
#v459CharacterShell{width:100%;min-width:0}
#v459CharacterTabs{
  position:relative;z-index:18;
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;
  padding:6px;margin:0 0 8px;border:1px solid #344c37;border-radius:14px;
  background:rgba(8,15,10,.95);backdrop-filter:blur(8px);box-shadow:0 9px 25px #0007;
}
#v459CharacterTabs button{
  min-width:0;min-height:45px;padding:5px 2px;border:1px solid transparent;border-radius:10px;
  background:#111c14;color:#8fa091;font:900 7px/1.15 system-ui;cursor:pointer;
}
#v459CharacterTabs button span{display:block;font-size:18px;line-height:1.05;margin-bottom:2px}
#v459CharacterTabs button em{display:block;font-style:normal;font-size:6.4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#v459CharacterTabs button.active{
  color:#dff7d0;border-color:#619455;background:linear-gradient(180deg,#213a25,#122217);
  box-shadow:inset 0 0 16px rgba(107,211,88,.08),0 0 12px rgba(107,211,88,.08);
}
.v459-panel{display:none;min-width:0}
.v459-panel.active{display:block}
.v459-panel > .card,
#v459AttrCard{
  margin:0 0 9px!important;padding:11px!important;border-radius:15px!important;
  border:1px solid #354d39!important;background:linear-gradient(160deg,#142019,#09110d 78%)!important;
  box-shadow:none!important;
}
#v459AttrCard .v459-panel-head{
  display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:9px;
}
#v459AttrCard .v459-panel-head h2{margin:0;font-size:15px}
#v459AttrPoints{
  padding:5px 8px;border:1px solid #806b35;border-radius:999px;background:#1d180c;color:#e9cc6a;
  font-size:8px;font-weight:1000;white-space:nowrap;
}
#character #attrs{
  display:grid!important;grid-template-columns:1fr!important;gap:6px!important;margin:0!important;
}
#character #attrs .attr{
  min-height:43px!important;padding:7px 9px!important;border-radius:10px!important;
  background:#0e1912!important;border:1px solid #314a35!important;
}
#character #attrs .attr span{font-size:10px!important}
#character #attrs .attr button{width:31px!important;height:31px!important;border-radius:9px!important}

/* Set and class configuration stay available, but no longer occupy the page all the time. */
.v459-extra{
  margin:0 0 8px;border:1px solid #304833;border-radius:12px;background:#0c1510;overflow:hidden;
}
.v459-extra > summary{
  list-style:none;display:flex;align-items:center;justify-content:space-between;min-height:44px;
  padding:8px 11px;color:#c8dcc5;font-size:10px;font-weight:1000;cursor:pointer;
}
.v459-extra > summary::-webkit-details-marker{display:none}
.v459-extra > summary:after{content:'＋';color:#78c968;font-size:15px}
.v459-extra[open] > summary:after{content:'−'}
.v459-extra > .card{margin:0!important;border:0!important;border-top:1px solid #2e4431!important;border-radius:0!important;box-shadow:none!important}

/* Compact 3-column inventory. Card tap opens V4.67 detail sheet. */
#character #inventory .inventory-grid{
  display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important;
}
#character #inventory .v268-sellbar{grid-column:1/-1!important;margin:0 0 2px!important}
#character #inventory .inv-item{
  min-width:0!important;min-height:102px!important;padding:8px 5px 7px!important;border-radius:12px!important;
  display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;
  cursor:pointer!important;overflow:hidden!important;text-align:center!important;
}
#character #inventory .inv-item .item-name{
  width:100%!important;margin:0!important;display:flex!important;flex-direction:column!important;align-items:center!important;
  gap:4px!important;font-size:7px!important;line-height:1.1!important;min-width:0!important;
}
#character #inventory .v459-inv-icon{font-size:27px!important;line-height:1!important;filter:drop-shadow(0 5px 5px #0008)}
#character #inventory .v459-inv-name{
  width:100%;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;
  min-height:15px;font-size:7px;font-weight:900;overflow-wrap:anywhere;
}
#character #inventory .rarity-badge{
  margin-top:3px!important;padding:2px 5px!important;font-size:5.8px!important;border-radius:999px!important;
}
#character #inventory .v459-inv-level{
  margin-top:4px;padding:2px 5px;border:1px solid #3d5940;border-radius:999px;background:#0a120d;
  color:#a9bcaa;font-size:6px;font-weight:900;
}
#character #inventory .item-bonus,
#character #inventory .compare,
#character #inventory .sell-price,
#character #inventory .inv-actions,
#character #inventory .set-tag,
#character #inventory .v296-mystic-special{display:none!important}
#character #inventory .v268-pick{
  top:4px!important;right:4px!important;width:23px!important;height:23px!important;border-radius:7px!important;
}
#character #inventory .v268-pick input{width:14px!important;height:14px!important}

/* Materials get their own tab and a denser grid, without changing apply handlers. */
#character #v030Materials .inventory-grid{
  display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important;
}
#character #v030Materials .inv-item{min-width:0!important;padding:9px!important;border-radius:12px!important}
#character #v030Materials .item-name{font-size:9px!important}
#character #v030Materials .item-bonus{font-size:8px!important;line-height:1.25!important}
#character #v030Materials .btn{font-size:8px!important;min-height:34px!important}

/* Talent tree keeps every existing node/mechanic, but now owns the full content width. */
#v459PanelTalents .card{padding:10px!important}
#v459PanelTalents .section-title{margin-bottom:8px!important}
#v459PanelTalents .section-title h2{font-size:17px!important}
#v459PanelTalents .skill-point-pill{font-size:8px!important}
#v459PanelTalents .v314-tree{gap:9px!important}
#v459PanelTalents .v314-branch{border-radius:14px!important}

/* Inventory detail bottom sheet */
#v459InventoryOverlay{
  position:fixed;inset:0;z-index:1000015;display:none;align-items:flex-end;justify-content:center;
  padding:12px;background:rgba(2,6,4,.84);backdrop-filter:blur(6px);
}
#v459InventoryOverlay.show{display:flex}
#v459InventorySheet{
  width:min(100%,440px);max-height:84vh;overflow:auto;padding:14px;border:1px solid #45634a;border-radius:20px 20px 14px 14px;
  background:radial-gradient(circle at 50% 0,rgba(102,213,83,.10),transparent 34%),linear-gradient(180deg,#142119,#080f0b);
  box-shadow:0 -12px 60px #000d;
}
.v459-sheet-head{text-align:center;padding-bottom:6px}
.v459-sheet-icon{font-size:46px;line-height:1}
.v459-sheet-name{margin:5px 0 2px;font-size:15px;font-weight:1000;line-height:1.2}
.v459-sheet-rarity{font-size:7px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#9eb0a0}
.v459-sheet-section{margin-top:8px;padding:9px;border:1px solid #304735;border-radius:10px;background:#0a130e;font-size:9px;line-height:1.45;color:#c7d4c5}
.v459-sheet-section > b{display:block;margin-bottom:4px;color:#90a592;font-size:7px;text-transform:uppercase;letter-spacing:.08em}
.v459-sheet-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:10px}
.v459-sheet-actions .btn{min-height:42px;font-size:9px}
#v459InventorySheet .v445-compare{font-size:8px!important}

@media(min-width:700px){
  #character{max-width:760px!important;margin:0 auto!important}
  #character .equipment-grid{grid-template-columns:82px minmax(0,1fr) 82px!important}
  #character .slot{height:72px!important;min-height:72px!important}
  #character .avatar-scene{height:150px!important}
  #character #inventory .inventory-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
  #v459InventoryOverlay{align-items:center!important}
  #v459InventorySheet{border-radius:20px!important}
}
@media(max-width:380px){
  #character .equipment-grid{grid-template-columns:59px minmax(0,1fr) 59px!important;gap:5px!important}
  #character .slot{height:59px!important;min-height:59px!important}
  #character .slot-icon{font-size:22px!important}
  #character .avatar-scene{height:116px!important}
  #character .class-avatar-big{font-size:74px!important}
  #v459CharacterTabs{gap:3px;padding:5px!important}
  #v459CharacterTabs button{font-size:6.4px!important}
  #character #inventory .inv-item{min-height:96px!important}
}
