/* ============================================================
 * skin/board/hive_care_user/style.css
 * 시술 게시판 전용 규칙. 공통 바탕은 hive_event_user/style.css (먼저 실림)
 * 확정 스타일 v2 (2026-10-02): 둥근 ＋/✓ 담기 토글, 세그먼트 보기 전환, 떠 있는 유리 하단 막대
 * 빌더 값: care_* 옵션 → list.skin.php 가 --hpr-grid-pc/-tablet/-mobile, 여백을 넣는다
 *   공통 옵션(색·글자·카드)은 lib hive_board_v2_tokens 의 --hev-* / --hev-o-* (hive_event_user/style.css 설명 참고)
 * ============================================================ */

/* ===== 위: 검색 + 장바구니 ===== */
.hpr-hero { position:relative; margin-bottom:18px; padding:40px 16px 24px; text-align:center; }
.hpr-hero.hpr-hero-compact { margin-bottom:12px; padding:20px 0 12px; }
.hpr-hero h1 { margin:0 0 8px; color:var(--hev-tx); font-size:clamp(30px,5vw,48px); font-weight:300; letter-spacing:.02em; }
.hpr-hero .ko { margin:0 0 20px; color:var(--hev-tx2); font-size:14px; }
.hpr-search-row { display:flex; align-items:center; gap:12px; max-width:640px; margin:0 auto; }
.hpr-hero .search-big { display:flex; flex:1 1 auto; align-items:center; min-width:0; overflow:hidden; border-radius:24px; background:var(--hev-soft); transition:box-shadow .2s ease; }
.hpr-hero .search-big:focus-within { box-shadow:0 0 0 2px var(--hev-main); }
.hpr-hero .search-big input { flex:1; min-width:0; height:48px; padding:0 8px 0 20px; border:0; background:transparent; color:var(--hev-tx); font:inherit; font-size:15px; }
.hpr-hero .search-big input:focus { outline:none; }
.hpr-hero .search-big input::placeholder { color:var(--hev-tx3); }
.hpr-hero .search-big button { display:flex; flex:0 0 48px; align-items:center; justify-content:center; height:48px; border:0; background:transparent; color:var(--hev-tx2); cursor:pointer; }

