/* ═══════════════════════════════════════════════════════════ */
/*  Restaurant Detail Page Styles                             */
/*  Extracted from inline <style> in build.js generated pages */
/* ═══════════════════════════════════════════════════════════ */
:root {
  --gold: #c8a84e; --gold-light: #dfc06a; --gold-dark: #a68a3e; --accent: #2d6a4f;
  --bg: #fafaf7; --bg-card: #ffffff; --text: #1a1a2e; --text-secondary: #555; --text-muted: #888;
  --border: rgba(0,0,0,0.08); --shadow-sm: 0 1px 3px rgba(0,0,0,0.06); --shadow-md: 0 4px 16px rgba(0,0,0,0.08);
  --radius: 16px; --radius-sm: 10px; --transition: 0.35s cubic-bezier(0.4,0,0.2,1); --transition-fast: 0.2s cubic-bezier(0.4,0,0.2,1);
  --font-display: 'Playfair Display', Georgia, serif; --font-body: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
}
[data-theme="dark"] {
  --bg: #0f0f1a; --bg-card: #1a1a2e; --text: #e8e8f0; --text-secondary: #aaa; --text-muted: #777;
  --border: rgba(255,255,255,0.08); --shadow-sm: 0 1px 3px rgba(0,0,0,0.2); --shadow-md: 0 4px 16px rgba(0,0,0,0.3);
}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}
body{font-family:var(--font-body);background:var(--bg);color:var(--text);line-height:1.6;-webkit-font-smoothing:antialiased;transition:background var(--transition),color var(--transition)}
a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer;border:none;background:none}img{max-width:100%;display:block}
::selection{background:var(--gold);color:#fff}
::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--gold);border-radius:4px}

.rd-header{position:sticky;top:0;z-index:var(--z-sticky);background:var(--bg-card);border-bottom:1px solid var(--border);padding:0 24px;height:64px;display:flex;align-items:center;justify-content:space-between;box-shadow:var(--shadow-sm);transition:background var(--transition)}
.rd-header-left{display:flex;align-items:center;gap:16px}
.rd-back{display:flex;align-items:center;gap:6px;font-size:0.85rem;font-weight:500;color:var(--text-muted);padding:6px 14px;border-radius:50px;background:var(--bg);border:1px solid var(--border);transition:all var(--transition-fast)}
.rd-back:hover{color:var(--gold);border-color:var(--gold)}
.rd-back svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2}
.rd-brand{font-family:var(--font-display);font-size:1.1rem;font-weight:600;color:var(--gold);letter-spacing:-0.02em}
.rd-brand span{color:var(--text);font-weight:400}
.rd-theme-btn{width:38px;height:38px;border-radius:50%;background:var(--bg);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:1.1rem;transition:all var(--transition-fast)}
.rd-theme-btn:hover{border-color:var(--gold);transform:scale(1.05)}

