
/* ==========================================
   Pretty Keep — Fluid Spacing for Mid/Low (v0.66s)
   대상: 중분류(.pk-midtabs), 소분류(.pk-chips), 서브바(.pk-subbar)
   - 여백/간격만 조정 (폰트/색/레이아웃 변경 없음)
   - iPhone SE(320–375)에서도 답답하지 않게, 데스크톱에서도 넉넉하게
   ========================================== */

/* 1) Subbar container paddings */
.pk-subbar{
  padding-left: clamp(0.75rem, 4vw, 2rem);
  padding-right: clamp(0.75rem, 4vw, 2rem);
}
.pk-subbar[aria-hidden="false"]{
  margin-top: clamp(0.5rem, 1.8vw, 1rem);
  padding-top: clamp(0.5rem, 1.8vw, 1rem);
  padding-bottom: clamp(0.5rem, 1.8vw, 1rem);
  padding-left: clamp(0.5rem, 4vw, 1.25rem);
  padding-right: clamp(0.5rem, 4vw, 1.25rem);
}

/* 2) Mid tabs (중분류) */
.pk-midtabs{ gap: clamp(6px, 1.5vw, 10px); }
.pk-midtabs button{
  padding: clamp(6px, 1.2vw, 8px) clamp(10px, 2.2vw, 14px);
  line-height: 1.2;
}

/* 3) Chips (소분류) */
.pk-chips{
  gap: clamp(6px, 1.5vw, 10px);
  padding-top: clamp(8px, 2vw, 14px);
}
.pk-chips button,
.pk-chip{
  padding: clamp(5px, 1.2vw, 7px) clamp(10px, 2.2vw, 14px);
  line-height: 1.2;
}

/* 4) Empty state chips (추천칩) */
.empty-state .pk-chip{ 
  padding: clamp(5px, 1.2vw, 7px) clamp(10px, 2.2vw, 14px);
}

/* Center doctor grid when fewer than 4 items */
.doctor-grid.pk-grid.few{
  grid-template-columns: repeat(auto-fit, minmax(260px, 260px));
  justify-content: center;
}
@media (max-width: 960px){
  .doctor-grid.pk-grid.few{
    grid-template-columns: repeat(auto-fit, minmax(240px, 240px));
  }
}
@media (max-width: 560px){
  .doctor-grid.pk-grid.few{
    grid-template-columns: repeat(1, minmax(0, 1fr));
    justify-content: center;
  }
}

/* === FINAL PATCH v0.82 === */
/* Results grid: 1200 cap + precise 4/3/2/1 columns, scoped to results only */
.pk-results .pk-grid{
  max-width: 1200px;
  margin-left: auto; margin-right: auto;
  display: grid;
  gap: 1.25rem;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
@media (max-width: 1199.98px){ .pk-results .pk-grid{ grid-template-columns: repeat(3, minmax(0, 1fr)); }}
@media (max-width: 959.98px){  .pk-results .pk-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }}
@media (max-width: 559.98px){  .pk-results .pk-grid{ grid-template-columns: 1fr; }}

/* Results card small fixes */
  /* hide empty square */
.pk-results ul.meta{ list-style:none; padding-left:0; margin:.4rem 0 0; display:flex; gap:.5rem; align-items:center; }
.pk-results ul.meta li{ margin:0; }

/* Thumbnail stability (without touching existing aspect rules) */
.pk-results .card-head img{ width:100%; height:100%; object-fit:cover; display:block; }

/* --- v0.83 rating/tag polish --- */
.pk-results .card-body h4{ margin: 0 0 6px; line-height:1.25; }
.pk-results .card-body .desc{ margin: 0 0 6px; color: var(--pkmuted); }
.pk-results .card-body .meta{ list-style:none; padding:0; margin:0 0 6px; display:flex; gap:.4rem; align-items:center; color: var(--pkmuted); }

.pk-results .card-body .meta li{ margin:0; }
.pk-results .card-body .signals{ margin-top: 6px; }

