/* R32 인벤토리·상인·툴팁·바닥 라벨 전용 스타일. 토큰·패널·리본·등급 칸은 ui-r32.css(공용, 수정 금지)를 쓴다. */
/* ---- 패널 ---- */
#inventory.inv-r32{--cell:clamp(24px,calc((100vh - 300px) / 13),38px);--doll-row:calc(var(--cell) * .84);position:fixed;z-index:20;left:auto;right:24px;top:72px;width:calc(var(--cell)*10 + 2*30px + 24px);height:auto;max-height:calc(100vh - 84px);padding:6px 12px 8px;overflow:auto;border-width:30px;border-image:var(--aw-panel) 108 / 46px / 4px stretch;background:radial-gradient(ellipse 90% 80% at 50% 35%,#1a140e 0,#0c0a08 60%,#070605 100%) padding-box;font-family:var(--aw-serif);color:var(--aw-text);scrollbar-color:#8d7248 #111}
#inventory.inv-r32:not([hidden]){display:block}
:is(#inventory.inv-r32,#stash-r32) .aw-ribbon{margin:0 auto 10px;white-space:nowrap}
.growth-panel.inv32-merchant .aw-ribbon{white-space:nowrap}
:is(#inventory.inv-r32,#stash-r32) .inv32-close{position:absolute;top:-8px;right:-6px;width:30px;height:30px;padding:0;border:1px solid var(--aw-gold-deep);background:#0b0907;color:var(--aw-gold);font:700 18px/1 var(--aw-serif);cursor:pointer;z-index:2}
:is(#inventory.inv-r32,#stash-r32) .inv32-close:hover{color:var(--aw-gold-hi);border-color:var(--aw-gold)}
/* ---- 장비 인형(고전 ARPG 배치: 왼쪽 무기, 오른쪽 보조 손, 가운데 투구·갑옷·허리띠, 아래 장갑·장화, 반지 2) ---- */
:is(#inventory.inv-r32,#stash-r32) .inv32-doll{position:relative;display:grid;grid-template-columns:repeat(10,var(--cell));grid-template-rows:repeat(7,var(--doll-row));gap:0;margin:0 auto 10px;width:calc(var(--cell)*10);
 grid-template-areas:
  "weapon weapon . . head head amulet . offhand offhand"
  "weapon weapon . . head head amulet . offhand offhand"
  "weapon weapon . . chest chest . . offhand offhand"
  "weapon weapon . . chest chest . . offhand offhand"
  ". . . . chest chest . . . ."
  "hands hands . ring belt belt ring2 . feet feet"
  "hands hands . . . . . . feet feet"}
:is(#inventory.inv-r32,#stash-r32) .inv32-silhouette{position:absolute;left:50%;top:-4px;width:150px;height:calc(var(--doll-row)*7 + 8px);transform:translateX(-50%);pointer-events:none;opacity:.22;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 150'%3E%3Cg fill='%23c9a35c'%3E%3Cpath d='M50 6c-9 0-15 7-15 16s6 17 15 17 15-8 15-17S59 6 50 6z'/%3E%3Cpath d='M30 44h40l12 10 6 34-9 2-6-26-2 30 5 54H58l-8-42-8 42H34l5-54-2-30-6 26-9-2 6-34z'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat}
:is(#inventory.inv-r32,#stash-r32) .inv32-slot{position:relative;display:flex;align-items:center;justify-content:center;min-width:0;min-height:0;margin:2px;padding:0;border-width:6px;border-image-width:6px;cursor:pointer;overflow:hidden;color:var(--aw-text-mute)}
:is(#inventory.inv-r32,#stash-r32) .inv32-slot:is(.magic,.rare,.unique,.set){box-shadow:0 0 10px -2px currentColor}
:is(#inventory.inv-r32,#stash-r32) .inv32-slot.magic{color:var(--aw-r-magic)}:is(#inventory.inv-r32,#stash-r32) .inv32-slot.rare{color:var(--aw-r-rare)}:is(#inventory.inv-r32,#stash-r32) .inv32-slot.unique{color:var(--aw-r-unique)}:is(#inventory.inv-r32,#stash-r32) .inv32-slot.set{color:var(--aw-r-set)}:is(#inventory.inv-r32,#stash-r32) .inv32-slot.crafted{color:var(--aw-r-crafted);box-shadow:inset 0 0 0 1px var(--aw-r-crafted)}
:is(#inventory.inv-r32,#stash-r32) .inv32-slot:hover{filter:brightness(1.25)}
:is(#inventory.inv-r32,#stash-r32) .inv32-slot-name{font:600 10px/1.2 var(--aw-serif);letter-spacing:.06em;color:var(--aw-text-mute);text-align:center;white-space:normal}
/* ---- 격자 가방 ---- */
:is(#inventory.inv-r32,#stash-r32) .inv32-bag-wrap{padding:3px;margin:0 auto;width:calc(var(--cell)*10);border:1px solid var(--aw-gold-deep);background:#060504;box-shadow:inset 0 0 12px #000}
:is(#inventory.inv-r32,#stash-r32) .inv32-bag{position:relative;width:calc(var(--cell)*var(--cols,10));height:calc(var(--cell)*var(--rows,6));background:linear-gradient(90deg,#3a2d1d 1px,transparent 1px) 0 0/var(--cell) var(--cell),linear-gradient(0deg,#3a2d1d 1px,transparent 1px) 0 0/var(--cell) var(--cell),#0d0b09;outline:1px solid #3a2d1d}
.inv32-merchant .inv32-grid{position:relative;width:calc(38px*var(--cols,10));height:calc(38px*var(--rows,4));background:
 repeating-linear-gradient(90deg,transparent 0 37px,#3a2d1d 37px 38px),repeating-linear-gradient(0deg,transparent 0 37px,#3a2d1d 37px 38px),#0d0b09;background-position:0 0;outline:1px solid #3a2d1d}
:is(#inventory.inv-r32,#stash-r32) .inv32-item,.inv32-merchant .inv32-vendor-cell{position:absolute;box-sizing:border-box;margin:0;padding:0;border-width:4px;border-image-width:4px;overflow:hidden;cursor:pointer;background:#0a0908;min-width:0;min-height:0}
:is(#inventory.inv-r32,#stash-r32) .inv32-item:is(.magic,.rare,.unique,.set,.crafted),.inv32-merchant .inv32-vendor-cell:is(.magic,.rare,.unique,.set,.crafted){background:radial-gradient(circle at 50% 45%,color-mix(in srgb,currentColor 22%,transparent),#0a0908 70%)}
:is(#inventory.inv-r32,#stash-r32) .inv32-item.magic,.inv32-merchant .inv32-vendor-cell.magic{color:var(--aw-r-magic)}:is(#inventory.inv-r32,#stash-r32) .inv32-item.rare,.inv32-merchant .inv32-vendor-cell.rare{color:var(--aw-r-rare)}:is(#inventory.inv-r32,#stash-r32) .inv32-item.unique,.inv32-merchant .inv32-vendor-cell.unique{color:var(--aw-r-unique)}:is(#inventory.inv-r32,#stash-r32) .inv32-item.set,.inv32-merchant .inv32-vendor-cell.set{color:var(--aw-r-set)}
:is(#inventory.inv-r32,#stash-r32) .inv32-item.crafted,.inv32-merchant .inv32-vendor-cell.crafted{color:var(--aw-r-crafted);box-shadow:inset 0 0 0 1px var(--aw-r-crafted)}
:is(#inventory.inv-r32,#stash-r32) .inv32-item:hover,.inv32-merchant .inv32-vendor-cell:hover:not(:disabled){filter:brightness(1.3);z-index:1}
:is(#inventory.inv-r32,#stash-r32) .inv32-hint{position:absolute;pointer-events:none;z-index:3;box-sizing:border-box;border:1px solid}
:is(#inventory.inv-r32,#stash-r32) .inv32-hint[data-state=ok]{background:#3fa34a33;border-color:#6fdc7a}:is(#inventory.inv-r32,#stash-r32) .inv32-hint[data-state=swap]{background:#c9a45c33;border-color:#e8c983}:is(#inventory.inv-r32,#stash-r32) .inv32-hint[data-state=bad]{background:#b8382a33;border-color:#e0604c}
:is(#inventory.inv-r32,#stash-r32) .inv32-hint[hidden]{display:none}
/* 아이콘: 원화 배경이 어두운 불투명이라 lighten 으로 칸 배경에 녹인다 */
.inv32-icon{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;mix-blend-mode:lighten;pointer-events:none;filter:drop-shadow(0 2px 2px #000)}
.inv32-icon.inv32-tall{inset:auto;left:50%;top:50%;width:auto;height:72%;aspect-ratio:1;transform:translate(-50%,-50%) rotate(-45deg) scale(1.35)}
.inv32-icon[data-missing]{display:none}
.inv32-stack{position:absolute;right:2px;bottom:0;font:700 11px/1.1 var(--aw-serif);color:#f3e7c8;text-shadow:0 1px 2px #000,0 0 3px #000;pointer-events:none}
.inv32-ghost{position:fixed;z-index:9100;pointer-events:none;box-sizing:border-box;border-width:4px;border-image-width:4px;opacity:.92;filter:drop-shadow(0 6px 12px #000)}
.inv32-ghost[hidden]{display:none}
body.inv32-holding,body.inv32-holding *{cursor:grabbing!important}
/* ---- 하단 정보 ---- */
:is(#inventory.inv-r32,#stash-r32) .inv32-foot{display:flex;flex-wrap:wrap;gap:4px 12px;justify-content:center;margin:9px 0 0;font:600 12px/1.4 var(--aw-serif);color:var(--aw-text-dim)}
:is(#inventory.inv-r32,#stash-r32) .inv32-foot .inv32-hp{color:#e07a6a}:is(#inventory.inv-r32,#stash-r32) .inv32-foot .inv32-mp{color:#8fa0ff}
:is(#inventory.inv-r32,#stash-r32) .inv32-help{margin:4px 0 0;text-align:center;font:11px/1.3 var(--aw-serif);color:var(--aw-text-mute)}
.inv32-gold{display:inline-flex;align-items:center;gap:5px;color:var(--aw-gold-hi)}
.inv32-coin{display:inline-block;width:11px;height:11px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff3b0 0 18%,#e8b84a 40%,#8a5a1c 100%);box-shadow:0 0 0 1px #3d2808,0 1px 2px #000;flex:none}
/* ---- 공용 아이템 툴팁(#item-comparison 을 aw-tooltip 으로) ---- */
body .comparison-tooltip.inv32-tooltip{width:auto;min-width:220px;max-width:340px;max-height:80vh;padding:12px 16px 13px;background:linear-gradient(#0c0a08f5,#060504f5);border:1px solid var(--aw-gold-deep);box-shadow:0 0 0 1px #000,0 0 0 3px #1b140c,0 12px 34px #000d;font:13px/1.5 var(--aw-serif);color:var(--aw-text);text-align:center;white-space:normal;z-index:9000}
body .comparison-tooltip.inv32-tooltip .inv32-tt-head{display:flex;flex-direction:column;align-items:center;gap:4px;margin-bottom:2px}
body .comparison-tooltip.inv32-tooltip .inv32-tt-icon{width:48px;height:48px;object-fit:contain;mix-blend-mode:lighten}
body .comparison-tooltip.inv32-tooltip h3{margin:0;font:800 15px/1.3 var(--aw-serif);letter-spacing:.03em;overflow-wrap:anywhere;white-space:normal}
body .comparison-tooltip.inv32-tooltip h3.aw-r-normal{color:var(--aw-r-normal)}body .comparison-tooltip.inv32-tooltip h3.aw-r-magic{color:var(--aw-r-magic)}body .comparison-tooltip.inv32-tooltip h3.aw-r-rare{color:var(--aw-r-rare)}body .comparison-tooltip.inv32-tooltip h3.aw-r-unique{color:var(--aw-r-unique)}body .comparison-tooltip.inv32-tooltip h3.aw-r-set{color:var(--aw-r-set)}body .comparison-tooltip.inv32-tooltip h3.aw-r-crafted{color:var(--aw-r-crafted)}
body .comparison-tooltip.inv32-tooltip .inv32-tt-line{display:block;margin:0;text-align:center;font:13px/1.5 var(--aw-serif)}
body .comparison-tooltip.inv32-tooltip .inv32-tt-line.aw-tt-mod{color:var(--aw-r-magic)}body .comparison-tooltip.inv32-tooltip .inv32-tt-line:is(.aw-r-magic){color:var(--aw-r-magic)}body .comparison-tooltip.inv32-tooltip .inv32-tt-line:is(.aw-r-rare){color:var(--aw-r-rare)}body .comparison-tooltip.inv32-tooltip .inv32-tt-line:is(.aw-r-unique){color:var(--aw-r-unique)}body .comparison-tooltip.inv32-tooltip .inv32-tt-line:is(.aw-r-set){color:var(--aw-r-set)}body .comparison-tooltip.inv32-tooltip .inv32-tt-line:is(.aw-r-crafted){color:var(--aw-r-crafted)}
.inv32-tt-line{overflow-wrap:anywhere}
body .comparison-tooltip.inv32-tooltip .inv32-tt-line.aw-tt-sub{font-size:12px;color:var(--aw-text-dim)}
body .comparison-tooltip.inv32-tooltip .inv32-tt-line.inv32-good{color:var(--aw-ok)}body .comparison-tooltip.inv32-tooltip .inv32-tt-line.inv32-bad{color:var(--aw-danger)}body .comparison-tooltip.inv32-tooltip .inv32-tt-line.inv32-off{color:var(--aw-text-mute);font-size:12px}
body .comparison-tooltip.inv32-tooltip .inv32-tt-line.inv32-compare{margin-top:6px;padding-top:5px;border-top:1px solid #3a2d1d}
body .comparison-tooltip.inv32-tooltip .inv32-tt-line.inv32-lore{color:var(--aw-r-unique);font-style:italic;font-size:12px;margin-top:4px}
/* R32lore: 고유·세트 한 줄 설화 — 능력치 아래, 기울임·흐린 금색(--aw-r-unique 를 어둡게), 위에 가는 구분선 */
body .comparison-tooltip.inv32-tooltip .inv32-tt-line.inv32-flavor{color:color-mix(in srgb,var(--aw-r-unique) 72%,#000);font-style:italic;font-size:12.5px;line-height:1.5;letter-spacing:.02em;margin:7px auto 3px;padding-top:6px;max-width:300px;border-top:1px solid #5a412666;text-shadow:0 1px 2px #000}
body .comparison-tooltip.inv32-tooltip .inv32-tt-line.inv32-tt-price{margin-top:6px;color:var(--aw-gold-hi)}
body .comparison-tooltip.inv32-tooltip .inv32-tt-line.inv32-hp{color:#ff8a78}body .comparison-tooltip.inv32-tooltip .inv32-tt-line.inv32-mp{color:#9fb0ff}
/* ---- 상인 창(격자 + 가격 배지) ---- */
.growth-panel.inv32-merchant{position:fixed;width:min(calc(38px*10 + 2*30px + 28px),calc(100vw - 24px));max-height:calc(100vh - 150px);padding:6px 14px 10px;border:30px solid transparent;border-image:var(--aw-panel) 108 / 46px / 4px stretch;outline:0;background:radial-gradient(ellipse 90% 80% at 50% 35%,#1a140e 0,#0c0a08 60%,#070605 100%) padding-box;font-family:var(--aw-serif);color:var(--aw-text)}
.growth-panel.inv32-merchant header{border-bottom:0;justify-content:center;position:relative;font:800 19px/1 var(--aw-serif);letter-spacing:.25em;color:var(--aw-gold)}
.growth-panel.inv32-merchant header .growth-close{position:absolute;right:-6px;top:-8px}
.growth-panel.inv32-merchant h3{margin:10px 0 6px;font:700 13px/1.2 var(--aw-serif);letter-spacing:.14em;color:var(--aw-gold);text-align:left}
.growth-panel.inv32-merchant .inv32-grid{display:block;margin:0 auto;padding:0;grid-template-columns:none}
.growth-panel.inv32-merchant .inv32-vendor-cell{display:block;font-size:0}
.growth-panel.inv32-merchant .inv32-vendor-cell:disabled{filter:grayscale(.6) brightness(.65);cursor:not-allowed}
.inv32-price{position:absolute;left:1px;right:1px;bottom:0;display:flex;align-items:center;justify-content:flex-end;gap:3px;padding:0 2px;background:linear-gradient(transparent,#000c 45%);font:700 10px/1.3 var(--aw-serif);color:var(--aw-gold-hi);pointer-events:none}
.inv32-price .inv32-coin{width:8px;height:8px}
.growth-panel.inv32-merchant .merchant-gold{display:flex;justify-content:flex-end;align-items:center;gap:6px;margin:8px 0 0;font:700 14px var(--aw-serif);color:var(--aw-gold-hi)}
.growth-panel.inv32-merchant .merchant-gold::before{content:'';width:12px;height:12px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff3b0 0 18%,#e8b84a 40%,#8a5a1c 100%);box-shadow:0 0 0 1px #3d2808}
.growth-panel.inv32-merchant .inv32-empty{position:absolute;inset:0;display:grid;place-items:center;margin:0;color:var(--aw-text-mute);font-size:12px}
/* ---- 바닥 아이템 라벨: 반투명 검은 상자 + 등급 색 글자, 고유/세트는 금 테(빛기둥과 같은 색) ---- */
#loot-labels .drop-label{padding:3px 9px 3px 8px;background:#000000b8;border:1px solid #ffffff14;font:600 12px/1.35 var(--aw-serif);letter-spacing:.02em;box-shadow:0 1px 4px #000}
#loot-labels .drop-label[data-icon]{padding-left:26px;background:var(--loot-icon) 4px 50%/18px 18px no-repeat,#000000b8;background-blend-mode:lighten,normal}
#loot-labels .drop-label[data-rarity=common]{color:var(--aw-r-normal)!important}
#loot-labels .drop-label[data-rarity=magic]{color:var(--aw-r-magic)!important}
#loot-labels .drop-label[data-rarity=rare]{color:var(--aw-r-rare)!important}
#loot-labels .drop-label[data-rarity=crafted]{color:var(--aw-r-crafted)!important}
#loot-labels .drop-label[data-rarity=set]{color:var(--aw-r-set)!important;border-color:var(--aw-r-set);box-shadow:0 0 8px #4fd26f55}
#loot-labels .drop-label[data-rarity=legendary]{color:var(--aw-r-unique)!important;border-color:var(--aw-r-unique);box-shadow:0 0 10px #c9a45c88}
#loot-labels .drop-label[data-nearest=true]{background-color:#1a140ef2;outline:1px solid var(--aw-gold-hi)}
#loot-labels .drop-label[data-icon][data-nearest=true]{background:var(--loot-icon) 4px 50%/18px 18px no-repeat,#1a140ef2}
@media(max-width:700px){#inventory.inv-r32{--cell:30px;--doll-row:26px;right:8px;left:8px;width:auto}.growth-panel.inv32-merchant{width:calc(100vw - 16px)}}

body .comparison-tooltip.inv32-tooltip .inv32-tt-line.aw-tt-bad{color:var(--aw-danger)}
:is(#inventory.inv-r32,#stash-r32) .inv32-icon.inv32-twohand{opacity:.28;filter:grayscale(1)}
/* ---- R32v2: 보관함 창·벨트 줄·정렬 버튼 ---- */
#stash-r32.inv32-stash{--cell:clamp(24px,calc((100vh - 300px) / 13),38px);position:fixed;z-index:20;top:72px;right:calc(24px + var(--cell)*10 + 2*30px + 24px + 14px);width:calc(var(--cell)*10 + 2*30px + 24px);max-height:calc(100vh - 84px);padding:6px 12px 10px;overflow:visible;box-sizing:content-box}
#stash-r32.inv32-stash[hidden]{display:none}
#stash-r32 .aw-ribbon{margin:0 auto 8px;white-space:nowrap}
#stash-r32 .inv32-close{position:absolute;top:0;right:0;width:30px;height:30px;padding:0;border:1px solid var(--aw-gold-deep);background:#0b0907;color:var(--aw-gold);font:700 18px/1 var(--aw-serif);cursor:pointer;z-index:2}
:is(#inventory.inv-r32,#stash-r32) .inv32-tools{display:flex;align-items:center;justify-content:space-between;gap:8px;width:calc(var(--cell)*10);margin:0 auto 6px}
:is(#inventory.inv-r32,#stash-r32) .inv32-sort{min-height:28px;padding:0 10px;border-width:8px 12px;border-image-width:8px 12px;font-size:12px;letter-spacing:.1em}
#stash-r32 .inv32-stash-note{font:12px/1.2 var(--aw-serif);color:var(--aw-text-dim)}
#inventory.inv-r32 .inv32-belt{display:flex;align-items:center;gap:6px}
#inventory.inv-r32 .inv32-belt-label{font:700 12px/1 var(--aw-serif);color:var(--aw-gold);letter-spacing:.12em}
#inventory.inv-r32 .inv32-belt-cell{position:relative;display:inline-flex;align-items:center;gap:3px;height:calc(var(--cell)*.8);padding:0 6px 0 calc(var(--cell)*.8 + 2px);border:1px solid #3a2d1d;background:#0a0908;font:700 11px/1 var(--aw-serif);color:#f3e7c8}
#inventory.inv-r32 .inv32-belt-cell .inv32-icon{inset:auto;left:0;top:0;width:calc(var(--cell)*.8);height:calc(var(--cell)*.8)}
#inventory.inv-r32 .inv32-belt-cell kbd{font:600 10px var(--aw-serif);color:var(--aw-text-mute);margin-left:2px}
#inventory.inv-r32 .inv32-belt-cell.empty{opacity:.45}
.inv32-stash-marker{white-space:nowrap}
/* ---- R32c 상점 창: 왼쪽 상점(탭+10×10+물약 줄) · 오른쪽 가방(판매). 내용 크기에 맞춤, 스크롤 없음 ---- */
body .growth-panel.inv32-merchant{--vcell:clamp(22px,calc((100vh - 330px) / 11),34px);width:max-content;max-width:calc(100vw - 24px);max-height:none;overflow:visible;padding:4px 14px 10px;top:56px}
body .growth-panel.inv32-merchant .inv32-shop-body{display:flex;gap:22px;align-items:flex-start}
body .growth-panel.inv32-merchant .inv32-shop-col{display:flex;flex-direction:column;gap:6px}
body .growth-panel.inv32-merchant h3{margin:4px 0 2px}
body .growth-panel.inv32-merchant .inv32-grid{margin:0;width:calc(var(--vcell)*var(--cols,10));height:calc(var(--vcell)*var(--rows,10));background:linear-gradient(90deg,#3a2d1d 1px,transparent 1px) 0 0/var(--vcell) var(--vcell),linear-gradient(0deg,#3a2d1d 1px,transparent 1px) 0 0/var(--vcell) var(--vcell),#0d0b09}
body .growth-panel.inv32-merchant .inv32-shop-tabs{display:flex;gap:6px}
body .growth-panel.inv32-merchant .inv32-shop-tab{min-height:30px;padding:0 12px;border-width:8px 12px;border-image-width:8px 12px;font-size:12px;letter-spacing:.12em}
body .growth-panel.inv32-merchant .inv32-shop-potions{display:flex;align-items:center;gap:6px;height:calc(var(--vcell)*1.15)}
body .growth-panel.inv32-merchant .inv32-shop-potions-label{font:700 12px/1 var(--aw-serif);color:var(--aw-gold);letter-spacing:.12em;margin-right:4px}
body .growth-panel.inv32-merchant .inv32-shop-potions .inv32-vendor-cell{position:relative;width:calc(var(--vcell)*1.15);height:calc(var(--vcell)*1.15)}
body .growth-panel.inv32-merchant .merchant-gold{margin:4px 0 0}
/* ---- R32ui 해상도 행렬 수정: 닫기 X 는 스크롤 상자 안쪽 모서리에(밖으로 빼면 overflow 에 잘림) · 반지 칸 이름은 한 줄 작게 · 좁은 화면 상점은 세로로 쌓기 ---- */
#inventory.inv-r32 .inv32-close{top:0;right:0}
:is(#inventory.inv-r32,#stash-r32) .inv32-slot:is([data-slot=ring],[data-slot=ring2]){margin:1px;border-width:3px;border-image-width:3px}
:is(#inventory.inv-r32,#stash-r32) .inv32-slot:is([data-slot=ring],[data-slot=ring2]) .inv32-slot-name{font-size:9px;line-height:1;letter-spacing:0;white-space:nowrap}
@media(max-width:700px){
 body .growth-panel.inv32-merchant{--vcell:calc((100vw - 16px - 60px - 28px) / 10);left:8px!important;right:8px!important;top:48px;transform:none!important;width:auto;max-width:none;box-sizing:border-box}
 body .growth-panel.inv32-merchant .inv32-shop-body{flex-direction:column;gap:6px}
 body .growth-panel.inv32-merchant header .growth-close{right:0;top:0}
 body .growth-panel.inv32-merchant .inv32-shop-potions{height:calc(var(--vcell)*1.1)}
}
/* ---- R32ui 상점 가독성: 칸 안 가격 숫자 제거(툴팁 '구매가'), 못 사는 칸도 아이콘은 가방과 같은 밝기(아래 붉은 줄로만 표시), 등급 테두리, 물약 칸 = 진열 칸 크기 ---- */
body .growth-panel.inv32-merchant .inv32-vendor-cell{opacity:1;filter:none}
body .growth-panel.inv32-merchant .inv32-vendor-cell.inv32-unaffordable{cursor:not-allowed;box-shadow:inset 0 -3px 0 #b8382acc}
body .growth-panel.inv32-merchant .inv32-vendor-cell.inv32-unaffordable .inv32-icon{filter:saturate(.8) drop-shadow(0 2px 2px #000)}
body .growth-panel.inv32-merchant .inv32-vendor-cell:is(.magic,.rare,.unique,.set,.legendary){box-shadow:inset 0 0 0 1px currentColor,0 0 8px -2px currentColor}
body .growth-panel.inv32-merchant .inv32-vendor-cell.inv32-unaffordable:is(.magic,.rare,.unique,.set,.legendary){box-shadow:inset 0 0 0 1px currentColor,inset 0 -3px 0 #b8382acc,0 0 8px -2px currentColor}
body .growth-panel.inv32-merchant .inv32-vendor-cell:hover{filter:brightness(1.3)}
body .growth-panel.inv32-merchant .inv32-shop-potions{height:auto}
body .growth-panel.inv32-merchant .inv32-shop-potions .inv32-vendor-cell{width:var(--vcell);height:var(--vcell)}
body .growth-panel.inv32-merchant .inv32-price{display:none}
/* R32p2: 물약 칸 = 진열 1×1 칸과 정확히 같은 크기(flex 축소 금지, 테두리 4px 동일) */
body .growth-panel.inv32-merchant .inv32-shop-potions .inv32-vendor-cell{flex:0 0 var(--vcell);box-sizing:border-box;width:var(--vcell);height:var(--vcell);min-width:var(--vcell);min-height:var(--vcell);border-width:4px;border-image-width:4px;padding:0;margin:0}