.rd-hero{position:relative;padding:80px 24px 60px;min-height:340px;display:flex;align-items:flex-end;overflow:hidden}
.rd-hero.has-image{min-height:400px}
.rd-hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0.6}
.rd-hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,20,40,0.3)0%,rgba(15,20,40,0.88)100%)}
.rd-hero-content{position:relative;z-index:1;max-width:900px;width:100%;margin:0 auto}
.rd-hero-town{display:inline-flex;align-items:center;gap:6px;font-size:0.78rem;font-weight:600;text-transform:uppercase;letter-spacing:0.08em;color:rgba(255,255,255,0.8);margin-bottom:12px}
.rd-hero-town-dot{width:8px;height:8px;border-radius:50%;display:inline-block}
.rd-hero-name{font-family:var(--font-display);font-size:clamp(2rem,5vw,3.2rem);font-weight:700;color:#fff;margin-bottom:12px;line-height:1.15}
.rd-hero-addr{font-size:0.95rem;color:rgba(255,255,255,0.7);margin-bottom:16px}
.rd-hero-tags{display:flex;gap:8px;flex-wrap:wrap}
.rd-hero-tag{padding:5px 14px;border-radius:50px;font-size:0.78rem;font-weight:600;background:rgba(255,255,255,0.12);color:rgba(255,255,255,0.9);border:1px solid rgba(255,255,255,0.15);backdrop-filter:blur(4px)}

.rd-main{max-width:900px;margin:0 auto;padding:40px 24px 80px}
.rd-section{background:var(--bg-card);border-radius:var(--radius);box-shadow:var(--shadow-md);border:1px solid var(--border);padding:28px;margin-bottom:24px;transition:background var(--transition)}
.rd-section-title{display:flex;align-items:center;gap:10px;font-family:var(--font-display);font-size:1.15rem;font-weight:600;margin-bottom:16px;color:var(--text)}
.rd-section-title svg{width:20px;height:20px;fill:none;stroke:var(--gold);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.rd-desc{font-size:1rem;line-height:1.7;color:var(--text-secondary)}
.rd-awards{display:flex;gap:8px;flex-wrap:wrap}
.rd-award{display:inline-flex;align-items:center;gap:6px;font-size:0.8rem;font-weight:600;padding:6px 14px;border-radius:50px;background:linear-gradient(135deg,rgba(200,168,78,0.12),rgba(200,168,78,0.05));color:var(--gold);border:1px solid rgba(200,168,78,0.2)}
.rd-award::before{content:'★'}
.rd-hours-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px}
.rd-hours-item{display:flex;flex-direction:column;padding:10px 14px;background:var(--bg);border-radius:var(--radius-sm);border:1px solid var(--border)}
.rd-hours-day{font-size:0.72rem;font-weight:700;text-transform:uppercase;letter-spacing:0.05em;color:var(--text-muted)}
.rd-hours-time{font-size:0.85rem;font-weight:500;color:var(--text);margin-top:2px}
.rd-note{padding:16px 20px;border-radius:var(--radius-sm);background:rgba(200,168,78,0.06);border-left:3px solid var(--gold);font-size:0.9rem;color:var(--text-secondary);line-height:1.5}
.rd-actions{display:flex;gap:10px;flex-wrap:wrap}
.rd-action-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 22px;border-radius:50px;font-size:0.85rem;font-weight:600;transition:all var(--transition-fast);text-decoration:none}
.rd-action-btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.rd-action-primary{background:var(--gold);color:#fff;border:1px solid var(--gold)}
.rd-action-primary:hover{background:var(--gold-dark);border-color:var(--gold-dark);transform:translateY(-1px)}
.rd-action-secondary{background:var(--bg);color:var(--text);border:1px solid var(--border)}
.rd-action-secondary:hover{border-color:var(--gold);color:var(--gold);transform:translateY(-1px)}
.rd-action-directions{background:rgba(39,174,96,0.08);color:#27ae60;border:1px solid rgba(39,174,96,0.3)}
.rd-action-directions:hover{background:#27ae60;color:#fff;border-color:#27ae60;transform:translateY(-1px)}
.rd-action-order{background:rgba(230,126,34,0.08);color:#e67e22;border:1px solid rgba(230,126,34,0.3)}
.rd-action-order:hover{background:#e67e22;color:#fff;border-color:#e67e22;transform:translateY(-1px)}
.rd-map-wrap{border-radius:var(--radius-sm);overflow:hidden;height:280px;margin-top:16px;border:1px solid var(--border)}
#rdMap{width:100%;height:100%}
[data-theme="dark"] #rdMap .leaflet-tile-pane{filter:brightness(0.8) contrast(1.1) saturate(0.3)}
.leaflet-control-attribution{font-size:9px !important;opacity:0.4}
.rd-nearby-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}
.rd-nearby-card{display:block;padding:16px;border-radius:var(--radius-sm);background:var(--bg);border:1px solid var(--border);transition:all var(--transition-fast);text-decoration:none}
.rd-nearby-card:hover{border-color:var(--gold);transform:translateY(-2px);box-shadow:var(--shadow-md)}
.rd-nearby-name{font-weight:600;font-size:0.9rem;margin-bottom:4px}
.rd-nearby-meta{font-size:0.78rem;color:var(--text-muted)}
.rd-breadcrumb{font-size:0.78rem;color:var(--text-muted);margin-bottom:8px;display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.rd-breadcrumb a{color:var(--text-muted);transition:color var(--transition-fast)}
.rd-breadcrumb a:hover{color:var(--gold)}
.rd-breadcrumb .sep{opacity:0.5}
.rd-footer{text-align:center;padding:32px 24px;border-top:1px solid var(--border);font-size:0.8rem;color:var(--text-muted)}
.rd-footer a{color:var(--text-muted);margin:0 8px}
.rd-footer a:hover{color:var(--gold)}
.rd-mvv-badge{display:inline-flex;align-items:center;gap:6px;margin-top:12px;padding:6px 14px;border-radius:50px;background:rgba(200,168,78,0.06);border:1px solid rgba(200,168,78,0.15);color:var(--gold);font-size:0.75rem;font-weight:600;text-decoration:none;transition:all 0.3s ease}
.rd-mvv-badge:hover{background:rgba(200,168,78,0.12);border-color:rgba(200,168,78,0.3)}

@media(max-width:600px){
  .rd-hero{padding:60px 16px 40px;min-height:280px}.rd-hero.has-image{min-height:320px}
  .rd-main{padding:24px 16px 60px}.rd-section{padding:20px}
  .rd-hours-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}
  .rd-actions{flex-direction:column}.rd-action-btn{justify-content:center}
}