/* Tag styling consistent with right-side reference */
.pk-results .tag--same{
  background: var(--pkpink);
  color:#fff;
  font-weight:600;
  font-size: .875rem;
  border-radius: 8px;
  padding: 4px 10px;
  display:inline-block;
  line-height:1;
}
@media (max-width: 560px){
  .pk-results .tag--same{ font-size:.74rem; padding:4px 9px; }
}

/* === v0.84: align RESULTS card body/meta/tag to events snippet values === */

/* BODY */
.pk-results .card-body{ padding:1rem 0; }
.pk-results .card-body a{ text-decoration:none; color:inherit; }
.pk-results .card-body h4{ margin:0 0 .25rem; font-size:.9rem; font-weight:700; }
.pk-results .card-body .desc{ color:var(--muted); font-size:.8rem; }

/* META (별점/리뷰) */
.pk-results .meta{
  list-style:none;
  margin:.35rem 0 0;
  padding:0;
  display:grid;
  gap:.2rem;
  color:var(--muted);
  font-size:.85rem;
}
.pk-results .meta li{
  display:flex;
  align-items:center;
  gap:.2rem;
  line-height:1.5;
}
.pk-results .meta li img{
  display:block;
  width:14px;
  height:14px;
}
.pk-results .score{ color:var(--text); font-weight:600; }

/* TAGS (중한동가) */
.pk-results .clinic-tags{
  display:flex;
  flex-wrap:wrap;
  gap:.5rem .4rem;
  align-items:center;
  margin-top:.5rem;
}
.pk-results .tag{
  display:inline-flex;
  align-items:center;
  gap:.25rem;
  padding:clamp(.18rem,.6vw,.25rem) clamp(.35rem,1.2vw,.5rem);
  font-size:clamp(.70rem,1.8vw,.875rem);
  font-weight:600;
  line-height:1;
  white-space:nowrap;
  max-width:100%;
}
.pk-results .tag--same{
  background:var(--primary);
  color:#fff;
  border:1px solid var(--primary);
}

@media (max-width:480px){
  .pk-results .clinic-tags{ gap:.35rem .3rem; }
  .pk-results .tag{ gap:.2rem; }
}

/* v0.85: show rating star & add chip styles */
.pk-results .card-body .meta .rating svg,
.pk-results .card-body .meta .rating img{ display:inline-block; width:14px; height:14px; }
.pk-results .tag{ border:1px solid #e5e7eb; background:#fff; color:var(--text); border-radius:0px; }
.pk-results .tag--same{ background:var(--pkpink); border-color:var(--pkpink); color:#fff; }

/* v0.86: treat-tags container (same as clinic-tags) */
.pk-results .treat-tags{
  display:flex;
  flex-wrap:wrap;
  gap:.5rem .4rem;
  align-items:center;
  margin-top:.25rem;
}
@media (max-width:480px){
  .pk-results .treat-tags{ gap:.35rem .3rem; }
}

/* v0.89 - Fav heart on results card head */
.pk-results .card-head{
  position:relative;
}
.pk-results .card-head .fav-btn{
  position:absolute;
  right:10px;
  top:10px;
  width:36px; height:36px;
  display:flex; align-items:center; justify-content:center;
  background:#fff;
  color:var(--muted);
  border:1px solid rgba(0,0,0,.08);
  border-radius:9999px;
  box-shadow:0 2px 10px rgba(0,0,0,.08);
  cursor:pointer;
  line-height:1;
  font-size:18px;
  transition:transform .12s ease, color .12s ease, border-color .12s ease;
}
.pk-results .card-head .fav-btn:hover{ transform:translateY(-1px); }
.pk-results .card-head .fav-btn.is-active{ color:var(--pkpink); border-color:var(--pkpink); }

/* v0.89 - Mobile 2 columns */
@media (max-width: 560px){
  .pk-results .pk-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .doctor-grid.pk-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 360px){
  .pk-results .pk-grid{ grid-template-columns: 1fr; }
  .doctor-grid.pk-grid{ grid-template-columns: 1fr; }
}

/* hero fold: remove bottom margin when collapsed */
.pk-hero{ transition: margin-bottom .25s ease; }
.pk-hero.is-collapsed,
.pk-hero[hidden],
.pk-hero[aria-hidden="true"]{ margin-bottom:0 !important; }
