/* AniHoshi — Mana Shop (/community/shop). Hooks: mana-shop.js (.shop-layout, .shop-card data-*, #pv-*, #shop-*-btn). */

.hc-shop .shop-page-wrap { position: relative; }
.hc-shop-head { align-items: center; }

/* wallet */
.hc-wallet { display: flex; align-items: center; gap: 14px; min-width: 260px; padding: 12px 16px 12px 12px; border-radius: var(--hc-r); border: 1px solid var(--hs-line); background: linear-gradient(120deg, var(--hs-ac-soft), transparent 70%), var(--hs-bg-2); }
.hc-wallet-av { position: relative; width: 52px; height: 52px; flex-shrink: 0; border-radius: 50%; background: var(--hs-raise); }
.hc-wallet-av > img { width: 100%; height: 100%; object-fit: cover; border-radius: 50%; display: block; }
.hc-wallet-tx { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.hc-wallet-lbl { font-size: 11px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; color: var(--hs-tx-4); }
.hc-wallet .ph-mana { display: flex; align-items: center; gap: 8px; font: 800 24px/1.1 var(--hs-f-head); color: var(--hs-tx); font-variant-numeric: tabular-nums; }
.hc-wallet .ph-mana .mana-icon { width: 18px; height: 18px; font-size: 10px; vertical-align: 0; }
.hc-wallet .ph-rank { display: flex; align-items: center; gap: 4px; font-size: 12.5px; font-weight: 700; color: var(--hs-tx-3); }
.hc-wallet-guest { font-size: 13px; color: var(--hs-tx-3); }
.hc-wallet-guest a { color: var(--hs-ac); font-weight: 700; }

/* view + kind bar */
.hc-shop-bar { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; margin-bottom: 14px; padding-bottom: 14px; border-bottom: 1px solid var(--hs-line); }
.hc-shop-bar .hc-seg-btn { height: 28px; padding: 0 12px; font-size: 12.5px; }
.hc-shop-bar .hc-seg-btn i { font-size: 11px; }
.hc-shop .shop-kind-tabs { display: flex; gap: 4px; }
.hc-shop .shop-kind-tab { display: inline-flex; align-items: center; gap: 7px; height: 32px; padding: 0 12px; border-radius: var(--hc-r); border: 1px solid var(--hs-line); background: var(--hs-bg-2); color: var(--hs-tx-3); font-size: 12.5px; font-weight: 700; }
.hc-shop .shop-kind-tab i { font-size: 11px; }
body.hc-body .hc-shop .shop-kind-tab:hover { color: var(--hs-tx); border-color: var(--hs-line-2); }
.hc-shop .shop-kind-tab.is-on { border-color: var(--hs-ac); background: var(--hs-ac-soft); color: var(--hs-tx); }
.hc-shop .shop-kind-tab.is-on i { color: var(--hs-ac); }

/* layout */
.hc-shop .shop-layout { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 20px; align-items: start; }
.hc-shop .shop-main { min-width: 0; }
.hc-shop .shop-layout.is-busy { pointer-events: none; }

.hc-shop .shop-cat-chips { display: flex; gap: 6px; margin-bottom: 12px; overflow-x: auto; }
.hc-shop .shop-cat-chip { display: inline-flex; align-items: center; gap: 6px; flex-shrink: 0; height: 28px; padding: 0 10px; border-radius: 3px; border: 1px solid var(--hs-line); background: var(--hs-bg-2); color: var(--hs-tx-3); font-size: 12px; font-weight: 700; }
.hc-shop .shop-cat-chip i { font-size: 10.5px; }
body.hc-body .hc-shop .shop-cat-chip:hover { color: var(--hs-tx); }
.hc-shop .shop-cat-chip.is-on { background: var(--hs-ac-fill); border-color: var(--hs-ac-fill); color: #fff !important; }

.hc-shop .shop-filters { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 10px; margin-bottom: 14px; padding: 12px; border-radius: var(--hc-r); border: 1px solid var(--hs-line); background: var(--hs-bg-2); }
.hc-shop .shop-field { display: flex; flex-direction: column; gap: 5px; min-width: 150px; margin: 0; }
.hc-shop .shop-field-search { flex: 1 1 220px; }
.hc-shop .shop-field-label { font-size: 10.5px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; color: var(--hs-tx-4); }
.hc-shop .shop-select, .hc-shop .shop-search input { width: 100%; height: 34px; border-radius: var(--hc-r); border: 1px solid var(--hs-line-2); background-color: var(--hs-field); color: var(--hs-tx); font: 600 13px var(--hs-f-body); outline: 0; transition: border-color .15s; }
.hc-shop .shop-select { appearance: none; -webkit-appearance: none; padding: 0 30px 0 10px; cursor: pointer; background-image: linear-gradient(45deg, transparent 50%, var(--hs-tx-4) 50%), linear-gradient(135deg, var(--hs-tx-4) 50%, transparent 50%); background-position: calc(100% - 15px) 50%, calc(100% - 10px) 50%; background-size: 5px 5px; background-repeat: no-repeat; }
.hc-shop .shop-select option { background: var(--hs-bg-2); color: var(--hs-tx); }
.hc-shop .shop-select:focus, .hc-shop .shop-search input:focus { border-color: var(--hs-ac); }
.hc-shop .shop-search { position: relative; display: block; }
.hc-shop .shop-search i { position: absolute; left: 11px; top: 50%; transform: translateY(-50%); font-size: 12px; color: var(--hs-tx-4); }
.hc-shop .shop-search input { padding: 0 10px 0 31px; }
.hc-shop .shop-search input::placeholder { color: var(--hs-tx-4); }
.hc-shop .shop-filter-go { height: 34px; padding: 0 16px; }

.hc-shop-list { border-radius: var(--hc-r); border: 1px solid var(--hs-line); background: var(--hs-bg-2); }
.hc-shop-list-h { display: flex; align-items: center; justify-content: space-between; gap: 10px; flex-wrap: wrap; margin: 0; padding: 12px 14px; border-bottom: 1px solid var(--hs-line); font: 700 12px var(--hs-f-body); letter-spacing: .13em; text-transform: uppercase; color: var(--hs-tx); }
.hc-shop-list-h .sub { font-size: 12px; font-weight: 600; letter-spacing: 0; text-transform: none; color: var(--hs-tx-4); }

/* item grid + cards (partials/shop-card) */
.hc-shop .shop-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(148px, 1fr)); gap: 10px; padding: 14px; }
.hc-shop .shop-card { position: relative; display: flex; flex-direction: column; align-items: stretch; width: 100%; padding: 12px 10px 10px; border-radius: var(--hc-r); border: 1px solid var(--hs-line); background: var(--hs-bg-3); color: var(--hs-tx); font-family: inherit; text-align: center; cursor: pointer; transition: border-color .15s, background .15s, transform .15s; }
.hc-shop .shop-card:hover { border-color: var(--hs-line-2); transform: translateY(-1px); }
.hc-shop .shop-card.is-on { border-color: var(--hs-ac); background: color-mix(in srgb, var(--hs-ac) 8%, var(--hs-bg-3)); box-shadow: inset 0 0 0 1px var(--hs-ac); }
.hc-shop .shop-card.is-owned { border-color: color-mix(in srgb, var(--hs-ok, #3EE08F) 35%, var(--hs-line)); }
.hc-shop .shop-card.is-owned.is-on { border-color: var(--hs-ac); }
.hc-shop .sc-preview { position: relative; display: flex; align-items: center; justify-content: center; height: 92px; margin-bottom: 8px; }
.hc-shop .shop-av { position: relative; width: 62px; height: 62px; flex-shrink: 0; }
.hc-shop .shop-av img.pfp { width: 100%; height: 100%; display: block; border-radius: 50%; object-fit: cover; background: var(--hs-raise); }
.hc-shop .shop-av img.deco { position: absolute; top: -10%; left: -10%; width: 120%; height: 120%; max-width: none; object-fit: contain; pointer-events: none; }
.hc-shop .shop-title-preview { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 7px; width: 100%; min-height: 76px; padding: 8px; border-radius: 3px; border: 1px dashed var(--hs-line-2); background: var(--hs-bg-2); color: var(--hs-tx); font-size: 13px; font-weight: 700; }
.hc-shop .shop-title-preview i { font-size: 17px; color: var(--hs-dub); }
.hc-shop .shop-title-preview span { line-height: 1.25; max-width: 100%; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.hc-shop .sc-owned-badge { position: absolute; top: -4px; right: -2px; z-index: 2; display: inline-flex; align-items: center; height: 18px; padding: 0 6px; border-radius: 3px; background: color-mix(in srgb, var(--hs-ok, #3EE08F) 16%, var(--hs-bg-2)); border: 1px solid color-mix(in srgb, var(--hs-ok, #3EE08F) 45%, transparent); color: var(--hs-ok, #3EE08F); font-size: 9.5px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.hc-shop .sc-name { margin: 0 0 3px; font-size: 13px; font-weight: 700; color: var(--hs-tx); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.hc-shop .sc-cat { display: flex; flex-direction: column; align-items: center; gap: 3px; min-height: 1.2em; margin: 0 0 8px; font-size: 11px; color: var(--hs-tx-4); }
.hc-shop .sc-cat-name { display: block; max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.hc-shop .sc-owned-meta { display: inline-flex; flex-wrap: wrap; justify-content: center; gap: 2px 8px; font-size: 10.5px; color: var(--hs-tx-4); }
.hc-shop .sc-owned-paid { display: inline-flex; align-items: center; gap: 3px; font-weight: 700; color: var(--hs-ac); }
.hc-shop .sc-owned-paid .mana-icon { width: 11px; height: 11px; font-size: 7px; }
.hc-shop .sc-price { display: inline-flex; align-items: center; justify-content: center; gap: 5px; margin-top: auto; height: 26px; border-radius: 3px; background: var(--hs-bg-2); border: 1px solid var(--hs-line); font: 800 13px var(--hs-f-head); color: var(--hs-tx); font-variant-numeric: tabular-nums; }
.hc-shop .shop-card.is-on .sc-price { background: var(--hs-ac-fill); border-color: var(--hs-ac-fill); color: #fff; }
.hc-shop .shop-card.is-on .sc-price .mana-icon { background: #fff; color: var(--hs-ac); }

.hc-shop .shop-pager { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 4px; padding: 12px 14px 14px; border-top: 1px solid var(--hs-line); }
.hc-shop .shop-page-btn { display: inline-flex; align-items: center; justify-content: center; min-width: 32px; height: 32px; padding: 0 9px; border-radius: var(--hc-r); border: 1px solid var(--hs-line); background: var(--hs-bg-3); color: var(--hs-tx-2); font-size: 13px; font-weight: 700; }
.hc-shop .shop-page-btn i { font-size: 11px; }
body.hc-body .hc-shop a.shop-page-btn:hover { border-color: var(--hs-ac); color: var(--hs-tx); }
.hc-shop .shop-page-btn.is-on { background: var(--hs-ac-fill); border-color: var(--hs-ac-fill); color: #fff; }
.hc-shop .shop-page-btn.is-disabled { opacity: .35; pointer-events: none; }
.hc-shop .shop-page-gap { padding: 0 2px; color: var(--hs-tx-4); }

/* preview panel */
.hc-shop .shop-preview { position: sticky; top: 80px; }
.hc-pv { border-radius: var(--hc-r); border: 1px solid var(--hs-line); background: var(--hs-bg-2); overflow: hidden; }
.hc-pv-h { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin: 0; padding: 12px 14px; border-bottom: 1px solid var(--hs-line); font: 700 12px var(--hs-f-body); letter-spacing: .13em; text-transform: uppercase; color: var(--hs-tx); }
.hc-pv-h > span:first-child { display: inline-flex; align-items: center; gap: 8px; }
.hc-pv-h i { color: var(--hs-ac); font-size: 11px; }
.hc-pv-h .sub { font-size: 11.5px; font-weight: 600; letter-spacing: 0; text-transform: none; color: var(--hs-tx-4); }
.hc-shop .shop-cm { position: relative; margin: 0; padding: 18px 16px 16px 72px; min-height: 96px; border-bottom: 1px solid var(--hs-line); background: radial-gradient(circle at 36px 40px, var(--hs-ac-soft), transparent 70px), var(--hs-bg-3); }
.hc-shop .shop-cm .cm-av { position: absolute; left: 16px; top: 18px; width: 42px; height: 42px; }
.hc-shop .shop-cm .cm-av img.pfp { width: 100%; height: 100%; display: block; border-radius: 50%; object-fit: cover; background: var(--hs-raise); }
.hc-shop .shop-cm .cm-av img.deco { position: absolute; top: -10%; left: -10%; width: 120%; height: 120%; max-width: none; object-fit: contain; pointer-events: none; }
.hc-shop .shop-cm .uname { display: flex; align-items: center; flex-wrap: wrap; gap: 6px; font-size: 13.5px; font-weight: 700; color: var(--hs-dub-tx); }
.hc-shop .shop-cm .uname .ak-title-eq { margin-left: 0; }
.hc-shop .shop-cm .time { margin-top: 1px; font-size: 11px; color: var(--hs-tx-4); }
.hc-shop .shop-cm .body { margin: 6px 0; font-size: 14px; line-height: 1.5; color: var(--hs-tx); }
.hc-shop .shop-cm .acts { display: flex; gap: 14px; font-size: 12px; color: var(--hs-tx-4); }
.hc-pv-body { padding: 14px 16px 16px; }
.hc-shop .shop-detail-name { margin: 0 0 3px; font: 800 17px/1.25 var(--hs-f-head); color: var(--hs-tx); overflow-wrap: anywhere; }
.hc-shop .shop-detail-cat { margin: 0 0 8px; font-size: 11.5px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--hs-ac); }
.hc-shop .shop-detail-desc { margin: 0 0 14px; font-size: 13px; line-height: 1.5; color: var(--hs-tx-3); }
.hc-shop #pv-history.shop-owned-chip { display: flex; align-items: center; flex-wrap: wrap; gap: 6px 8px; padding: 7px 10px; border-radius: var(--hc-r); border: 1px solid color-mix(in srgb, var(--hs-ok, #3EE08F) 35%, transparent); background: color-mix(in srgb, var(--hs-ok, #3EE08F) 9%, transparent); font-size: 12px; color: var(--hs-tx-2); }
.hc-shop #pv-history .pv-owned-badge { display: inline-flex; align-items: center; height: 18px; padding: 0 6px; border-radius: 3px; background: color-mix(in srgb, var(--hs-ok, #3EE08F) 18%, transparent); color: var(--hs-ok, #3EE08F); font-size: 10px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.hc-shop #pv-history .pv-owned-paid { display: inline-flex; align-items: center; gap: 4px; font-weight: 700; color: var(--hs-ac); }
.hc-shop .shop-color-pick { margin: 0 0 14px; }
.hc-shop .shop-color-label { display: block; margin: 0 0 8px; font-size: 11px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; color: var(--hs-tx-4); }
.hc-shop .shop-color-swatches { display: grid; grid-template-columns: repeat(10, minmax(0, 1fr)); gap: 5px; }
.hc-shop .shop-color-swatch { aspect-ratio: 1; width: 100%; padding: 0; border-radius: 3px; border: 2px solid transparent; background: var(--swatch, #888); box-shadow: inset 0 0 0 1px rgba(0, 0, 0, .2); cursor: pointer; transition: transform .1s; }
.hc-shop .shop-color-swatch:hover { transform: scale(1.08); }
.hc-shop .shop-color-swatch.is-on { border-color: var(--hs-tx); box-shadow: 0 0 0 2px var(--hs-bg-2) inset; }
.hc-shop .shop-color-swatch[data-color="crimson"] { --swatch: #FF6B7A; } .hc-shop .shop-color-swatch[data-color="coral"] { --swatch: #FF8A65; }
.hc-shop .shop-color-swatch[data-color="amber"] { --swatch: #FFB74D; } .hc-shop .shop-color-swatch[data-color="gold"] { --swatch: #FFD54F; }
.hc-shop .shop-color-swatch[data-color="lime"] { --swatch: #AED581; } .hc-shop .shop-color-swatch[data-color="mint"] { --swatch: #69F0AE; }
.hc-shop .shop-color-swatch[data-color="teal"] { --swatch: #4DD0E1; } .hc-shop .shop-color-swatch[data-color="sky"] { --swatch: #4FC3F7; }
.hc-shop .shop-color-swatch[data-color="azure"] { --swatch: #64B5F6; } .hc-shop .shop-color-swatch[data-color="indigo"] { --swatch: #7986CB; }
.hc-shop .shop-color-swatch[data-color="violet"] { --swatch: #B39DDB; } .hc-shop .shop-color-swatch[data-color="orchid"] { --swatch: #CE93D8; }
.hc-shop .shop-color-swatch[data-color="pink"] { --swatch: #F48FB1; } .hc-shop .shop-color-swatch[data-color="rose"] { --swatch: #EF9A9A; }
.hc-shop .shop-color-swatch[data-color="salmon"] { --swatch: #FFAB91; } .hc-shop .shop-color-swatch[data-color="peach"] { --swatch: #FFCC80; }
.hc-shop .shop-color-swatch[data-color="sand"] { --swatch: #FFE082; } .hc-shop .shop-color-swatch[data-color="slate"] { --swatch: #90A4AE; }
.hc-shop .shop-color-swatch[data-color="silver"] { --swatch: #CFD8DC; } .hc-shop .shop-color-swatch[data-color="ice"] { --swatch: #B2EBF2; }
.hc-shop .shop-detail-price { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 12px; padding: 10px 12px; border-radius: var(--hc-r); border: 1px solid var(--hs-line); background: var(--hs-bg-3); }
.hc-shop .shop-detail-price .big { display: inline-flex; align-items: center; gap: 7px; font: 800 20px var(--hs-f-head); color: var(--hs-tx); font-variant-numeric: tabular-nums; }
.hc-shop .shop-detail-price .big .mana-icon { width: 17px; height: 17px; font-size: 9px; vertical-align: 0; }
.hc-pv-bal { font-size: 12px; color: var(--hs-tx-4); }
.hc-pv-bal b { color: var(--hs-tx-2); }
.hc-shop .shop-actions { display: flex; flex-direction: column; gap: 6px; }
.hc-pv-row { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; }
.hc-shop .mz-btn { display: inline-flex; align-items: center; justify-content: center; gap: 7px; width: 100%; height: 34px; padding: 0 12px; border-radius: var(--hc-r); border: 1px solid var(--hs-line-2); background: var(--hs-bg-3); color: var(--hs-tx-2); font: 700 12.5px var(--hs-f-body); cursor: pointer; transition: border-color .15s, background .15s, color .15s; }
.hc-shop .mz-btn:hover:not(:disabled) { border-color: var(--hs-ac); color: var(--hs-tx); }
.hc-shop .mz-btn-primary { height: 38px; background: var(--hs-ac-fill); border-color: var(--hs-ac-fill); color: #fff; font-size: 13px; }
.hc-shop .mz-btn-primary:hover:not(:disabled) { background: var(--hs-ac-fill-h); border-color: var(--hs-ac-fill-h); color: #fff; }
.hc-shop .mz-btn:disabled { opacity: .5; cursor: not-allowed; }
.hc-shop .shop-layout.is-busy .mz-btn { opacity: .65; cursor: wait; }
.hc-shop .shop-refund-btn { border-color: color-mix(in srgb, var(--hs-danger, #FF8F8F) 45%, transparent); background: color-mix(in srgb, var(--hs-danger, #FF8F8F) 10%, transparent); color: var(--hs-danger, #FF8F8F); }
.hc-shop .shop-refund-btn:hover:not(:disabled) { border-color: var(--hs-danger, #FF8F8F); color: var(--hs-danger, #FF8F8F); }
.hc-shop .shop-refund-hint { margin: 2px 0 0; font-size: 12px; line-height: 1.45; color: var(--hs-tx-4); }
.hc-shop .shop-msg { min-height: 0; font-size: 12.5px; font-weight: 600; }
.hc-shop .shop-msg:not(:empty) { margin-top: 4px; }

/* closed overlay */
.hc-shop .shop-page-wrap.is-disabled .shop-layout,
.hc-shop .shop-page-wrap.is-disabled .hc-head,
.hc-shop .shop-page-wrap.is-disabled .hc-shop-bar { filter: grayscale(.4); opacity: .4; pointer-events: none; user-select: none; }
.hc-shop .shop-disabled-overlay { position: absolute; inset: 0; z-index: 20; display: flex; align-items: flex-start; justify-content: center; padding: 120px 16px 32px; }
.hc-shop .shop-disabled-card { max-width: 420px; padding: 26px 24px; border-radius: var(--hc-r); border: 1px solid var(--hs-line-2); background: var(--hs-bg-2); box-shadow: 0 18px 50px rgba(0, 0, 0, .35); text-align: center; }
.hc-shop .shop-disabled-title { margin: 0 0 6px !important; font: 800 19px var(--hs-f-head); color: var(--hs-tx); }
.hc-shop .shop-disabled-desc { margin: 0 0 16px !important; font-size: 13.5px; line-height: 1.5; color: var(--hs-tx-3); }

/* purchase confirm (built by mana-shop.js on <body>) */
.shop-confirm { position: fixed; inset: 0; z-index: 10055; display: flex; align-items: center; justify-content: center; padding: 20px; }
.shop-confirm[hidden] { display: none !important; }
.shop-confirm-backdrop { position: absolute; inset: 0; background: rgba(2, 6, 12, .7); backdrop-filter: blur(3px); }
.shop-confirm-card { position: relative; z-index: 1; width: min(92vw, 400px); padding: 22px 20px 18px; border-radius: 4px; border: 1px solid var(--hs-line-2); background: var(--hs-bg-2); box-shadow: 0 24px 60px rgba(0, 0, 0, .45); text-align: center; color: var(--hs-tx); }
.shop-confirm-preview { display: flex; justify-content: center; margin-bottom: 12px; }
.shop-confirm-preview img { width: 76px; height: 76px; object-fit: contain; }
.shop-confirm-card h4 { margin: 0 0 8px; font: 800 18px var(--hs-f-head); color: var(--hs-tx); }
.shop-confirm-text { margin: 0 0 18px; font-size: 14px; line-height: 1.5; color: var(--hs-tx-2); }
.shop-confirm-text strong { color: var(--hs-tx); }
.shop-confirm-text .muted { font-size: 12px; color: var(--hs-tx-4); }
.shop-confirm-actions { display: flex; gap: 8px; }
.shop-confirm-btn { flex: 1; height: 38px; border-radius: 4px; border: 1px solid var(--hs-line-2); font: 700 13px var(--hs-f-body); cursor: pointer; }
.shop-confirm-cancel { background: var(--hs-bg-3); color: var(--hs-tx-2); }
.shop-confirm-cancel:hover { border-color: var(--hs-ac); color: var(--hs-tx); }
.shop-confirm-ok { background: var(--hs-ac-fill); border-color: var(--hs-ac-fill); color: #fff; }
.shop-confirm-ok:hover { background: var(--hs-ac-fill-h); }
body.shop-confirm-open { overflow: hidden; }
.shop-toast { border-radius: 4px !important; font-family: var(--hs-f-body) !important; }

@media (max-width: 1080px) {
    .hc-shop .shop-layout { grid-template-columns: minmax(0, 1fr); }
    .hc-shop .shop-preview { position: static; order: -1; }
    .hc-pv { display: grid; grid-template-columns: minmax(0, 300px) minmax(0, 1fr); }
    .hc-pv-h { grid-column: 1 / -1; }
    .hc-shop .shop-cm { border-bottom: 0; border-right: 1px solid var(--hs-line); }
}
@media (max-width: 760px) {
    .hc-wallet { width: 100%; }
    .hc-shop-bar { flex-direction: column; align-items: stretch; }
    .hc-shop-bar .hc-seg { display: flex; }
    .hc-shop-bar .hc-seg-btn { flex: 1; justify-content: center; }
    .hc-shop .shop-kind-tab { flex: 1; justify-content: center; }
    .hc-pv { display: block; }
    .hc-shop .shop-cm { border-right: 0; border-bottom: 1px solid var(--hs-line); }
    .hc-shop .shop-field { flex: 1 1 140px; min-width: 0; }
    .hc-shop .shop-field-search { flex-basis: 100%; }
    .hc-shop .shop-filter-go { flex: 1 1 100%; }
    .hc-shop .shop-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 10px; gap: 8px; }
}

/* Empty shop: no item to preview, so no price / buy buttons. */
.hc-shop .shop-detail-price[hidden], .hc-shop .shop-actions[hidden], .hc-shop .shop-detail-cat[hidden] { display: none; }
