/*
 * Admin panelindeki editörle (Summernote) sayfa gövdesine eklenen hazır içerik bileşenleri.
 * Sınıflar config/purifier.php "admin" profilindeki Attr.AllowedClasses listesinde olmalıdır; listede olmayan sınıflar kayıtta silinir.
 * Bu dosya admin editöründe de yüklenir, böylece içerik editörde de sitedeki gibi görünür.
 */

/* ── Gezi rotası ── */
.gezi-rota-page { font-family: 'Segoe UI', system-ui, -apple-system, sans-serif; color: #3b4148; }
.gezi-rota-page > * + * { margin-top: 1.5rem; }

.gezi-rota-page .gezi-header { padding-bottom: 1rem; border-bottom: 1px solid #e2e8f0; }
.gezi-rota-page .gezi-tags { display: flex; flex-wrap: wrap; gap: .5rem; margin: 0 0 .5rem; }
.gezi-rota-page .gezi-title { margin: 0 0 .25rem; font-size: 1.8rem; font-weight: 700; line-height: 1.3; letter-spacing: -.02em; color: #0f172a; }
.gezi-rota-page .gezi-subtitle { margin: 0; font-size: .85rem; color: #64748b; }

.gezi-rota-page .badge-tag { display: inline-block; padding: 3px 10px; border-radius: 50px; font-size: .7rem; font-weight: 700; letter-spacing: .02em; line-height: 1.6; }
.gezi-rota-page .badge-pink { background-color: #fce7f3; color: #be185d; border: 1px solid #fbcfe8; }
.gezi-rota-page .badge-sky { background-color: #f0f9ff; color: #0369a1; border: 1px solid #bae6fd; }
.gezi-rota-page .badge-amber { background-color: #fffbeb; color: #b45309; border: 1px solid #fde68a; }
.gezi-rota-page .badge-indigo { background-color: #eef2ff; color: #4338ca; border: 1px solid #c7d2fe; }
.gezi-rota-page .badge-emerald { background-color: #ecfdf5; color: #065f46; border: 1px solid #a7f3d0; }
.gezi-rota-page .badge-purple { background-color: #faf5ff; color: #7e22ce; border: 1px solid #e9d5ff; }
.gezi-rota-page .badge-rose { background-color: #fff1f2; color: #be123c; border: 1px solid #fecdd3; }
.gezi-rota-page .badge-cyan { background-color: #ecfeff; color: #0e7490; border: 1px solid #a5f3fc; }

/* Galeri */
.gezi-rota-page .gallery-grid { display: grid; grid-template-columns: 1fr; gap: .5rem; border-radius: 1.2rem; overflow: hidden; box-shadow: 0 4px 20px rgba(0, 0, 0, .08); }
.gezi-rota-page .gallery-item { position: relative; overflow: hidden; min-height: 180px; margin: 0; background: #0f172a; }
.gezi-rota-page .gallery-item img { display: block; width: 100%; height: 100%; margin: 0; object-fit: cover; border-radius: 0; transition: transform .6s ease; }
.gezi-rota-page .gallery-item:hover img { transform: scale(1.06); }
.gezi-rota-page .gallery-main::after { content: ""; position: absolute; inset: 0; background: linear-gradient(to top, rgba(15, 23, 42, .7) 0%, transparent 60%); pointer-events: none; }
.gezi-rota-page .gallery-caption { position: absolute; right: 0; bottom: 0; left: 0; z-index: 1; padding: 1rem; color: #fff; }
.gezi-rota-page .gallery-caption h3 { margin: 0 0 .25rem; font-size: 1.15rem; font-weight: 700; color: #fff; }
.gezi-rota-page .gallery-caption p { margin: 0; font-size: .75rem; line-height: 1.5; color: #cbd5e1; }
.gezi-rota-page .iconic-badge { display: inline-block; margin-bottom: .5rem; padding: 4px 10px; border-radius: 6px; background: #db2777; color: #fff; font-size: .6rem; font-weight: 800; letter-spacing: .03em; text-transform: uppercase; line-height: 1.4; }
.gezi-rota-page .gallery-label { position: absolute; bottom: 10px; left: 10px; padding: 4px 10px; border-radius: 6px; background: rgba(15, 23, 42, .8); backdrop-filter: blur(6px); color: #fff; font-size: .7rem; font-weight: 600; line-height: 1.4; }
.gezi-rota-page .gallery-label-pink { background: rgba(157, 23, 77, .85); color: #fce7f3; }

@media (min-width: 768px) {
  .gezi-rota-page .gallery-grid { grid-template-columns: repeat(4, 1fr); grid-template-rows: repeat(2, 240px); }
  .gezi-rota-page .gallery-main { grid-column: span 2; grid-row: span 2; }
}

/* Duraklar */
.gezi-rota-page .section-card { padding: 1.5rem; border: 1px solid #e2e8f0; border-radius: 1.2rem; background: #fff; box-shadow: 0 1px 8px rgba(0, 0, 0, .04); }
.gezi-rota-page .section-header { margin-bottom: 1.5rem; padding-bottom: 1rem; border-bottom: 1px solid #f1f5f9; }
.gezi-rota-page .section-header h2 { display: flex; align-items: center; gap: .6rem; margin: 0; font-size: 1.3rem; font-weight: 900; line-height: 1.3; color: #0f172a; }
.gezi-rota-page .section-header h2::before { content: ""; flex-shrink: 0; width: 4px; height: 28px; border-radius: 50px; background: #db2777; }
.gezi-rota-page .section-header p { margin: .25rem 0 0; font-size: .75rem; line-height: 1.6; color: #94a3b8; }

.gezi-rota-page .durak-grid { display: grid; grid-template-columns: 1fr; gap: 1rem; }
.gezi-rota-page .durak-card { display: flex; align-items: center; gap: 1rem; padding: .875rem; border: 1px solid #e2e8f0; border-radius: 1rem; background: #f8fafc; transition: all .3s ease; }
.gezi-rota-page .durak-card:hover { border-color: #fbcfe8; background: rgba(252, 231, 243, .25); }
.gezi-rota-page .durak-card img { flex-shrink: 0; width: 128px; height: 96px; margin: 0; object-fit: cover; border-radius: .75rem; box-shadow: 0 1px 4px rgba(0, 0, 0, .06); transition: transform .3s ease; }
.gezi-rota-page .durak-card:hover img { transform: scale(1.05); }
.gezi-rota-page .durak-info { font-size: .78rem; }
.gezi-rota-page .durak-info h4 { margin: 0 0 .25rem; font-size: .9rem; font-weight: 700; color: #0f172a; }
.gezi-rota-page .durak-info p { margin: 0; line-height: 1.6; color: #64748b; }
.gezi-rota-page .durak-meta { display: flex; align-items: center; gap: .5rem; margin: 0 0 .35rem; }
.gezi-rota-page .badge-sm { padding: 2px 8px; border-radius: 4px; font-size: .6rem; font-weight: 800; text-transform: uppercase; line-height: 1.6; }
.gezi-rota-page .time-info { font-size: .6rem; color: #94a3b8; }

@media (min-width: 768px) {
  .gezi-rota-page .section-card { padding: 2rem; }
  .gezi-rota-page .durak-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 575px) {
  .gezi-rota-page .durak-card { flex-direction: column; align-items: flex-start; }
  .gezi-rota-page .durak-card img { width: 100%; height: 180px; }
}

/* ── İndirim etiketi ve rezervasyon butonu (anasayfadaki CTA ile aynı görünüm) ── */
.cta-promo { display: inline-block; padding: 8px 20px; border-radius: 50px; background: #fa0a88; color: #fff; font-size: 15px; font-weight: 600; }
