/* Hayal / mekân ayrıntı penceresi — ortak (Geziler, Yapacaklarımız, ana sayfa). components/dream-modal.js */
.pl-dlg .ph { position: relative; aspect-ratio: 16 / 10; overflow: hidden; background: #1C1C1A; }
.pl-dlg .ph img, .pl-dlg .ph video { position: absolute; inset: 0; width: 100%; height: 100%; max-width: none; }
.pl-dlg .ph .bg { object-fit: cover; filter: blur(18px) brightness(0.65); transform: scale(1.2); }
.pl-dlg .ph .fg { object-fit: contain; }
.pl-dlg .ph.none { display: flex; align-items: center; justify-content: center; background: radial-gradient(circle at 30% 20%, rgba(217,102,123,0.25), transparent 60%), linear-gradient(140deg, #3a2e24, #231f1b); }
.pl-dlg.wish .ph.none { background: radial-gradient(circle at 30% 20%, rgba(142,123,184,0.35), transparent 60%), linear-gradient(140deg, #2c2440, #1d1a24); }
.pl-dlg .st { font-family: var(--font-mono); font-size: 0.68rem; letter-spacing: 0.08em; text-transform: uppercase; color: var(--accent); }
.pl-dlg.wish .st { color: var(--lavender); }
.pl-modal { position: fixed; inset: 0; z-index: 9000; display: none; align-items: center; justify-content: center; padding: 20px; background: rgba(15,12,10,0.7); backdrop-filter: blur(6px); }
.pl-modal.open { display: flex; }
.pl-dlg { position: relative; width: min(560px, 100%); max-height: calc(100vh - 40px); overflow-y: auto; border-radius: 24px; background: var(--bg-card); box-shadow: 0 30px 70px rgba(0,0,0,0.45); animation: pl-in 350ms var(--ease-out); }
@keyframes pl-in { from { opacity: 0; transform: translateY(16px) scale(0.97); } }
.pl-dlg .ph.none span { font-size: 4rem; }
.pl-dlg .bd { padding: 20px 24px 24px; display: flex; flex-direction: column; gap: 8px; }
.pl-dlg h2 { font-size: clamp(1.6rem, 4vw, 2.1rem); line-height: 1.1; }
.pl-dlg .note { font-size: 0.98rem; line-height: 1.6; color: var(--text-secondary); }
.pl-mini { height: 170px; border-radius: 14px; overflow: hidden; border: 1px solid var(--border-light); margin-top: 6px; z-index: 0; }
.pl-go { align-self: flex-start; margin-top: 6px; padding: 9px 16px; border-radius: 99px; background: var(--bg-secondary); border: 1px solid var(--border-light); font-size: 0.86rem; font-weight: 600; color: var(--text-primary); }
.pl-x { position: absolute; top: 12px; right: 12px; z-index: 2; width: 36px; height: 36px; border: none; border-radius: 50%; background: rgba(0,0,0,0.45); color: #fff; font-size: 1rem; cursor: pointer; }
.pl-dlg .ph.none { aspect-ratio: auto; height: 130px; }
.dr-dlg .dr-loc { font-size: 0.9rem; color: var(--text-secondary); }
.dr-dlg .dr-facts { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 4px; }
.dr-dlg .dr-facts span { padding: 6px 12px; border-radius: 99px; background: var(--bg-secondary); font-size: 0.82rem; color: var(--text-secondary); }
.dr-dlg .dr-facts b { font-weight: 600; color: var(--text-primary); margin-right: 4px; }
.dr-dlg h3 { font-size: 1.1rem; margin-top: 10px; }
.dr-dlg .dr-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; }
.dr-dlg .dr-list li { font-size: 0.92rem; color: var(--text-secondary); }
.dr-dlg .dr-list.prep li.done { text-decoration: line-through; opacity: 0.7; }
.dr-dot { width: 24px; height: 24px; border-radius: 50%; display: flex; align-items: center; justify-content: center; background: #5A8A6A; color: #fff; font-size: 0.72rem; font-weight: 700; border: 2px solid #fff; box-shadow: 0 2px 8px rgba(0,0,0,0.35); cursor: pointer; }
.dr-dlg .dr-mini { height: 200px; }
.dr-dlg .dr-pts { margin: 6px 0 0; padding-left: 22px; font-size: 0.9rem; color: var(--text-secondary); display: grid; gap: 3px; }
.pl-mini .osm-fallback { filter: saturate(0.75) sepia(0.1); }
