/* Shared protector artwork and inventory entry points; no economy logic. */
.protector-menu-art { object-fit:contain; flex:none; }
.energy64-panel { overflow:hidden; border:1px solid var(--theme-border); border-radius:14px; background:var(--theme-surface); }
.energy64-panel .energy64-counter { border:0; border-radius:0; min-height:46px; padding:10px 12px; background:transparent; }
.energy64-panel .energy64-counter__copy { gap:3px; }
.energy64-panel .energy64-counter__copy small { font-size:10px; }
.protector-pocket { display:flex; align-items:center; gap:7px; min-height:50px; padding:6px 9px; border-top:1px solid var(--theme-border); color:var(--theme-title); text-decoration:none; background:var(--theme-surface-alt); }
.protector-pocket img { object-fit:contain; flex:none; }
.protector-pocket>span { display:grid; gap:3px; min-width:0; flex:1; }
.protector-pocket strong { font-size:11px; line-height:1.3; font-weight:750; }
.protector-pocket small { font-size:9px; color:var(--text-muted); }
.protector-pocket>b { font-size:11px; font-variant-numeric:tabular-nums; white-space:nowrap; background:var(--theme-surface); border:1px solid var(--theme-border); padding:4px 5px; border-radius:8px; }
.protector-pocket:hover { background:var(--theme-surface); }
.protector-pocket:focus-visible,.protector-preview__link:focus-visible { outline:2px solid var(--theme-accent-text); outline-offset:-3px; }
.protector-preview.card { display:flex; align-items:center; flex-wrap:wrap; gap:18px; padding:20px; border-radius:18px; background:var(--theme-surface); border:1px solid var(--theme-border); }
.protector-preview__art { display:flex; align-items:center; justify-content:center; width:84px; height:84px; flex:none; background:var(--theme-surface-alt); border-radius:20px; }
.protector-preview__art img { object-fit:contain; }
.protector-preview__copy { flex:1; min-width:180px; }
.protector-preview__copy h2 { margin:0 0 5px; font-size:18px; font-weight:800; color:var(--theme-title); }
.protector-preview__copy p { margin:0; color:var(--text-muted); font-size:13px; line-height:1.5; }
.protector-preview__stats { display:flex; flex-wrap:wrap; gap:8px 14px; margin-top:10px; font-size:12px; color:var(--text-muted); }
.protector-preview__stats>span { display:inline-flex; align-items:center; flex-wrap:wrap; gap:4px; padding:6px 9px; border-radius:8px; background:var(--theme-surface-alt); }
.protector-preview__stats b { color:var(--theme-title); font-variant-numeric:tabular-nums; }
.protector-preview__coins i { font-style:normal; color:var(--theme-accent-text); }
.protector-preview__link { display:flex; align-items:center; justify-content:center; gap:16px; min-height:44px; padding:10px 14px; border:1px solid var(--theme-border); border-radius:12px; font-size:12px; font-weight:750; text-decoration:none; color:var(--theme-accent-text); background:var(--theme-surface-alt); }
.protector-inventory { display:grid; gap:18px; padding:24px; border:1px solid var(--theme-border); border-radius:20px; background:var(--theme-surface); width:min(100%,680px); }
.protector-inventory>header { display:flex; align-items:center; gap:12px; justify-content:space-between; }
.protector-inventory h2 { color:var(--theme-title); font-size:20px; margin:0 0 4px; }
.protector-inventory p { margin:0; font-size:14px; line-height:1.6; color:var(--text-muted); }
.protector-inventory>header p { font-size:12px; }
.protector-inventory>header>strong { color:var(--theme-accent-text); font-size:24px; font-variant-numeric:tabular-nums; white-space:nowrap; }
.protector-inventory>a { justify-self:start; }
.protector-slots { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.protector-slot { min-height:126px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:4px; background:var(--theme-surface-alt); border:1px solid var(--theme-border); border-radius:16px; }
.protector-slot img { object-fit:contain; }
.protector-slot span { font-size:12px; color:var(--theme-accent-text); font-weight:750; }
.protector-slot.is-empty { border-style:dashed; }
.protector-slot.is-empty img { opacity:.3; }
.protector-slot.is-empty span { color:var(--text-muted); }
.store-history li { display:flex; align-items:center; gap:8px; }
body:has(.puzzle-journey-room) .energy64-panel { display:none; }
@media(max-width:620px) { .protector-inventory { padding:16px; gap:16px; } .protector-inventory h2 { font-size:18px; } }
@media(max-width:620px) { .protector-preview.card { gap:12px; padding:16px; } .protector-preview__art { width:60px; height:60px; border-radius:14px; } .protector-preview__art img { width:56px; height:56px; } .protector-preview__copy { min-width:145px; } .protector-preview__copy h2 { font-size:17px; } .protector-preview__link { width:100%; } }