.hpr-cart-icon { position:relative; display:inline-flex; flex:0 0 48px; align-items:center; justify-content:center; width:48px; height:48px; border-radius:50%; background:var(--hev-soft); color:var(--hev-tx); text-decoration:none; transition:transform .3s cubic-bezier(.34,1.56,.64,1); }
.hpr-cart-icon .badge { position:absolute; top:-3px; right:-3px; display:none; align-items:center; justify-content:center; min-width:20px; height:20px; padding:0 5px; border:2px solid #fff; border-radius:999px; background:var(--hev-main); color:var(--hev-on); font-size:11.5px; font-weight:700; }
.hpr-cart-icon.has-items .badge { display:inline-flex; }
.hpr-cart-icon.bounce { animation:hprCartBounce .55s cubic-bezier(.34,1.56,.64,1); }
@keyframes hprCartBounce { 0%{transform:scale(1)} 30%{transform:scale(1.2)} 55%{transform:scale(.94)} 100%{transform:scale(1)} }

.hpr-popular-keywords { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:6px; margin-top:12px; font-size:13px; }
.hpr-popular-keywords > span { margin-right:2px; color:var(--hev-tx2); }
.hpr-popular-keywords a { display:inline-flex; align-items:center; min-height:32px; padding:0 12px; border-radius:16px; background:var(--hev-soft); color:var(--hev-o-tx-mid,#3a3a3c); text-decoration:none; }
.hpr-popular-keywords a:hover { background:var(--hev-soft2); }

/* ===== 분류 줄: 가로로 넘기기(끌기·화살표) ===== */
.hpr-cats-wrap { position:relative; display:flex; width:100%; margin-bottom:4px; }
.hpr-cats-wrap .hev-cats { width:100%; margin-bottom:12px; cursor:grab; user-select:none; -webkit-user-select:none; scroll-behavior:smooth; }
.hpr-cats-top-right .hev-cats { justify-content:flex-end; }
/* 분류 막대: 막대 디자인 '세그먼트'를 고른 게시판만 공용 '탭' 모양과 같은 수치(회색 트랙 안 흰 선택 알약). 기본은 트랙 없는 알약 칩 그대로다. */
.hpr-cats-wrap:where(.hv-catseg) .hev-cats { gap:2px; width:max-content; max-width:100%; padding:3px; border-radius:12px; background:var(--catnav-track,rgba(118,118,128,.07)); box-sizing:border-box; }
.hpr-cats-wrap:where(.hv-catseg) .hev-cat { min-height:34px; padding:0 14px; border-radius:9px; background:transparent; color:#3a3a3c; font-size:14px; font-weight:600; }
.hpr-cats-wrap:where(.hv-catseg) .hev-cat:hover { background:rgba(255,255,255,.6); }
.hpr-cats-wrap:where(.hv-catseg) .hev-cat.active { background:#fff; color:#1d1d1f; box-shadow:0 1px 3px rgba(0,0,0,.12); }
.hpr-cats-wrap:where(.hv-catseg) .hev-cat .cnt, .hpr-cats-wrap:where(.hv-catseg) .hev-cat.active .cnt { color:#8e8e93; opacity:1; }
.hpr-cats-top-right:where(.hv-catseg) .hev-cats { margin-left:auto; }
.hpr-cats-wrap .hev-cats.is-dragging { cursor:grabbing; scroll-behavior:auto; }
.hpr-cats-wrap .hev-cats.is-dragging a { pointer-events:none; }
.hpr-cat-arrow { position:absolute; top:0; bottom:12px; z-index:6; display:flex; align-items:center; width:52px; padding:0 4px; border:0; color:var(--hev-tx); cursor:pointer; }
.hpr-cat-arrow svg { width:20px; height:20px; }
.hpr-cat-arrow.prev { left:0; justify-content:flex-start; background:linear-gradient(to right,var(--hev-bg,#fff) 50%,transparent); }
.hpr-cat-arrow.next { right:0; justify-content:flex-end; background:linear-gradient(to left,var(--hev-bg,#fff) 50%,transparent); }
.hpr-cat-arrow[hidden] { display:none; }
/* 가장자리 흐림: 게시판 공용 분류 막대와 같은 방식 */
@supports selector(:has(*)){
  .hpr-cats-wrap:where(.hv-catseg):has(.hpr-cat-arrow.prev:not([hidden])) .hev-cats{ -webkit-mask-image:linear-gradient(to right,transparent 0,transparent 20px,#000 64px); mask-image:linear-gradient(to right,transparent 0,transparent 20px,#000 64px); }
  .hpr-cats-wrap:where(.hv-catseg):has(.hpr-cat-arrow.next:not([hidden])) .hev-cats{ -webkit-mask-image:linear-gradient(to left,transparent 0,transparent 20px,#000 64px); mask-image:linear-gradient(to left,transparent 0,transparent 20px,#000 64px); }
  .hpr-cats-wrap:where(.hv-catseg):has(.hpr-cat-arrow.prev:not([hidden])):has(.hpr-cat-arrow.next:not([hidden])) .hev-cats{ -webkit-mask-image:linear-gradient(to right,transparent 0,transparent 20px,#000 64px,#000 calc(100% - 64px),transparent calc(100% - 20px),transparent 100%); mask-image:linear-gradient(to right,transparent 0,transparent 20px,#000 64px,#000 calc(100% - 64px),transparent calc(100% - 20px),transparent 100%); }
  .hpr-cats-wrap:where(.hv-catseg) .hpr-cat-arrow.prev, .hpr-cats-wrap:where(.hv-catseg) .hpr-cat-arrow.next{ width:28px; padding:0; justify-content:center; background:none; }
}

/* 분류 전체 보기 창 */
.hpr-cat-pop { position:fixed; inset:0; z-index:80; display:none; }
.hpr-cat-pop.open { display:block; }
.hpr-cat-pop-bg { position:absolute; inset:0; background:rgba(0,0,0,.45); }
.hpr-cat-pop-frame { position:absolute; top:50%; left:50%; width:92%; max-width:520px; padding:22px; border-radius:20px; background:var(--hev-surface,#fff); transform:translate(-50%,-50%); }
.hpr-cat-pop-head { display:flex; align-items:center; justify-content:space-between; margin-bottom:16px; }
.hpr-cat-pop-head h2 { margin:0; font-size:17px; font-weight:700; }
.hpr-cat-pop-close { display:inline-flex; align-items:center; justify-content:center; width:32px; height:32px; border:0; border-radius:50%; background:var(--hev-soft); color:var(--hev-tx); font-size:18px; cursor:pointer; }
.hpr-cat-pop-list { display:flex; flex-wrap:wrap; gap:8px; }
.hpr-cat-pop-list a { display:inline-flex; align-items:center; min-height:36px; padding:0 16px; border-radius:18px; background:var(--hev-soft); color:var(--hev-o-tx-mid,#3a3a3c); font-size:14px; text-decoration:none; }
.hpr-cat-pop-list a.active { background:var(--hev-main); color:var(--hev-on); font-weight:600; }
.hpr-cat-pop-list a .cnt { margin-left:4px; color:var(--hev-tx3); font-size:12px; }
.hpr-cat-pop-list a.active .cnt { color:inherit; opacity:.72; }

/* ===== 배치: 목록 · (왼쪽 분류) · (옆 장바구니) ===== */
.hev-body.hpr-care-layout { display:grid; grid-template-columns:minmax(0,1fr); gap:14px 24px; align-items:start; }
.hev-body.hpr-care-layout.hpr-has-sidebar { grid-template-columns:minmax(0,1fr) 320px; }
/* 옆 칸(분류·배너·장바구니)이 여러 줄에 걸쳐 길어져도 남는 높이는 목록 줄이 받는다(정렬 줄이 늘어나 빈 공간 생기는 것 방지) */
.hev-body.hpr-care-layout:is(.hpr-has-sidebar,.hpr-category-left) { grid-template-rows:auto auto 1fr; }
.hev-body.hpr-care-layout.hpr-category-left { grid-template-columns:230px minmax(0,1fr); }
.hev-body.hpr-care-layout.hpr-category-left.hpr-has-sidebar { grid-template-columns:230px minmax(0,1fr) 320px; }
.hpr-care-layout .hpr-toolbar-heading { grid-column:1/-1; grid-row:1; display:flex; align-items:center; justify-content:space-between; gap:16px; min-width:0; }
.hpr-care-layout .hpr-toolbar-filters { grid-column:1; grid-row:2; display:flex; flex-wrap:wrap; align-items:center; gap:8px; min-width:0; }
.hpr-care-layout .hev-body-main { grid-column:1; grid-row:3; min-width:0; }
.hpr-care-layout .hev-cart-side { grid-column:2; grid-row:2 / 4; min-width:0; }
.hpr-care-layout.hpr-category-left .hpr-category-side { grid-column:1; grid-row:1 / 4; }
.hpr-care-layout.hpr-category-left .hpr-toolbar-heading { grid-column:2 / -1; }
.hpr-care-layout.hpr-category-left :is(.hpr-toolbar-filters,.hev-body-main) { grid-column:2; }
.hpr-care-layout.hpr-category-left .hev-cart-side { grid-column:3; }
.hpr-toolbar-heading .hev-title { display:flex; align-items:center; gap:10px; }
.hpr-toolbar-heading .hev-title small { display:inline-flex; align-items:center; min-height:24px; margin:0; padding:0 10px; border-radius:12px; background:var(--hev-tint); color:var(--hev-ink); font-size:12px; font-weight:700; white-space:nowrap; }

/* 보기 전환·정렬: 세그먼트 */
.hpr-view-switch, .hpr-sort-chips { display:inline-flex; gap:2px; padding:3px; border-radius:12px; background:var(--hev-soft); }
.hpr-view-switch button, .hpr-sort-chips button { display:inline-flex; align-items:center; justify-content:center; gap:6px; min-height:32px; padding:0 12px; border:0; border-radius:9px; background:transparent; color:var(--hev-o-tx-mid,#3a3a3c); font:inherit; font-size:13px; font-weight:600; white-space:nowrap; cursor:pointer; transition:background-color .2s ease, box-shadow .2s ease; }
.hpr-view-switch button.active, .hpr-sort-chips button.active { background:var(--hev-surface,#fff); color:var(--hev-tx); box-shadow:0 1px 3px rgba(0,0,0,.12); }
.hpr-view-switch svg { width:16px; height:16px; }
.hev-admin-btn.hpr-admin-secondary { background:var(--hev-soft); color:var(--hev-tx); }

/* 왼쪽 분류 */
.hpr-category-side { min-width:0; }
.hpr-category-side h2 { margin:0 0 10px; font-size:17px; font-weight:700; }
.hpr-category-side nav { display:grid; overflow:hidden; border-radius:16px; background:var(--hev-group); }
.hpr-side-cat { position:relative; display:flex; align-items:center; justify-content:space-between; gap:8px; padding:13px 16px; color:var(--hev-o-tx-mid,#3a3a3c); font-size:15px; text-decoration:none; }
.hpr-side-cat + .hpr-side-cat::before { content:""; position:absolute; top:0; right:0; left:16px; height:1px; background:var(--hev-line); }
.hpr-side-cat .cnt { display:inline-flex; align-items:center; justify-content:center; min-width:24px; height:24px; padding:0 7px; border-radius:12px; background:var(--hev-surface,#fff); color:var(--hev-tx2); font-size:12px; font-weight:700; }
.hpr-side-cat.active { color:var(--hev-tx); font-weight:700; }
.hpr-side-cat.active .cnt { background:var(--hev-main); color:var(--hev-on); }
.hpr-cats-left-source { display:none; }

/* ===== 줄: 담기 토글(둥근 ＋/✓) ===== */
.hev-row-check { position:absolute; width:1px; height:1px; margin:0; overflow:hidden; clip:rect(0 0 0 0); opacity:0; }
.hev-row-toggle { order:10; }
.hev-row.is-selected { background:color-mix(in srgb,var(--hev-main) 6%,transparent); }
.hev-row.no-thumb .hev-row-thumb { display:none; }
.hev-row-arrow { display:none; }
/* 관리자 '인기' 지정 버튼은 사진 위 왼쪽 아래로(가격을 가리지 않게) */
.hev-row .hb-pop-toggle { top:auto; right:auto; bottom:10px; left:10px; }
@media (min-width:901px){
    /* PC 목록은 오른쪽 담기·예약 버튼을 쓰므로 둥근 토글은 숨김 */
    .hev-wrap:not(.hpr-view-grid) .hev-row-toggle { display:none; }
}

/* 담을 때 움직임 */
.hpr-fly-dot { position:fixed; z-index:200; display:flex; align-items:center; justify-content:center; width:36px; height:36px; border-radius:50%; background:var(--hev-main,#9b8056); color:#fff; pointer-events:none; transform:translate(-50%,-50%); will-change:transform,opacity; }
.hpr-fly-dot::before { content:""; width:16px; height:16px; background:center/contain no-repeat url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'><path d='M5 12l5 5L19 7'/></svg>"); }
.hev-btn-add.added-flash { animation:hprBtnFlash .5s ease; }
@keyframes hprBtnFlash { 0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--hev-main) 50%,transparent)} 100%{box-shadow:0 0 0 12px transparent} }
.hev-row.just-added { animation:hprRowPulse .9s ease; }
@keyframes hprRowPulse { 0%{background:color-mix(in srgb,var(--hev-main) 16%,transparent)} 100%{background:transparent} }

/* 옆 장바구니 카드의 보조 버튼 */
.hpr-cart-secondary { display:flex; align-items:center; justify-content:center; width:100%; min-height:44px; margin-top:8px; border:0; border-radius:22px; background:var(--hev-soft); color:var(--hev-tx); font:inherit; font-size:14px; font-weight:600; text-decoration:none; cursor:pointer; }

/* ===== 썸네일 보기 ===== */
.hev-wrap.hpr-view-grid .hev-list {
    --hpr-grid-count:var(--hpr-grid-pc,3); --hpr-grid-gap:var(--hev-o-gap,18px); --hpr-grid-min:200px;
    display:grid; gap:var(--hpr-grid-gap); overflow:visible; background:transparent;
    grid-template-columns:repeat(auto-fill,minmax(min(100%,max(var(--hpr-grid-min),calc((100% - (var(--hpr-grid-count) - 1) * var(--hpr-grid-gap)) / var(--hpr-grid-count)))),1fr));
}
.hev-wrap.hpr-view-grid .hev-row { flex-direction:column; align-items:stretch; gap:0; padding:0; overflow:hidden; border:var(--hev-o-border,0); border-radius:var(--hev-card-radius,16px); background:var(--hev-card-bg,#fff); box-shadow:var(--hev-o-shadow,0 1px 2px rgba(0,0,0,.04),0 6px 20px rgba(0,0,0,.05)); transition:transform .25s ease, box-shadow .25s ease; }
/* 빌더 카드 호버 옵션(card_hover): 썸네일 카드는 기본(lift)·없음이면 움직이지 않는다(v2) */
.hev-wrap.hpr-view-grid[data-card-hover="scale"] .hev-row:hover { transform:scale(1.02); }
.hev-wrap.hpr-view-grid[data-card-hover="color"] .hev-row:hover { box-shadow:0 0 0 2px var(--hev-main); }
.hev-wrap.hpr-view-grid[data-card-hover="overlay"] .hev-row:hover .hev-row-thumb { filter:brightness(.86); }
.hev-wrap.hpr-view-grid .hev-row::before { display:none; }
.hev-wrap.hpr-view-grid .hev-row-toggle { position:absolute; top:10px; right:10px; z-index:3; }
.hev-wrap.hpr-view-grid .hev-row-check:not(:checked) ~ .hev-row-toggle { background:rgba(255,255,255,.92); }
.hev-wrap.hpr-view-grid .hev-row-thumb { width:100%; height:auto; flex-basis:auto; aspect-ratio:4/3; border-radius:0; }
.hev-wrap.hpr-view-grid .hev-row-body { padding:16px 16px 6px; }
.hev-wrap.hpr-view-grid .hev-row.no-thumb .hev-row-body { padding-top:56px; }
.hev-wrap.hpr-view-grid .hev-row-right { align-items:flex-start; min-width:0; padding:6px 16px 16px; text-align:left; }
/* 휴대폰 목록형 규칙(공통 바탕)이 카드에 섞이지 않게: 세로 카드에서는 내용 높이대로 */
.hev-wrap.hpr-view-grid :is(.hev-row-body,.hev-row-right) { flex:0 0 auto; }
.hev-wrap.hpr-view-grid .hev-row-right { flex-direction:column; gap:2px; padding-left:16px; }
.hev-wrap.hpr-view-grid .hev-row-actions { display:flex; flex-wrap:wrap; gap:8px; width:100%; margin-top:10px; }
.hev-wrap.hpr-view-grid .hev-row-actions > * { flex:1 1 90px; min-width:0; }
@media (max-width:1200px){ .hev-wrap.hpr-view-grid .hev-list { --hpr-grid-count:var(--hpr-grid-tablet,2); } }
@media (max-width:768px){ .hev-wrap.hpr-view-grid .hev-list { --hpr-grid-count:var(--hpr-grid-mobile,2); --hpr-grid-gap:var(--hev-o-gap,10px); --hpr-grid-min:150px; } }

/* ===== 휴대폰 아래: 떠 있는 담은 항목 막대 ===== */
.hpr-mfoot { display:none; }
.hpr-mfoot-details[hidden], .hpr-mfoot-list[hidden] { display:none !important; }
@media (max-width:900px){
    .hev-body.hpr-care-layout,
    .hev-body.hpr-care-layout.hpr-has-sidebar,
    .hev-body.hpr-care-layout.hpr-category-left,
    .hev-body.hpr-care-layout.hpr-category-left.hpr-has-sidebar { grid-template-columns:minmax(0,1fr); }
    .hpr-care-layout :is(.hpr-toolbar-heading,.hpr-toolbar-filters,.hev-body-main),
    .hpr-care-layout.hpr-category-left :is(.hpr-toolbar-heading,.hpr-toolbar-filters,.hev-body-main) { grid-column:1; }
    .hpr-care-layout .hpr-toolbar-filters { flex-wrap:nowrap; overflow-x:auto; scrollbar-width:none; }
    .hpr-care-layout .hpr-toolbar-filters::-webkit-scrollbar { display:none; }
    .hpr-care-layout .hpr-toolbar-filters > * { flex:0 0 auto; }
    .hev-cart-side, .hpr-category-side { display:none; }
    .hpr-cats-left-source { display:flex; }
    .hpr-cats-wrap .hev-cats, .hpr-cats-top-right .hev-cats { justify-content:flex-start; }
    .hpr-view-switch button span:last-child { display:none; }
    .hpr-view-switch button { width:36px; padding:0; }
    .hpr-popular-keywords { flex-wrap:nowrap; justify-content:flex-start; overflow-x:auto; scrollbar-width:none; }
    .hpr-popular-keywords > * { flex:0 0 auto; }

    /* 목록 줄: 사진 · 분류·이름·가격 · 담기 토글 */
    .hev-wrap:not(.hpr-view-grid) .hev-row { flex-wrap:nowrap; align-items:center; gap:12px; padding:12px 14px; }
    .hev-wrap:not(.hpr-view-grid) .hev-row + .hev-row::before { left:90px; }
    .hev-wrap:not(.hpr-view-grid) .hev-row.no-thumb + .hev-row::before { left:14px; }
    .hev-wrap:not(.hpr-view-grid) .hev-row-thumb { flex:0 0 64px; width:64px; height:64px; border-radius:12px; }
    .hev-wrap:not(.hpr-view-grid) .hev-row-body { flex:1 1 auto; min-width:7em; }
    .hev-wrap:not(.hpr-view-grid) .hev-row-meta { margin-bottom:2px; }
    .hev-wrap:not(.hpr-view-grid) .hev-row-meta > span:not(.hev-row-cat) { display:none; }
    .hev-wrap:not(.hpr-view-grid) .hev-row-note { display:none; }
    .hev-wrap:not(.hpr-view-grid) .hev-row-right { order:5; flex:0 1 auto; flex-direction:column; align-items:flex-end; gap:0; min-width:0; max-width:52%; padding:0; text-align:right; }
    .hev-wrap:not(.hpr-view-grid) .hev-row-right .hev-row-price { overflow-wrap:anywhere; word-break:keep-all; }
    .hev-wrap:not(.hpr-view-grid) .hev-row-price { font-size:15px; }
    .hev-wrap:not(.hpr-view-grid) .hev-row-actions { display:none; }

    body.has-hpr-mfoot { padding-bottom:calc(var(--hpr-quick-height,0px) + var(--hpr-footer-height,96px) + 24px) !important; }
    #hprMfoot { --hev-main:var(--index_color,var(--main,var(--hv-main,#9b8056))); --hev-on:#fff; position:fixed; right:12px; bottom:calc(var(--hpr-quick-height,0px) + 12px); left:12px; z-index:10001; display:flex; flex-direction:column; max-height:calc(100dvh - var(--hpr-quick-height,0px) - 100px); overflow:hidden; border-radius:24px; background:rgba(255,255,255,.88); -webkit-backdrop-filter:saturate(180%) blur(24px); backdrop-filter:saturate(180%) blur(24px); box-shadow:0 10px 30px rgba(0,0,0,.14); font-family:'Pretendard Variable','Pretendard',-apple-system,sans-serif; color:#1d1d1f; word-break:keep-all; }
    #hprMfoot .hpr-mfoot-bar { display:flex; flex-shrink:0; align-items:center; gap:10px; padding:8px 8px 8px 18px; }
    #hprMfoot .hpr-mfoot-head { display:grid; flex:1; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:0 8px; min-width:0; min-height:44px; padding:0; border:0; background:none; color:inherit; font:inherit; text-align:left; cursor:pointer; }
    #hprMfoot .hpr-mfoot-head .label { grid-column:1; color:#6e6e73; font-size:12px; }
    #hprMfoot .hpr-mfoot-head .label b { color:#1d1d1f; font-weight:700; }
    #hprMfoot .hpr-mfoot-head .label small { color:#6e6e73; font-size:12px; }
    #hprMfoot .hpr-mfoot-head .amt { grid-column:1; color:#1d1d1f; font-size:18px; font-weight:700; line-height:1.25; }
    #hprMfoot .hpr-mfoot-head .toggle { display:inline-flex; grid-column:2; grid-row:1 / 3; align-items:center; gap:3px; color:#6e6e73; font-size:12px; }
    #hprMfoot .hpr-mfoot-head .toggle .arrow { display:inline-block; transition:transform .25s ease; }
    #hprMfoot.open .hpr-mfoot-head .toggle .arrow { transform:rotate(180deg); }
    #hprMfoot .hpr-mfoot-head:focus-visible { outline:2px solid var(--hev-main); outline-offset:2px; border-radius:12px; }
    #hprMfoot .hpr-mfoot-book { flex:0 0 auto; min-height:48px; padding:0 22px; border:0; border-radius:24px; background:var(--hev-main); color:var(--hev-on); font:inherit; font-size:15px; font-weight:700; cursor:pointer; }
    #hprMfoot .hpr-mfoot-book:disabled { background:rgba(118,118,128,.16); color:#8e8e93; cursor:not-allowed; }
    #hprMfoot .hpr-mfoot-details { display:flex; flex-direction:column; min-height:0; }
    #hprMfoot .hpr-mfoot-list { min-height:0; margin:0 10px; overflow-y:auto; overscroll-behavior:contain; border-radius:16px; background:#fff; }
    #hprMfoot.open .hpr-mfoot-list { max-height:min(32dvh,240px); }
    #hprMfoot .hpr-mfoot-item { position:relative; display:flex; align-items:center; gap:10px; padding:10px 8px 10px 14px; font-size:14px; }
    #hprMfoot .hpr-mfoot-item + .hpr-mfoot-item::before { content:""; position:absolute; top:0; right:0; left:14px; height:1px; background:rgba(60,60,67,.12); }
    #hprMfoot .hpr-mfoot-item .nm { flex:1; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
    #hprMfoot .hpr-mfoot-item .pr { font-weight:600; white-space:nowrap; }
    #hprMfoot .hpr-mfoot-item button.rm { display:inline-flex; flex:0 0 32px; align-items:center; justify-content:center; width:32px; height:32px; padding:0; border:0; border-radius:50%; background:rgba(118,118,128,.12); color:#3a3a3c; font:inherit; font-size:18px; cursor:pointer; }
    #hprMfoot .hpr-mfoot-empty { padding:20px 16px; color:#6e6e73; font-size:14px; text-align:center; }
    #hprMfoot .hpr-mfoot-foot { padding:10px 14px calc(12px + env(safe-area-inset-bottom,0px)); }
    #hprMfoot .hpr-mfoot-pay { margin:0 0 8px; color:#6e6e73; font-size:12px; }
    #hprMfoot .hpr-mfoot-btns { display:flex; gap:8px; }
    #hprMfoot .hpr-mfoot-btns .ghost { flex:1; min-height:44px; border:0; border-radius:22px; background:rgba(118,118,128,.12); color:#1d1d1f; font:inherit; font-size:14px; font-weight:600; cursor:pointer; }
    #hprMfoot .hpr-mfoot-btns .ghost:disabled { color:#8e8e93; cursor:not-allowed; }
    body.has-hpr-mfoot :is(#hvKakaoBranches,#hvKakaoFloat,#aiChatToggle) { bottom:calc(var(--hpr-bottom-stack,120px) + 12px) !important; }
    body.has-hpr-mfoot #ftrScrollTop { bottom:calc(var(--hpr-bottom-stack,120px) + var(--hpr-launcher-height,0px) + 24px) !important; }
}
@supports (color: oklch(from red l c h)) {
    #hprMfoot { --hev-on: oklch(from var(--hev-main) clamp(0, (0.6 - l) * 1000, 1) 0 0); }
}
@media (max-width:600px){
    .hpr-hero.hpr-hero-compact { padding:16px 0 10px; }
    .hpr-hero .search-big input { font-size:16px; }
    .hpr-cart-icon { flex-basis:44px; width:44px; height:44px; }
    .hpr-hero .search-big input, .hpr-hero .search-big button { height:44px; }
}
@media (max-width:380px){ body.has-hpr-mfoot :is(.hive_snav_list,.hv-icons-panel) { right:0; left:auto; } }
@media (prefers-reduced-motion:reduce){
    .hpr-cart-icon, #hprMfoot .hpr-mfoot-head .toggle .arrow, .hev-wrap.hpr-view-grid .hev-row { transition:none; }
    .hev-wrap.hpr-view-grid[data-card-hover="scale"] .hev-row:hover { transform:none; }
    .hpr-cart-icon.bounce, .hev-btn-add.added-flash, .hev-row.just-added { animation:none; }
}

/* ===== 가격을 비운 시술: 상담 후 결정 ===== */
.hev-row-price.hev-row-price--ask { color:var(--hev-tx2); font-size:14px; font-weight:600; white-space:nowrap; }

/* ===== 옆 이벤트 배너(옵션 care_side_banner): PC 장바구니 위, 모바일 목록 위 ===== */
.hpr-banner { margin:0 0 16px; padding:14px 14px 10px; border-radius:20px; background:var(--hev-group); }
.hpr-banner-head { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:2px 4px 10px; }
.hpr-banner-head h2 { margin:0; font-size:15px; font-weight:700; color:var(--hev-tx); word-break:keep-all; }
.hpr-banner-head a { color:var(--hev-tx2); font-size:13px; text-decoration:none; white-space:nowrap; }
.hpr-banner-head a:hover { color:var(--hev-tx); text-decoration:underline; }
.hpr-banner-slide { display:block; }
.hpr-banner-link { display:block; color:inherit; text-decoration:none; border-radius:14px; }
.hpr-banner-slide[hidden] { display:none; }
.hpr-banner-link:focus-visible { outline:2px solid var(--hev-main); outline-offset:3px; }
.hpr-banner-img { display:block; overflow:hidden; aspect-ratio:4/3; border-radius:14px; background:var(--hev-soft); }
.hpr-banner-img img { display:block; width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }
.hpr-banner-link:hover .hpr-banner-img img { transform:scale(1.03); }
.hpr-banner-body { display:flex; flex-direction:column; gap:4px; padding:12px 4px 4px; min-width:0; }
.hpr-banner-cat { color:var(--hev-ink); font-size:12px; font-weight:700; }
.hpr-banner-title { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; color:var(--hev-tx); font-size:16px; line-height:1.4; word-break:keep-all; }
.hpr-banner-note { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; color:var(--hev-tx2); font-size:13px; line-height:1.5; word-break:keep-all; }
.hpr-banner-price { margin-top:2px; font-size:13px; color:var(--hev-tx); }
.hpr-banner-price s { color:var(--hev-tx3); }
.hpr-banner-price em { font-style:normal; font-weight:700; color:var(--hev-sale); }
.hpr-banner-price b { font-size:16px; }
.hpr-banner-ctrl { display:flex; align-items:center; justify-content:center; gap:4px; padding-top:6px; }
.hpr-banner-ctrl button { display:inline-flex; align-items:center; justify-content:center; width:36px; height:36px; padding:0; border:0; border-radius:50%; background:transparent; color:var(--hev-tx2); cursor:pointer; }
.hpr-banner-ctrl button:hover { background:var(--hev-soft); color:var(--hev-tx); }
.hpr-banner-ctrl button:focus-visible { outline:2px solid var(--hev-main); outline-offset:1px; }
.hpr-banner-count { min-width:44px; text-align:center; color:var(--hev-tx3); font-size:12px; font-variant-numeric:tabular-nums; }
.hpr-banner-count b { color:var(--hev-tx); font-weight:700; }
.hpr-banner-pause .is-play, .hpr-banner-pause[aria-pressed="true"] .is-pause { display:none; }
.hpr-banner-pause[aria-pressed="true"] .is-play { display:block; }
@media (prefers-reduced-motion: reduce) { .hpr-banner-img img { transition:none; } }
@media (max-width:900px){
    .hev-body.hpr-care-layout:is(.hpr-has-sidebar,.hpr-category-left) { grid-template-rows:none; }
    .hpr-care-layout.hpr-banner-m .hev-cart-side { display:block; grid-column:1; grid-row:3; position:static; }
    .hpr-care-layout.hpr-banner-m .hev-cart-side .hev-cart-card { display:none; }
    .hpr-care-layout.hpr-banner-m .hev-body-main { grid-row:4; }
    .hpr-banner { margin:0; padding:12px 12px 6px; }
    .hpr-banner-link { display:grid; grid-template-columns:112px minmax(0,1fr); gap:12px; align-items:center; }
    .hpr-banner-slide[hidden] { display:none; }
    .hpr-banner-body { padding:0; }
    .hpr-banner-title { font-size:15px; }
    .hpr-banner-note { -webkit-line-clamp:1; }
}
