/* =========================================
   BuddyPlanner v2 — Restaurant Screen
   ========================================= */

.rest-hero { padding:var(--sp-5) var(--sp-5) var(--sp-3); }
.rest-badge {
  display:inline-flex;align-items:center;gap:var(--sp-2);
  padding:3px var(--sp-3);background:var(--gold-dim);
  border:1px solid rgba(200,169,81,0.2);border-radius:var(--r-full);
  font-size:var(--fs-2xs);font-weight:var(--fw-bold);color:var(--gold-400);
  margin-bottom:var(--sp-3);
}
.rest-title { font-size:var(--fs-2xl);font-weight:var(--fw-extrabold);letter-spacing:var(--ls-tight);margin-bottom:var(--sp-1); }
.rest-desc { font-size:var(--fs-sm);color:var(--text-500);line-height:var(--lh-relaxed); }

.rest-filter {
  padding:var(--sp-3) var(--sp-5);position:sticky;top:var(--header-h);z-index:10;
  background:rgba(6,13,10,0.92);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);
}

.rest-list { padding:var(--sp-3) var(--sp-5);display:flex;flex-direction:column;gap:var(--sp-4); }

/* ── Card ── */
.rest-card {
  background:var(--grad-card);border:1px solid var(--border-default);
  border-radius:var(--r-2xl);overflow:hidden;
  transition:all var(--dur-normal) var(--ease-out);
}
.rest-card:hover { border-color:var(--border-strong);transform:translateY(-3px);box-shadow:var(--shadow-lg); }

.rest-img {
  width:100%;height:140px;position:relative;overflow:hidden;
  background:linear-gradient(145deg, rgba(14,40,28,0.4), rgba(20,35,26,0.6));
}
.rest-img-placeholder {
  width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:3rem;
}
.rest-img .dist {
  position:absolute;bottom:var(--sp-3);right:var(--sp-3);
  padding:3px var(--sp-3);background:rgba(0,0,0,0.6);backdrop-filter:blur(8px);
  border-radius:var(--r-full);font-size:var(--fs-2xs);font-weight:var(--fw-bold);color:#fff;
}
.rest-img .golfer-tag {
  position:absolute;top:var(--sp-3);left:var(--sp-3);
  padding:3px var(--sp-3);background:rgba(200,169,81,0.88);
  border-radius:var(--r-full);font-size:var(--fs-2xs);font-weight:var(--fw-bold);color:var(--emerald-950);
}

.rest-body { padding:var(--sp-4) var(--sp-5); }
.rest-name { font-size:var(--fs-md);font-weight:var(--fw-bold);margin-bottom:var(--sp-2);letter-spacing:var(--ls-normal); }
.rest-meta { display:flex;align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-3); }
.rest-rating { display:flex;align-items:center;gap:var(--sp-1);font-size:var(--fs-sm);font-weight:var(--fw-bold);color:var(--gold); }
.rest-reviews { font-size:var(--fs-xs);color:var(--text-500); }

.rest-features { display:flex;flex-direction:column;gap:var(--sp-2);margin-bottom:var(--sp-3); }
.rest-feat { display:flex;align-items:flex-start;gap:var(--sp-2);font-size:var(--fs-sm);color:var(--text-300);line-height:var(--lh-relaxed); }
.feat-dot { color:var(--accent);font-size:6px;margin-top:7px;flex-shrink:0; }

.rest-menus { display:flex;gap:var(--sp-2);flex-wrap:wrap;margin-bottom:var(--sp-4); }
.menu-tag {
  padding:3px var(--sp-3);background:var(--gold-dim);
  border:1px solid rgba(200,169,81,0.15);border-radius:var(--r-full);
  font-size:var(--fs-2xs);font-weight:var(--fw-medium);color:var(--gold-300);
}

.rest-btns { display:flex; gap:var(--sp-2); }
.rest-btn {
  flex:1;display:flex;align-items:center;justify-content:center;gap:var(--sp-2);
  height:40px;border-radius:var(--r-md);font-size:var(--fs-xs);font-weight:var(--fw-semibold);
  background:var(--bg-input);border:1px solid var(--border-subtle);
  transition:all var(--dur-fast) var(--ease-out);
}
.rest-btn svg { width: 13px; height: 13px; stroke: currentColor; fill: none; stroke-width: 2.2; }
.rest-btn:hover { background:var(--bg-input-hover);border-color:var(--border-default); }
.rest-btn:active { transform:scale(0.97); }
.rest-btn.call:hover { border-color:rgba(34,201,135,0.3);color:var(--accent); }
.rest-btn.map:hover { border-color:rgba(200,169,81,0.3);color:var(--gold); }
.rest-btn.navi { border-color:rgba(70,173,255,0.3);color:#46ADFF; }

/* SVG Icon Helper overrides for restaurant elements */
.tab svg { width: 14px; height: 14px; stroke: currentColor; fill: none; stroke-width: 2.2; }
.rest-rating svg { fill: currentColor; }
.menu-tag svg { stroke: currentColor; fill: none; }
.dist svg, .golfer-tag svg { stroke: currentColor; fill: none; }
