/**
 * Panda Design — Design Tokens & Base Typography
 * Source: Figma kit (Panda Scene Zen Design)
 * Loaded on any page where a section's style === 'panda'
 * @since 5.9.45
 */

/* ========== OZEUM WRAPPER NEUTRALIZE (archive + single + taxonomy) ========== */
body.post-type-archive-pnda_event .page_wrap,
body.post-type-archive-pnda_event .page_content_wrap,
body.post-type-archive-pnda_event .content_wrap,
body.post-type-archive-pnda_event .content_container,
body.single-pnda_event .page_wrap,
body.single-pnda_event .page_content_wrap,
body.single-pnda_event .content_wrap,
body.single-pnda_event .content_container,
body.tax-pnda_event_category .page_wrap,
body.tax-pnda_event_category .page_content_wrap,
body.tax-pnda_event_category .content_wrap,
body.tax-pnda_event_category .content_container,
body.tax-pnda_event_tag .page_wrap,
body.tax-pnda_event_tag .page_content_wrap,
body.tax-pnda_event_tag .content_wrap,
body.tax-pnda_event_tag .content_container {
    max-width: none !important;
    width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

:root {
    /* Primary */
    --panda-ink:        #2a2a25;
    --panda-gold:       #c9a84c;
    --gold-light:       #f5ecd4;

    /* Neutrals */
    --warm-gray:        #8a8578;
    --panda-background: #faf9f6;
    --card-white:       #ffffff;
    --panda-border:     #eae7e1;
    /* v5.9.95.7 — eksik token'lar tanımlandı: emerald fallback'i kapatır, gold disiplinine çeker */
    --panda-accent:     var(--panda-gold);   /* etkileşim/odak vurgusu = gold (eski ZenCore yeşili fallback kapatıldı) */
    --panda-soft:       #f5f3ee;             /* yumuşak nötr zemin (not/empty-state) */

    /* Semantic */
    --alert-red:        #c44b3f;
    --success-green:    #4a8c6f;
    --hot-orange:       #e65100;
    --info-blue:        #1565c0;

    /* Insight backgrounds */
    --popular-bg:       #fce4ec;
    --award-bg:         #fef3cd;
    --hot-bg:           #fff3e0;
    --new-bg:           #e3f2fd;
    --repeat-bg:        #e8f5e9;
    --muted-bg:         #f0ebe2;

    /* Typography */
    --font-display: 'Cormorant Garamond', Georgia, serif;
    --font-body:    'DM Sans', 'Inter', system-ui, sans-serif;

    /* Radii / spacing */
    --panda-radius-sm: 6px;
    --panda-radius:    10px;
    --panda-radius-lg: 14px;
}

/* Base resets scoped to panda wrapper, body-level when panda is active */
.panda-theme,
body.panda-theme-active {
    font-family: var(--font-body);
    color: var(--panda-ink);
    background: var(--panda-background);
}

.panda-theme h1, .panda-theme h2, .panda-theme h3,
body.panda-theme-active h1, body.panda-theme-active h2, body.panda-theme-active h3 {
    font-family: var(--font-display);
    font-weight: 600;
    letter-spacing: -0.01em;
    line-height: 1.15;
    color: var(--panda-ink);
}

/* Utility classes — to be used by panda templates */
.panda-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 clamp(16px, 4vw, 24px);
}

.panda-section-title {
    font-family: var(--font-display);
    font-size: clamp(24px, 5vw, 32px);
    font-weight: 600;
    margin: 0 0 clamp(16px, 3vw, 24px);
}

.panda-muted { color: var(--warm-gray); }
.panda-gold  { color: var(--panda-gold); }

.panda-card {
    background: var(--card-white);
    border: 1px solid var(--panda-border);
    border-radius: var(--panda-radius);
    padding: clamp(20px, 4vw, 32px);
}

.panda-pill {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px 10px;
    border-radius: 999px;
    background: var(--muted-bg);
    color: var(--panda-ink);
    font-family: var(--font-body);
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.panda-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 12px 22px;
    border: 1px solid transparent;
    border-radius: var(--panda-radius-sm);
    font-family: var(--font-body);
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.15s, color 0.15s, border-color 0.15s, transform 0.1s;
    text-decoration: none;
}
.panda-btn-primary {
    background: var(--panda-ink);
    color: #fff;
}
.panda-btn-primary:hover { background: #1a1a15; }
.panda-btn-gold {
    background: var(--panda-gold);
    color: var(--panda-ink);
}
.panda-btn-gold:hover { background: #b5932f; }
.panda-btn-ghost {
    background: transparent;
    border-color: var(--panda-border);
    color: var(--panda-ink);
}
.panda-btn-ghost:hover { background: var(--muted-bg); }

/* Placeholder frame — shown while a panda template hasn't been built yet */
.panda-placeholder {
    max-width: 720px;
    margin: 80px auto;
    padding: 48px;
    background: var(--card-white);
    border: 1px solid var(--panda-border);
    border-radius: var(--panda-radius);
    text-align: center;
}
.panda-placeholder h2 {
    margin: 0 0 12px;
    font-family: var(--font-display);
    font-size: 28px;
    color: var(--panda-ink);
}
.panda-placeholder p {
    color: var(--warm-gray);
    font-size: 14px;
    line-height: 1.6;
    margin: 0;
}

/* =========================================================
   LISTING PAGE (v5.9.46)
   ========================================================= */

/* Parent theme container/padding'ini neutralize et (ozeum vs.) */
body.post-type-archive-pnda_event,
body.tax-pnda_event_category,
body.tax-pnda_event_tag {
    background: var(--panda-background);
}
body.post-type-archive-pnda_event .panda-list-wrap,
body.post-type-archive-pnda_event .site-content,
body.post-type-archive-pnda_event .site-main,
body.post-type-archive-pnda_event main,
body.post-type-archive-pnda_event .entry-content,
body.post-type-archive-pnda_event .container,
body.tax-pnda_event_category .site-content,
body.tax-pnda_event_category .site-main,
body.tax-pnda_event_category main,
body.tax-pnda_event_category .entry-content,
body.tax-pnda_event_category .container {
    max-width: none !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
}

.panda-list-wrap { min-height: 100vh; background: var(--panda-background); }
.panda-list-wrap *, .panda-list-wrap *::before, .panda-list-wrap *::after { box-sizing: border-box; }
/* Linkler — parent theme'in underline/color'unu bastır */
.panda-list-wrap a { text-decoration: none; color: inherit; }
.panda-list-wrap img { max-width: 100%; height: auto; display: block; }
.panda-list-wrap button { font-family: inherit; }
/* Başlık ve paragraflar — parent theme default margin'lerini sıfırla */
.panda-list-wrap h1, .panda-list-wrap h2, .panda-list-wrap h3, .panda-list-wrap p { margin: 0; }

/* Hero strip (white card at top with title + catnav) */
.panda-list-hero {
    background: var(--card-white);
    border-bottom: 1px solid var(--panda-border);
}
.panda-list-hero-inner {
    max-width: 1000px;
    margin: 0 auto;
    padding: 0 24px;
}
.panda-list-header {
    padding-top: 64px;
    padding-bottom: 48px;
}
.panda-list-brand-pill {
    display: inline-block;
    padding: 6px 12px;
    font-family: var(--font-body);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.15em;
    color: var(--panda-gold);
    background: var(--gold-light);
    border-radius: 4px;
    margin-bottom: 12px;
}
.panda-list-title {
    font-family: var(--font-display);
    font-size: clamp(34px, 5vw, 52px);
    font-weight: 600;
    line-height: 1.1;
    letter-spacing: -0.02em;
    color: var(--panda-ink);
    margin: 0 0 12px;
}
.panda-list-subtitle {
    font-family: var(--font-body);
    font-size: clamp(14px, 1.5vw, 16px);
    font-weight: 400;
    line-height: 1.6;
    color: var(--warm-gray);
    max-width: 600px;
    margin: 0;
}

/* Category nav */
.panda-catnav {
    overflow-x: auto;
    border-bottom: 1px solid var(--panda-border);
    -webkit-overflow-scrolling: touch;
}
.panda-catnav-inner {
    display: flex;
    gap: 32px;
    min-width: max-content;
    font-family: var(--font-body);
}
.panda-catnav a {
    position: relative;
    padding: 16px 0;
    font-size: 13px;
    font-weight: 500;
    color: var(--warm-gray);
    text-decoration: none;
    transition: color 0.15s;
    white-space: nowrap;
}
.panda-catnav a:hover,
.panda-catnav a.active { color: var(--panda-ink); }
.panda-catnav a.active::after {
    content: '';
    position: absolute;
    bottom: 0; left: 0; right: 0;
    height: 2px;
    background: var(--panda-gold);
}

/* Content container */
.panda-list-content {
    max-width: 1000px;
    margin: 0 auto;
    padding: 0 24px;
}

/* Search bar */
.panda-searchbar {
    padding: 32px 0;
}
.panda-searchbar-input {
    position: relative;
    width: 100%;
    max-width: 320px;
}
.panda-searchbar-input input {
    width: 100%;
    padding: 10px 16px 10px 40px;
    font-family: var(--font-body);
    font-size: 14px;
    font-weight: 400;
    line-height: 1.5;
    color: var(--panda-ink);
    background: var(--panda-background);
    border: 1px solid var(--panda-border);
    border-radius: 6px;
    transition: border-color 0.2s, box-shadow 0.2s;
}
.panda-searchbar-input input:focus {
    outline: none;
    border-color: var(--panda-gold);
    box-shadow: 0 0 0 3px rgba(201, 168, 76, 0.12);
}
.panda-searchbar-input .icon {
    position: absolute;
    left: 12px;
    top: 50%;
    transform: translateY(-50%);
    width: 16px;
    height: 16px;
    color: var(--warm-gray);
    pointer-events: none;
}

/* Month group */
.panda-list-events { padding-bottom: 64px; }
.panda-month-group { margin-bottom: 32px; }
.panda-month-title {
    font-family: var(--font-body);
    font-size: 13px;
    font-weight: 600;
    color: var(--warm-gray);
    letter-spacing: 0.1em;
    text-transform: uppercase;
    line-height: 1.5;
    margin: 0 0 16px;
}
.panda-events-list {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

/* Event card — shared base */
.panda-event-card {
    display: block;
    background: var(--card-white);
    border: 1px solid var(--panda-border);
    border-radius: 6px;
    overflow: hidden;
    text-decoration: none;
    color: inherit;
    transition: transform 0.3s, box-shadow 0.3s;
}
.panda-event-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 16px rgba(42, 42, 37, 0.08);
}
.panda-event-card.is-sold-out { opacity: 0.5; pointer-events: none; }

/* ──── Desktop layout (>= 768px) ──── */
@media (min-width: 768px) {
    .panda-event-card {
        display: grid;
        grid-template-columns: 76px 240px 1fr 180px;
        min-height: 200px;
    }
    .panda-event-card .m-only { display: none !important; }
}
@media (max-width: 767px) {
    .panda-event-card .d-only { display: none !important; }
}

/* Date column (desktop) */
.panda-ec-date {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 12px 0;
    border-right: 1px solid var(--panda-border);
    background: var(--panda-background);
}
.panda-ec-date-day {
    font-family: var(--font-display);
    font-size: 30px;
    font-weight: 700;
    color: var(--panda-ink);
    line-height: 1;
}
.panda-ec-date-month {
    font-family: var(--font-body);
    font-size: 10px;
    font-weight: 600;
    color: var(--warm-gray);
    letter-spacing: 0.05em;
    text-transform: uppercase;
    margin-top: 4px;
}
.panda-ec-date-weekday {
    font-family: var(--font-body);
    font-size: 9px;
    font-weight: 400;
    color: var(--warm-gray);
}

/* Image */
.panda-ec-image {
    position: relative;
    height: 200px;
    overflow: hidden;
    background: var(--muted-bg);
}
.panda-ec-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s;
}
.panda-event-card:hover .panda-ec-image img { transform: scale(1.05); }

/* Mobile image (16:9) */
.panda-ec-image-mobile {
    position: relative;
    width: 100%;
    padding-bottom: 56.25%;
    background: var(--muted-bg);
    overflow: hidden;
}
.panda-ec-image-mobile img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.panda-ec-mobile-date-chip {
    position: absolute;
    bottom: 8px; left: 8px;
    padding: 4px 8px;
    background: rgba(42, 42, 37, 0.8);
    backdrop-filter: blur(6px);
    border-radius: 3px;
    font-family: var(--font-body);
    font-size: 11px;
    font-weight: 600;
    color: #fff;
}

/* Mobile date strip (top bar) */
.panda-ec-mobile-date-strip {
    padding: 10px 14px;
    background: var(--panda-background);
    border-bottom: 1px solid var(--panda-border);
    font-family: var(--font-body);
    font-size: 12px;
    font-weight: 600;
    color: var(--panda-ink);
}

/* Info */
.panda-ec-info {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 16px 20px;
}
.panda-ec-category {
    font-family: var(--font-body);
    font-size: 10px;
    font-weight: 600;
    color: var(--panda-gold);
    letter-spacing: 0.13em;
    text-transform: uppercase;
    margin-bottom: 6px;
}
.panda-ec-title {
    font-family: var(--font-display);
    font-size: 22px;
    font-weight: 600;
    color: var(--panda-ink);
    line-height: 1.2;
    margin: 0 0 8px;
    transition: color 0.15s;
}
.panda-event-card:hover .panda-ec-title { color: var(--panda-gold); }
.panda-ec-meta {
    display: flex;
    align-items: center;
    gap: 12px;
    font-family: var(--font-body);
    font-size: 12px;
    font-weight: 400;
    color: var(--warm-gray);
    line-height: 1.5;
    margin-bottom: 12px;
    flex-wrap: wrap;
}
.panda-ec-meta-item { display: inline-flex; align-items: center; gap: 4px; }
.panda-ec-meta-item svg { width: 12px; height: 12px; }

/* Session chips */
.panda-ec-chips {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}
.panda-session-chip {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 4px 8px;
    font-family: var(--font-body);
    font-size: 10px;
    font-weight: 500;
    color: var(--warm-gray);
    background: var(--panda-background);
    border: 1px solid var(--panda-border);
    border-radius: 3px;
    line-height: 1;
}
.panda-session-chip.is-active {
    color: var(--panda-ink);
    font-weight: 600;
    border-color: var(--panda-gold);
    background: var(--gold-light);
}
.panda-session-chip-extra {
    font-family: var(--font-body);
    font-size: 10px;
    font-weight: 400;
    color: var(--warm-gray);
    font-style: italic;
    padding: 0 4px;
}

/* Side panel (desktop) */
.panda-ec-side {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    padding: 14px 16px;
    border-left: 1px solid var(--panda-border);
    background: var(--panda-background);
    gap: 10px;
}
.panda-ec-cta {
    width: 100%;
    padding: 10px 16px;
    font-family: var(--font-body);
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.03em;
    color: #fff;
    background: var(--panda-ink);
    border: none;
    border-radius: 6px;
    cursor: pointer;
    transition: background 0.2s, color 0.2s;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
}
.panda-ec-cta:hover {
    background: var(--panda-gold);
    color: var(--panda-ink);
}
.panda-ec-cta.is-sold-out {
    background: var(--panda-border);
    color: var(--warm-gray);
    cursor: not-allowed;
}
.panda-ec-cta.is-sold-out:hover { background: var(--panda-border); color: var(--warm-gray); }

/* Mobile CTA wrapper */
.panda-ec-cta-wrap { padding: 0 14px 14px; }
.panda-ec-cta-wrap .panda-ec-cta { padding: 12px 16px; font-size: 13px; }

/* Mobile info */
.panda-ec-info-mobile { padding: 14px; }
.panda-ec-info-mobile .panda-ec-title { font-size: 18px; }

/* Event badge (corner label) */
.panda-ec-badge {
    position: absolute;
    top: 8px; left: 8px;
    padding: 3px 8px;
    font-family: var(--font-body);
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    border-radius: 3px;
    z-index: 10;
}
.panda-ec-badge.kampanya { background: var(--alert-red); color: #fff; }
.panda-ec-badge.son-biletler { background: var(--panda-gold); color: var(--panda-ink); }
.panda-ec-badge.yeni { background: var(--panda-ink); color: #fff; }

/* Insight — side panel (default) + mobile overlay variant */
.panda-insight {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    text-align: center;
}
.panda-insight-icon {
    width: 24px; height: 24px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
.panda-insight-icon svg { width: 12px; height: 12px; }
.panda-insight-msg {
    font-family: var(--font-display);
    font-size: 13px;
    font-weight: 500;
    line-height: 1.25;
    color: var(--panda-ink);
    font-style: italic;
    max-width: 140px;
    margin: 0;
}

.panda-insight--overlay {
    position: absolute;
    bottom: 8px; right: 8px;
    flex-direction: row;
    align-items: center;
    gap: 6px;
    padding: 4px 8px;
    background: rgba(255, 255, 255, 0.92);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    border-radius: 3px;
    z-index: 5;
    font-size: 11px;
}
.panda-insight--overlay .panda-insight-icon { width: 20px; height: 20px; }
.panda-insight--overlay .panda-insight-icon svg { width: 10px; height: 10px; }
.panda-insight--overlay .panda-insight-msg { font-size: 11px; max-width: none; }

/* Language label (event card meta) */
.panda-ec-language {
    color: var(--panda-gold) !important;
    font-weight: 600;
}
.panda-ec-language svg { width: 12px; height: 12px; }

/* Side panel fallback meta (no insight) */
.panda-ec-side-meta {
    text-align: center;
    color: var(--warm-gray);
    font-size: 11px;
    line-height: 1.4;
    font-family: var(--font-body);
}

/* Empty state */
.panda-empty {
    padding: 64px 24px;
    text-align: center;
    color: var(--warm-gray);
}
.panda-empty .icon { font-size: 40px; margin-bottom: 12px; opacity: 0.5; }

/* Pagination */
.panda-pagination {
    display: flex;
    justify-content: center;
    gap: 6px;
    padding: 32px 0;
}
.panda-pagination a,
.panda-pagination span {
    padding: 8px 14px;
    font-family: var(--font-body);
    font-size: 13px;
    border: 1px solid var(--panda-border);
    border-radius: 6px;
    color: var(--panda-ink);
    text-decoration: none;
    background: var(--card-white);
    transition: all 0.15s;
}
.panda-pagination a:hover { border-color: var(--panda-gold); color: var(--panda-gold); }
.panda-pagination .current { background: var(--panda-ink); color: #fff; border-color: var(--panda-ink); }


/* =========================================================
   DETAIL PAGE (v5.9.47) — EventDetail.tsx Panda uyarlaması
   ========================================================= */

/* Parent theme container neutralize */
body.single-pnda_event {
    background: var(--panda-background);
}
body.single-pnda_event .site-content,
body.single-pnda_event .site-main,
body.single-pnda_event main,
body.single-pnda_event .entry-content,
body.single-pnda_event .container,
body.single-pnda_event .content-area,
body.single-pnda_event article.post,
body.single-pnda_event article.pnda_event {
    max-width: none !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
}
body.single-pnda_event .entry-header,
body.single-pnda_event .entry-title,
body.single-pnda_event .entry-meta,
body.single-pnda_event .post-navigation,
body.single-pnda_event .nav-links {
    display: none !important;
}

.panda-detail { background: var(--panda-background); color: var(--panda-ink); min-height: 100vh; }
.panda-detail *, .panda-detail *::before, .panda-detail *::after { box-sizing: border-box; }
.panda-detail a { text-decoration: none; color: inherit; }
.panda-detail img { max-width: 100%; height: auto; display: block; }
.panda-detail button { font-family: inherit; }
.panda-detail h1, .panda-detail h2, .panda-detail h3, .panda-detail h4, .panda-detail p { margin: 0; }

/* ─── HERO ─── */
/* v5.9.76.7 — Panda Zen V1 (panda-classic) hero deseni V2'ye port edildi.
   - Masaüstü: blur bg div (inset:-20px, scale 1.1) + sharp img contain (letterbox)
   - Mobile (≤768): blur gizli, sharp img cover (object-position: center top)
   - Gradient: panda-ink tabanlı alt→üst (yazılar alt yarıda okunur)
   - Content: sol-hizalı (V1 ile aynı), max-width 1200, alt-yapışık */
/* v5.9.78+ Spotify-style hero: blurlu arka plan belirgin + ortalanmış tam foto.
   Foto kesilmez (object-fit: contain), boş alan canlı blur ile dolar. */
.panda-detail-hero {
    position: relative;
    width: 100%;
    height: clamp(420px, 60vh, 640px);
    background-color: var(--panda-ink);
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}
/* Blur arka plan — koyu ve dramatik, fotonun rengini taşıyan, sahne atmosferi */
.panda-detail-hero-blur {
    position: absolute;
    inset: 0;
    background-size: cover;
    background-position: center;
    filter: blur(36px) brightness(0.55) saturate(1.4);
    transform: scale(1.2);
    z-index: 1;
    pointer-events: none;
}
/* Ana foto — flex ile ortalanır, dikey tam doldurur (boşluk yok), hafif gölgeli */
.panda-detail-hero-img {
    position: relative;
    width: auto;
    height: 100%;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    object-position: center;
    z-index: 3;
    pointer-events: none;
    box-shadow: 0 24px 64px rgba(0,0,0,.55), 0 8px 24px rgba(0,0,0,.35);
}
/* z-index hiyerarşisi alttaki .panda-detail-hero-gradient kuralı tarafından
   ezdiriliyor — orada (line ~845) override edilir. Content ve back butonu da. */
@media (max-width: 768px) {
    .panda-detail-hero {
        height: auto;             /* dikey yetersizliği bitir — foto kendi yüksekliğini alır */
        min-height: 0;            /* alt boşluğu yok et — sadece foto + içerik yüksekliği */
        padding: 0;               /* iç padding sıfır — foto kendi border-radius'una sığar */
    }
    /* Mobil: blur daha koyu, sahne karanlığı */
    .panda-detail-hero-blur {
        display: block;
        filter: blur(28px) brightness(0.5) saturate(1.3);
        transform: scale(1.25);
    }
    /* Mobil foto: aspect ratio korunarak ekran genişliğine sığar */
    .panda-detail-hero-img {
        width: 92%;
        height: auto;
        max-height: 60vh;
        max-width: 92%;
        object-fit: contain;
    }
    .panda-detail-hero-inner {
        padding: 0 12px 16px !important;
    }
    html body .panda-detail-hero-inner .panda-detail-title {
        font-size: clamp(24px, 7vw, 32px) !important;
        margin-bottom: 8px !important;
    }
    .panda-detail-hero-inner .panda-detail-category-badge {
        font-size: 9px;
        padding: 4px 10px;
        letter-spacing: 0.12em;
        margin-bottom: 10px;
    }
    .panda-detail-hero-inner .panda-detail-award-badge {
        font-size: 11px;
        padding: 6px 10px;
        margin-bottom: 10px;
    }
    .panda-detail-hero-inner .panda-detail-meta { font-size: 12px; gap: 10px; }
    .panda-detail-hero-inner .panda-detail-meta-item { gap: 4px; }
    .panda-detail-hero-inner .panda-detail-meta-item svg { width: 14px; height: 14px; }
}
.panda-detail-hero-gradient {
    position: absolute; inset: 0;
    z-index: 4;                     /* blur (1) + img (3) üstünde, content (5) altında */
    background: linear-gradient(to top,
        rgba(10, 10, 10, 0.98) 0%,
        rgba(10, 10, 10, 0.85) 25%,
        rgba(10, 10, 10, 0.45) 55%,
        transparent 90%);
    pointer-events: none;
}
/* Content + back z-index — esas tanım line ~881'de, override için burada da güvenli yedek */
.panda-detail-back { z-index: 10; }
.panda-detail-back {
    position: absolute;
    top: clamp(16px, 3vw, 24px);
    left: clamp(16px, 3vw, 24px);
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 9px 16px;
    background: rgba(0, 0, 0, 0.5);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 24px;
    color: #fff;
    font-family: var(--font-body);
    font-size: 14px;
    font-weight: 600;
    transition: all 0.3s ease;
    z-index: 3;
}
.panda-detail-back:hover {
    background: rgba(201, 168, 76, 0.2);
    border-color: var(--panda-gold);
}
.panda-detail-back svg { width: 18px; height: 18px; transition: transform 0.3s; }
.panda-detail-back:hover svg { transform: translateX(-2px); }

.panda-detail-hero-content {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    z-index: 9;                 /* blur(1) + img(3) + gradient(4) ÜSTÜNDE */
    pointer-events: none;
}
.panda-detail-hero-content > * { pointer-events: auto; }
.panda-detail-hero-inner {
    max-width: 1200px;
    width: 100%;
    margin: 0 auto;
    padding: 0 clamp(16px, 4vw, 24px) clamp(24px, 5vw, 48px);
}
/* Title beyaz — ekstra-güçlü selector (tema/mobil cache override'a karşı) */
html body .panda-detail-hero .panda-detail-title,
html body .panda-detail-title { color: #fff !important; }

.panda-detail-breadcrumb {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-bottom: clamp(12px, 3vw, 20px);
    font-family: var(--font-body);
    font-size: 13px;
    color: rgba(255, 255, 255, 0.75);
}
.panda-detail-breadcrumb a { color: rgba(255, 255, 255, 0.75); transition: color 0.2s; }
.panda-detail-breadcrumb a:hover { color: #fff; }
.panda-detail-breadcrumb svg { width: 12px; height: 12px; color: rgba(255, 255, 255, 0.5); flex-shrink: 0; }
.panda-detail-breadcrumb span { color: rgba(255, 255, 255, 0.95); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
@media (max-width: 640px) { .panda-detail-breadcrumb { display: none; } }

.panda-detail-category-badge {
    display: inline-block;
    padding: 6px 12px;
    margin-bottom: 12px;
    background: rgba(201, 168, 76, 0.15);
    border: 1px solid rgba(201, 168, 76, 0.3);
    border-radius: 4px;
    color: var(--panda-gold);
    font-family: var(--font-body);
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.15em;
}
.panda-detail-title {
    margin-bottom: clamp(12px, 3vw, 18px) !important;
    font-family: var(--font-display);
    font-size: clamp(30px, 6vw, 52px);
    font-weight: 600;
    line-height: 1.1;
    letter-spacing: -0.02em;
    color: #fff !important;
}
.panda-detail-award-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 14px;
    margin-bottom: clamp(12px, 3vw, 18px);
    background: rgba(201, 168, 76, 0.25);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border: 1px solid rgba(201, 168, 76, 0.4);
    border-radius: 6px;
    color: #fff;
    font-family: var(--font-body);
    font-size: 13px;
    font-weight: 500;
}
.panda-detail-award-badge svg { width: 16px; height: 16px; color: var(--panda-gold); flex-shrink: 0; }

.panda-detail-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    font-family: var(--font-body);
    font-size: 14px;
    color: rgba(255, 255, 255, 0.9);
}
.panda-detail-meta-item { display: inline-flex; align-items: center; gap: 8px; }
.panda-detail-meta-item svg { width: 17px; height: 17px; flex-shrink: 0; }

/* ─── MAIN CONTENT ─── */
.panda-detail-main {
    max-width: 1200px;
    margin: 0 auto;
    padding: clamp(24px, 5vw, 48px) clamp(16px, 4vw, 24px);
}
.panda-detail-section { margin-bottom: clamp(32px, 5vw, 56px); }
.panda-detail-section-title {
    margin-bottom: clamp(16px, 3vw, 24px) !important;
    font-family: var(--font-display);
    font-size: clamp(22px, 4.5vw, 30px);
    font-weight: 600;
    color: var(--panda-ink);
    letter-spacing: -0.01em;
}
.panda-detail-card {
    padding: clamp(20px, 4vw, 32px);
    background: var(--card-white);
    border: 1px solid var(--panda-border);
    border-radius: 10px;
}

/* ─── SESSIONS ─── */
.panda-detail-sessions {
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px;
}
@media (min-width: 720px) { .panda-detail-sessions { grid-template-columns: repeat(2, 1fr); gap: 16px; } }
@media (min-width: 1024px) { .panda-detail-sessions { grid-template-columns: repeat(3, 1fr); } }

.panda-detail-session-card {
    padding: clamp(16px, 3.5vw, 20px);
    background: var(--card-white);
    border: 2px solid var(--panda-border);
    border-radius: 12px;
    transition: all 0.3s;
}
.panda-detail-session-card.is-selected {
    background: var(--panda-ink);
    border-color: var(--panda-gold);
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
}
.panda-detail-session-card.is-selected .panda-detail-session-info .panda-detail-session-date { color: #fff; }
.panda-detail-session-card.is-selected .panda-detail-session-info .panda-detail-session-weekday { color: rgba(255, 255, 255, 0.7); }
.panda-detail-session-card.is-selected .panda-detail-session-remaining { color: rgba(255, 255, 255, 0.8); border-top-color: rgba(255, 255, 255, 0.1); }
.panda-detail-session-card.is-selected .panda-detail-session-remaining strong { color: var(--panda-gold); }
.panda-detail-session-card.is-selected .panda-detail-time-btn {
    background: rgba(255, 255, 255, 0.1);
    border-color: rgba(255, 255, 255, 0.2);
    color: #fff;
}
.panda-detail-session-card.is-selected .panda-detail-time-btn.is-active {
    background: var(--panda-gold);
    border-color: var(--panda-gold);
    color: var(--panda-ink);
}

.panda-detail-session-top {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    margin-bottom: 12px;
}
.panda-detail-session-datebox {
    flex-shrink: 0;
    width: clamp(52px, 11vw, 60px);
    height: clamp(52px, 11vw, 60px);
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--panda-ink);
    border-radius: 8px;
    color: #fff;
    font-family: var(--font-display);
    font-size: clamp(22px, 5vw, 26px);
    font-weight: 700;
}
.panda-detail-session-info {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: clamp(52px, 11vw, 60px);
    flex-shrink: 0;
}
.panda-detail-session-date {
    font-family: var(--font-display);
    font-size: clamp(15px, 3.5vw, 19px);
    font-weight: 600;
    color: var(--panda-ink);
    line-height: 1.2;
}
.panda-detail-session-weekday {
    font-family: var(--font-body);
    font-size: 12px;
    font-weight: 500;
    color: var(--warm-gray);
    margin-top: 2px;
}
.panda-detail-session-times {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    flex: 1;
    align-items: center;
}
.panda-detail-time-btn {
    min-width: 72px;
    padding: 8px 14px;
    background: var(--panda-background);
    border: 1px solid var(--panda-border);
    border-radius: 8px;
    color: var(--panda-ink);
    font-family: var(--font-body);
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s;
    white-space: nowrap;
}
.panda-detail-time-btn:hover:not(:disabled) { transform: scale(1.04); }
.panda-detail-time-btn:disabled { opacity: 0.4; cursor: not-allowed; }
.panda-detail-time-btn.is-active {
    background: var(--panda-gold);
    border-color: var(--panda-gold);
    color: var(--panda-ink);
}
.panda-detail-session-remaining {
    padding-top: 10px;
    border-top: 1px solid var(--panda-border);
    font-family: var(--font-body);
    font-size: 12.5px;
    font-weight: 600;
    color: var(--warm-gray);
    display: flex;
    align-items: baseline;
    gap: 6px;
}
.panda-detail-session-remaining strong { color: var(--panda-ink); font-size: 14px; font-weight: 700; }

/* ─── SEAT ─── */
.panda-detail-seat-card {
    padding: clamp(16px, 4vw, 32px);
    background: var(--card-white);
    border: 1px solid var(--panda-border);
    border-radius: 12px;
}
.panda-detail-stage-wrap { margin-bottom: clamp(20px, 4vw, 28px); }
.panda-detail-stage {
    padding: 12px;
    text-align: center;
    background: var(--panda-ink);
    border-radius: 8px 8px 0 0;
    color: #fff;
    font-family: var(--font-body);
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.1em;
}
.panda-detail-stage-line {
    height: 3px;
    background: linear-gradient(90deg, transparent 0%, var(--panda-gold) 50%, transparent 100%);
    border-radius: 2px;
}

/* ─── ABOUT + TAGS ─── */
.panda-detail-content-body {
    font-family: var(--font-body);
    font-size: clamp(14px, 3.3vw, 15px);
    line-height: 1.8;
    color: var(--panda-ink);
}
.panda-detail-content-body p { margin-bottom: 1em !important; }
.panda-detail-content-body p:last-child { margin-bottom: 0 !important; }
.panda-detail-content-body h2,
.panda-detail-content-body h3 {
    font-family: var(--font-display);
    font-weight: 600;
    margin: 1.2em 0 0.6em !important;
}
.panda-detail-content-body h2 { font-size: 1.4em; }
.panda-detail-content-body h3 { font-size: 1.2em; }

.panda-detail-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 20px;
    padding-top: 16px;
    border-top: 1px solid var(--panda-border);
}
.panda-detail-tag {
    padding: 7px 14px;
    background: var(--panda-background);
    border: 1px solid var(--panda-border);
    border-radius: 6px;
    font-family: var(--font-body);
    font-size: 13px;
    font-weight: 600;
    color: var(--panda-ink);
    transition: all 0.25s;
}
.panda-detail-tag:hover {
    background: var(--panda-ink);
    color: #fff;
    border-color: var(--panda-ink);
}

/* ─── GALLERY ─── */
.panda-detail-gallery {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
}
@media (min-width: 600px) { .panda-detail-gallery { grid-template-columns: repeat(3, 1fr); } }
@media (min-width: 900px) { .panda-detail-gallery { grid-template-columns: repeat(4, 1fr); } }
.panda-detail-gallery-item {
    aspect-ratio: 1;
    padding: 0;
    border: 1px solid var(--panda-border);
    border-radius: 8px;
    overflow: hidden;
    background: var(--card-white);
    cursor: pointer;
    transition: transform 0.3s;
}
.panda-detail-gallery-item:hover { transform: scale(1.03); }
.panda-detail-gallery-item img { width: 100%; height: 100%; object-fit: cover; }

/* v5.9.95.7 — Galeri lightbox (panda seated + unnumbered, _components/gallery-lightbox.php) */
.panda-detail-lightbox {
    display: none;
    position: fixed;
    inset: 0;
    z-index: 100000;
    background: rgba(26, 25, 22, 0.92);
    align-items: center;
    justify-content: center;
    outline: none;
}
.panda-detail-lightbox.open { display: flex; }
.panda-detail-lightbox-stage { position: relative; max-width: 92vw; max-height: 88vh; display: flex; flex-direction: column; align-items: center; }
.panda-detail-lightbox-img {
    max-width: 92vw;
    max-height: 82vh;
    object-fit: contain;
    border-radius: 8px;
    box-shadow: 0 18px 60px rgba(0, 0, 0, 0.5);
}
.panda-detail-lightbox-counter {
    margin-top: 14px;
    color: #f5f3ee;
    font-family: var(--font-body, sans-serif);
    font-size: 13px;
    letter-spacing: 0.05em;
}
.panda-detail-lightbox-btn {
    position: absolute;
    background: rgba(255, 255, 255, 0.08);
    color: #fff;
    border: none;
    cursor: pointer;
    width: 48px;
    height: 48px;
    border-radius: 999px;
    font-size: 30px;
    line-height: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: background 0.18s;
}
.panda-detail-lightbox-btn:hover { background: rgba(255, 255, 255, 0.18); }
.panda-detail-lightbox-close { top: 24px; right: 24px; font-size: 26px; }
.panda-detail-lightbox-prev { left: 20px; top: 50%; transform: translateY(-50%); }
.panda-detail-lightbox-next { right: 20px; top: 50%; transform: translateY(-50%); }
@media (max-width: 600px) {
    .panda-detail-lightbox-prev { left: 8px; }
    .panda-detail-lightbox-next { right: 8px; }
    .panda-detail-lightbox-btn { width: 42px; height: 42px; font-size: 26px; }
}

/* ─── ORGANIZER ─── */
.panda-detail-organizer {
    display: flex;
    align-items: center;
    gap: 18px;
    padding: 20px;
    background: var(--card-white);
    border: 1px solid var(--panda-border);
    border-radius: 8px;
    transition: box-shadow 0.3s;
}
.panda-detail-organizer:hover { box-shadow: 0 4px 16px rgba(0, 0, 0, 0.06); }
/* v5.9.94.3 Patch A — Organizatör tıklanabilir link state */
a.panda-detail-organizer--link { text-decoration: none; color: inherit; cursor: pointer; }
a.panda-detail-organizer--link:hover { border-color: var(--panda-accent); box-shadow: 0 6px 20px rgba(201, 168, 76, 0.12); }
a.panda-detail-organizer--link:hover .panda-detail-org-arrow { transform: translateX(3px); }
.panda-detail-org-arrow { display: inline-block; margin-left: 4px; color: var(--panda-accent); transition: transform 0.2s; }
.panda-detail-org-logo {
    flex-shrink: 0;
    width: 72px;
    height: 72px;
    border-radius: 50%;
    overflow: hidden;
    border: 2px solid var(--panda-border);
}
.panda-detail-org-logo img { width: 100%; height: 100%; object-fit: cover; }
.panda-detail-org-info h3 {
    font-family: var(--font-display);
    font-size: 19px;
    font-weight: 600;
    color: var(--panda-ink);
    margin-bottom: 2px !important;
}
.panda-detail-org-info p {
    font-family: var(--font-body);
    font-size: 13px;
    color: var(--warm-gray);
}

/* ─── CAST ─── */
.panda-detail-cast-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
}
@media (min-width: 600px) { .panda-detail-cast-grid { grid-template-columns: repeat(3, 1fr); } }
@media (min-width: 900px) { .panda-detail-cast-grid { grid-template-columns: repeat(4, 1fr); } }
.panda-detail-cast-item {
    display: block;
    text-align: center;
    transition: opacity 0.3s;
}
.panda-detail-cast-item:hover { opacity: 0.82; }
.panda-detail-cast-avatar {
    width: 110px;
    height: 110px;
    margin: 0 auto 10px;
    border-radius: 50%;
    overflow: hidden;
    border: 2px solid var(--panda-border);
}
.panda-detail-cast-avatar img { width: 100%; height: 100%; object-fit: cover; }
.panda-detail-cast-item h3 {
    font-family: var(--font-body);
    font-size: 15px;
    font-weight: 600;
    color: var(--panda-ink);
    margin-bottom: 3px !important;
}
.panda-detail-cast-item p {
    font-family: var(--font-body);
    font-size: 13px;
    color: var(--warm-gray);
}

/* ─── REVIEWS ─── */
.panda-detail-reviews-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: clamp(16px, 3vw, 24px);
    flex-wrap: wrap;
}
.panda-detail-rating-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-family: var(--font-body);
}
.panda-detail-rating-badge svg { width: 18px; height: 18px; color: var(--panda-gold); }
.panda-detail-rating-badge strong {
    font-family: var(--font-display);
    font-size: 22px;
    font-weight: 700;
    color: var(--panda-ink);
}
.panda-detail-rating-badge span { font-size: 13px; color: var(--warm-gray); }

.panda-detail-reviews { display: grid; gap: 12px; }
.panda-detail-review {
    padding: 18px 20px;
    background: var(--card-white);
    border: 1px solid var(--panda-border);
    border-radius: 8px;
}
.panda-detail-review-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 10px;
}
.panda-detail-review-author {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 3px;
}
.panda-detail-review-author h4 {
    font-family: var(--font-body);
    font-size: 15px;
    font-weight: 600;
    color: var(--panda-ink);
}
.panda-detail-review-verified {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 16px;
    height: 16px;
    background: var(--panda-gold);
    border-radius: 50%;
    color: var(--panda-ink);
}
.panda-detail-review-verified svg { width: 10px; height: 10px; }
.panda-detail-review-meta {
    font-family: var(--font-body);
    font-size: 12px;
    color: var(--warm-gray);
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
}
.panda-detail-review-meta .dot { color: var(--panda-border); }
.panda-detail-review-meta .src { text-transform: lowercase; }
.panda-detail-review-stars { display: flex; gap: 1.5px; flex-shrink: 0; }
.panda-detail-review-stars svg {
    width: 14px;
    height: 14px;
    fill: transparent;
    stroke: var(--panda-border);
    stroke-width: 1.5;
}
.panda-detail-review-stars svg.filled {
    fill: var(--panda-gold);
    stroke: var(--panda-gold);
}
.panda-detail-review p {
    font-family: var(--font-body);
    font-size: 14px;
    line-height: 1.65;
    color: var(--panda-ink);
}

/* ─── v5.9.94.4 Review Form (Karma C) ─── */
.panda-review-empty {
    margin: 12px 0 0;
    padding: 18px;
    border: 1px dashed var(--panda-border, #e5e7eb);
    border-radius: 12px;
    color: var(--warm-gray, #6b7280);
    font-size: 14px;
    text-align: center;
    background: var(--panda-soft, #fafafa);
}

.panda-review-cta { margin: 14px 0 0; }
.panda-review-cta-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 16px;
    border: 1px solid var(--panda-border, #e5e7eb);
    border-radius: 999px;
    background: #fff;
    color: var(--panda-ink, #111);
    font-family: var(--font-body);
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    transition: border-color 0.2s, color 0.2s, box-shadow 0.2s, transform 0.2s;
}
.panda-review-cta-btn svg { width: 18px; height: 18px; color: var(--panda-accent); }
.panda-review-cta-btn:hover {
    border-color: var(--panda-accent);
    color: var(--panda-accent);
    box-shadow: 0 4px 14px rgba(201, 168, 76, 0.10);
    transform: translateY(-1px);
}

.panda-review-form {
    margin: 14px 0 0;
    padding: 22px;
    border: 1px solid var(--panda-border, #e5e7eb);
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.02);
}
.panda-review-form[hidden] { display: none; }
.panda-review-form-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 6px;
}
.panda-review-form-head h3 {
    margin: 0;
    font-family: var(--font-display, var(--font-body));
    font-size: 18px;
    font-weight: 600;
    color: var(--panda-ink, #111);
}
/* v5.9.95.2 — kapatma butonu ikincil: nötr gri, dolgusuz, gönder butonuyla yarışmaz */
.panda-review-close {
    width: 30px;
    height: 30px;
    border: none;
    background: transparent;
    color: rgba(42, 42, 37, 0.32);
    border-radius: 8px;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: color 0.15s;
}
.panda-review-close svg { width: 16px; height: 16px; }
.panda-review-close:hover { background: transparent; color: rgba(42, 42, 37, 0.7); }

.panda-review-form-note {
    margin: 4px 0 16px;
    padding: 10px 14px;
    border-radius: 10px;
    background: var(--panda-soft, #f7f8fa);
    color: var(--warm-gray, #6b7280);
    font-size: 13px;
    line-height: 1.55;
    display: flex;
    align-items: center;
    gap: 8px;
}
.panda-review-form-note--verified {
    background: rgba(74, 140, 111, 0.10);
    color: #357a5e;
}
.panda-review-form-note svg { width: 14px; height: 14px; flex-shrink: 0; }

/* v5.9.95.2 — "Puanın" etiketi üstteki nota yapışmasın: nefes payı */
.panda-review-stars-field { border: none; padding: 0; margin: 6px 0 16px; }
.panda-review-stars-field legend {
    font-size: 13px;
    font-weight: 500;
    color: var(--panda-ink, #111);
    margin-bottom: 9px;
    padding: 0;
}
.panda-review-stars {
    display: inline-flex;
    gap: 4px;
    align-items: center;
}
.panda-review-star {
    position: relative;
    cursor: pointer;
    display: inline-flex;
    padding: 4px;
}
.panda-review-star input {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
    pointer-events: none;
}
.panda-review-star svg {
    width: 28px;
    height: 28px;
    fill: #e5e7eb;
    stroke: none;
    transition: fill 0.15s, transform 0.15s;
}
.panda-review-star:hover svg,
.panda-review-star:hover ~ .panda-review-star svg {
    fill: #e5e7eb;
}
.panda-review-stars:hover .panda-review-star svg { fill: var(--panda-gold, #f5b301); }
.panda-review-stars .panda-review-star:hover ~ .panda-review-star svg { fill: #e5e7eb; }
.panda-review-star.is-filled svg { fill: var(--panda-gold, #f5b301); }
.panda-review-star input:focus-visible + svg {
    outline: 2px solid var(--panda-accent);
    outline-offset: 2px;
    border-radius: 4px;
}

.panda-review-row { display: grid; gap: 12px; margin-bottom: 12px; }
.panda-review-row--two { grid-template-columns: 1fr; }
@media (min-width: 600px) {
    .panda-review-row--two { grid-template-columns: 1fr 1fr; }
}
.panda-review-field {
    display: flex;
    flex-direction: column;
    gap: 6px;
    margin-bottom: 12px;
}
.panda-review-field > span {
    font-size: 13px;
    font-weight: 500;
    color: var(--panda-ink, #111);
}
.panda-review-field > span small {
    font-weight: 400;
    color: var(--warm-gray, #6b7280);
    font-size: 11px;
}
.panda-review-field input,
.panda-review-field textarea {
    width: 100%;
    padding: 10px 12px;
    border: 1px solid var(--panda-border, #e5e7eb);
    border-radius: 10px;
    background: #fff;
    color: var(--panda-ink, #111);
    font-family: var(--font-body);
    font-size: 14px;
    line-height: 1.5;
    transition: border-color 0.2s, box-shadow 0.2s;
    box-sizing: border-box;
}
.panda-review-field textarea { resize: vertical; min-height: 92px; }
.panda-review-field input:focus,
.panda-review-field textarea:focus {
    outline: none;
    border-color: var(--panda-accent);
    box-shadow: 0 0 0 3px rgba(201, 168, 76, 0.14);
}

.panda-review-form-actions { margin-top: 6px; }
.panda-review-submit {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 12px 22px;
    border: none;
    border-radius: 999px;
    background: var(--panda-gold, #c9a84c);
    color: var(--panda-ink, #2a2a25);
    font-family: var(--font-body);
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.2s, transform 0.2s, box-shadow 0.2s;
}
.panda-review-submit:hover {
    background: #b5932f;
    color: #fff;
    box-shadow: 0 6px 18px rgba(201, 168, 76, 0.24);
    transform: translateY(-1px);
}
.panda-review-submit:disabled { opacity: 0.6; cursor: not-allowed; transform: none; box-shadow: none; }
.panda-review-form.is-loading .panda-review-submit-label { display: none; }
.panda-review-form:not(.is-loading) .panda-review-submit-loading { display: none; }

.panda-review-form-message {
    margin-top: 14px;
    padding: 12px 16px;
    border-radius: 10px;
    font-size: 14px;
    line-height: 1.55;
}
.panda-review-form-message[data-type="success"] {
    background: rgba(74, 140, 111, 0.10);
    color: #357a5e;
    border: 1px solid rgba(74, 140, 111, 0.22);
}
.panda-review-form-message[data-type="error"] {
    background: rgba(220, 38, 38, 0.06);
    color: #b91c1c;
    border: 1px solid rgba(220, 38, 38, 0.20);
}

/* ─── SIMILAR EVENTS ─── */
.panda-detail-similar-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 14px;
}
@media (min-width: 720px) { .panda-detail-similar-grid { grid-template-columns: repeat(3, 1fr); } }
@media (min-width: 1024px) { .panda-detail-similar-grid { grid-template-columns: repeat(4, 1fr); } }
.panda-detail-similar-card {
    display: block;
    background: var(--card-white);
    border: 1px solid var(--panda-border);
    border-radius: 10px;
    overflow: hidden;
    transition: transform 0.25s, box-shadow 0.25s;
}
.panda-detail-similar-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.08);
}
.panda-detail-similar-image { aspect-ratio: 16/10; background: var(--panda-background); overflow: hidden; }
.panda-detail-similar-image img { width: 100%; height: 100%; object-fit: cover; }
.panda-detail-similar-info { padding: 12px 14px; }
.panda-detail-similar-info h3 {
    font-family: var(--font-display);
    font-size: 16px;
    font-weight: 600;
    color: var(--panda-ink);
    margin-bottom: 4px !important;
    line-height: 1.3;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.panda-detail-similar-info p {
    font-family: var(--font-body);
    font-size: 12.5px;
    color: var(--warm-gray);
}

/* ─── FIXED BOTTOM BAR ─── */
.panda-detail-bottombar {
    position: fixed;
    left: 0; right: 0; bottom: 0;
    z-index: 10000;
    background: var(--card-white);
    border-top: 2px solid var(--panda-border);
    box-shadow: 0 -4px 20px rgba(42, 42, 37, 0.12);
    padding: 12px 16px;
}
.panda-detail-bottombar-inner {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
}
.panda-detail-bar-info { flex: 1; min-width: 0; }
.panda-detail-bar-label {
    font-family: var(--font-body);
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--warm-gray);
}
.panda-detail-bar-price-row {
    display: flex;
    align-items: baseline;
    gap: 8px;
    flex-wrap: wrap;
}
.panda-detail-bar-price {
    font-family: var(--font-display);
    font-size: 24px;
    font-weight: 700;
    color: var(--panda-gold);
    line-height: 1;
}
.panda-detail-bar-detail {
    font-family: var(--font-body);
    font-size: 11px;
    color: var(--warm-gray);
}
/* v5.9.79+ Lock timer chip — bottom-bar üstünde koltuk kilit sayacı */
.panda-detail-bar-timer {
    font-family: var(--font-body);
    font-size: 12px;
    font-weight: 600;
    color: var(--warm-gray);
    margin-top: 4px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px 10px;
    border-radius: 999px;
    background: rgba(0, 0, 0, 0.04);
    transition: background-color .25s, color .25s;
}
.panda-detail-bar-timer.is-warning {
    color: var(--hot-orange);
    background: rgba(230, 81, 0, 0.08);
}
.panda-detail-bar-timer.is-critical {
    color: var(--alert-red);
    background: rgba(196, 75, 63, 0.10);
    animation: pndaTimerPulse 1s ease-in-out infinite;
}
@keyframes pndaTimerPulse {
    0%, 100% { opacity: 1; }
    50%      { opacity: 0.7; }
}
.panda-detail-bar-btn {
    padding: 13px 26px;
    background: var(--panda-ink);
    color: #fff;
    border: none;
    border-radius: 8px;
    font-family: var(--font-body);
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 0.03em;
    cursor: pointer;
    white-space: nowrap;
    flex-shrink: 0;
    transition: background 0.25s, color 0.25s;
}
.panda-detail-bar-btn:hover {
    background: var(--panda-gold);
    color: var(--panda-ink);
}

/* ─── MOBILE TWEAKS ─── */
@media (max-width: 720px) {
    .panda-detail-session-top {
        flex-wrap: wrap;
    }
    .panda-detail-session-info { flex: 1; min-width: 0; }
    .panda-detail-session-times { flex-basis: 100%; }
    .panda-detail-bar-price { font-size: 20px; }
    .panda-detail-bar-btn { padding: 12px 18px; font-size: 14px; }
    .panda-detail-bar-detail { display: none; }
    .panda-detail-title { font-size: clamp(26px, 7vw, 40px); }
}


/* =========================================================
   DETAIL PAGE — UNNUMBERED / GA (v5.9.48)
   GA shortcode sarmalayıcısı + initial bar + Panda stil override
   ========================================================= */

/* "Genel Giriş" rozeti (hero meta içinde) */
.panda-detail-ga-badge {
    padding: 4px 10px;
    background: rgba(201, 168, 76, 0.2);
    border: 1px solid rgba(201, 168, 76, 0.35);
    border-radius: 4px;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.04em;
}

/* GA card wrapper */
.panda-detail-ga-card {
    padding: clamp(16px, 4vw, 28px);
    background: var(--card-white);
    border: 1px solid var(--panda-border);
    border-radius: 12px;
}
.panda-detail-ga-intro {
    text-align: center;
    padding: 0 0 clamp(16px, 3vw, 22px);
    margin-bottom: clamp(16px, 3vw, 22px);
    border-bottom: 1px solid var(--panda-border);
}
.panda-detail-ga-intro-chip {
    display: inline-block;
    padding: 7px 14px;
    margin-bottom: 10px;
    background: var(--panda-background);
    border: 1px solid var(--panda-border);
    border-radius: 6px;
    font-family: var(--font-body);
    font-size: 13px;
    font-weight: 600;
    color: var(--panda-ink);
}
.panda-detail-ga-intro p {
    font-family: var(--font-body);
    font-size: 13.5px;
    line-height: 1.6;
    color: var(--warm-gray);
}

/* ─── GA SHORTCODE OVERRIDES (DOM yapısına dokunmadan Panda'laştır) ─── */

/* Ticket list container */
body.single-pnda_event .pnda-ga-selector-v2 {
    background: transparent;
}
body.single-pnda_event .pnda-ga-selector-v2 .pnda-ga-tickets {
    max-width: 720px;
    margin: 0 auto;
    padding: 0;
}

/* Ticket row — Panda card stili */
body.single-pnda_event .pnda-ga-ticket-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 16px 18px;
    margin-bottom: 10px;
    background: var(--panda-background);
    border: 1px solid var(--panda-border);
    border-radius: 10px;
    transition: border-color 0.2s;
}
body.single-pnda_event .pnda-ga-ticket-row:hover {
    border-color: var(--panda-gold);
}
body.single-pnda_event .pnda-ga-ticket-info {
    flex: 1;
    min-width: 0;
}
body.single-pnda_event .pnda-ga-ticket-name {
    font-family: var(--font-body);
    font-size: 15px;
    font-weight: 600;
    color: var(--panda-ink);
    margin-bottom: 3px;
}
body.single-pnda_event .pnda-ga-ticket-price {
    font-family: var(--font-display);
    font-size: 18px;
    font-weight: 700;
    color: var(--panda-gold);
}
body.single-pnda_event .pnda-ga-ticket-desc,
body.single-pnda_event .pnda-ga-ticket-sub {
    font-family: var(--font-body);
    font-size: 12px;
    color: var(--warm-gray);
    margin-top: 2px;
}

/* Quantity controls */
body.single-pnda_event .pnda-ga-ticket-action {
    flex-shrink: 0;
}
body.single-pnda_event .pnda-ga-qty-wrap {
    display: flex;
    align-items: center;
    gap: 10px;
}
body.single-pnda_event .pnda-ga-qty-btn {
    width: 36px;
    height: 36px;
    min-width: 36px;
    padding: 0;
    background: var(--panda-ink);
    color: #fff;
    border: none;
    border-radius: 50%;
    font-family: var(--font-body);
    font-size: 18px;
    font-weight: 700;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform 0.15s, background 0.2s, opacity 0.2s;
}
body.single-pnda_event .pnda-ga-qty-btn:hover:not(:disabled) {
    transform: scale(1.08);
    background: var(--panda-gold);
    color: var(--panda-ink);
}
body.single-pnda_event .pnda-ga-qty-btn:disabled {
    opacity: 0.3;
    cursor: not-allowed;
}
body.single-pnda_event .pnda-ga-qty-val {
    min-width: 44px;
    padding: 6px 10px;
    text-align: center;
    background: var(--card-white);
    border: 2px solid var(--panda-border);
    border-radius: 8px;
    font-family: var(--font-display);
    font-size: 20px;
    font-weight: 700;
    color: var(--panda-ink);
}
/* Seçili ticket (qty > 0) — gold border on qty-val */
body.single-pnda_event .pnda-ga-ticket-row.pnda-ga-has-selection .pnda-ga-qty-val,
body.single-pnda_event .pnda-ga-ticket-row[data-qty]:not([data-qty="0"]) .pnda-ga-qty-val {
    border-color: var(--panda-gold);
    background: var(--gold-light);
}

/* ─── GA FOOTER (shortcode'un kendi bottom bar'ı) ─── */
body.single-pnda_event .pnda-ga-footer {
    position: fixed;
    left: 0; right: 0; bottom: 0;
    z-index: 10000;
    background: var(--card-white);
    border-top: 2px solid var(--panda-border);
    box-shadow: 0 -4px 20px rgba(42, 42, 37, 0.12);
    padding: 12px 16px;
}
body.single-pnda_event .pnda-ga-footer-inner {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    flex-wrap: nowrap;
}
body.single-pnda_event .pnda-ga-total {
    flex: 1;
    min-width: 0;
}
body.single-pnda_event .pnda-ga-total-label {
    font-family: var(--font-body);
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--warm-gray);
    margin-bottom: 2px;
}
body.single-pnda_event .pnda-ga-total-price {
    font-family: var(--font-display);
    font-size: 24px;
    font-weight: 700;
    color: var(--panda-gold);
    line-height: 1;
}
body.single-pnda_event #pnda-ticket-detail {
    font-family: var(--font-body);
    font-size: 11px;
    color: var(--warm-gray);
    margin-top: 3px;
}
body.single-pnda_event .pnda-ga-submit,
body.single-pnda_event #pnda-ga-submit {
    padding: 13px 26px;
    background: var(--panda-ink);
    color: #fff;
    border: none;
    border-radius: 8px;
    font-family: var(--font-body);
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 0.03em;
    cursor: pointer;
    white-space: nowrap;
    flex-shrink: 0;
    transition: background 0.25s, color 0.25s;
}
body.single-pnda_event .pnda-ga-submit:hover,
body.single-pnda_event #pnda-ga-submit:hover {
    background: var(--panda-gold);
    color: var(--panda-ink);
}

/* ─── INITIAL BAR (başlangıç CTA) ─── */
.panda-detail-initial-bar {
    position: fixed;
    left: 0; right: 0; bottom: 0;
    z-index: 10000;
    background: var(--card-white);
    border-top: 2px solid var(--panda-border);
    box-shadow: 0 -4px 20px rgba(42, 42, 37, 0.12);
    padding: 12px 16px;
    display: flex;
    justify-content: center;
}
.panda-detail-initial-btn {
    width: 100%;
    max-width: 600px;
    padding: 16px 32px;
    background: var(--panda-ink);
    color: #fff;
    border: none;
    border-radius: 8px;
    font-family: var(--font-body);
    font-size: 16px;
    font-weight: 700;
    letter-spacing: 0.03em;
    cursor: pointer;
    transition: background 0.25s, color 0.25s;
}
.panda-detail-initial-btn:hover {
    background: var(--panda-gold);
    color: var(--panda-ink);
}

/* Mobile tweaks for GA */
@media (max-width: 640px) {
    body.single-pnda_event .pnda-ga-ticket-row {
        flex-direction: row;
        padding: 12px 14px;
        gap: 10px;
    }
    body.single-pnda_event .pnda-ga-qty-btn {
        width: 34px; height: 34px; min-width: 34px; font-size: 16px;
    }
    body.single-pnda_event .pnda-ga-qty-val {
        min-width: 40px; font-size: 18px; padding: 5px 8px;
    }
    body.single-pnda_event .pnda-ga-total-price { font-size: 20px; }
    body.single-pnda_event .pnda-ga-submit,
    body.single-pnda_event #pnda-ga-submit {
        padding: 12px 18px; font-size: 14px;
    }
}

/* ============================================================
   CHECKOUT (v5.9.50) — Figma Checkout.tsx referans
   ============================================================ */

.panda-checkout-v2 {
    background-color: var(--panda-background, #faf9f6);
    min-height: 100vh;
    font-family: var(--font-body, 'DM Sans', sans-serif);
    color: var(--panda-ink, #2a2a25);
}

/* Header — sade, border-b, max 1200, Geri + Ödeme + spacer */
.panda-checkout-v2 .panda-checkout-header {
    background: var(--card-white, #ffffff);
    border-bottom: 1px solid var(--panda-border, #eae7e1);
}
.panda-checkout-v2 .panda-checkout-header-inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px 24px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
}
.panda-checkout-v2 .panda-checkout-back {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-family: var(--font-body, 'DM Sans', sans-serif);
    font-size: 14px;
    font-weight: 500;
    color: var(--panda-ink, #2a2a25);
    text-decoration: none;
    background: none;
    border: none;
    cursor: pointer;
    transition: color 0.2s ease;
}
.panda-checkout-v2 .panda-checkout-back:hover {
    color: var(--panda-gold, #c9a84c);
}
.panda-checkout-v2 .panda-checkout-back svg {
    width: 18px;
    height: 18px;
}
.panda-checkout-v2 .panda-checkout-title {
    font-family: var(--font-display, 'Cormorant Garamond', serif);
    font-size: 26px;
    font-weight: 600;
    color: var(--panda-ink, #2a2a25);
    letter-spacing: 0.01em;
    margin: 0;
    line-height: 1;
}
.panda-checkout-v2 .panda-checkout-header-spacer {
    display: inline-block;
    width: 60px;
    height: 1px;
}

/* Body gutter — py-8 inline vardı; wrapper'dan sonra ferah padding */
.panda-checkout-v2 > .max-w-6xl {
    padding-top: 32px;
    padding-bottom: 56px;
}

/* Card'lar — radius 12, border, subtle shadow */
.panda-checkout-v2 .bg-white.rounded-2xl {
    background: var(--card-white, #ffffff);
    border-radius: 12px !important;
    border: 1px solid var(--panda-border, #eae7e1) !important;
    box-shadow: 0 1px 3px rgba(42, 42, 37, 0.04);
}

/* Bölüm başlıkları (h2/h3) — serif vurgu */
.panda-checkout-v2 h2,
.panda-checkout-v2 h3 {
    font-family: var(--font-display, 'Cormorant Garamond', serif);
    letter-spacing: 0.01em;
}
.panda-checkout-v2 .bg-white h3 {
    font-size: 22px;
    font-weight: 600;
    color: var(--panda-ink, #2a2a25);
}

/* Sağ "Sipariş Özeti" başlığı */
.panda-checkout-v2 .sticky h2 {
    font-size: 20px;
    font-weight: 600;
}

/* Inputlar — panda-border, radius 10, focus altın */
.panda-checkout-v2 .pnda-checkout-wrapper input[type="text"],
.panda-checkout-v2 .pnda-checkout-wrapper input[type="email"],
.panda-checkout-v2 .pnda-checkout-wrapper input[type="tel"],
.panda-checkout-v2 .pnda-checkout-wrapper input[type="password"],
.panda-checkout-v2 .pnda-checkout-wrapper input[type="number"],
.panda-checkout-v2 .pnda-checkout-wrapper select,
.panda-checkout-v2 .pnda-checkout-wrapper textarea {
    border: 1.5px solid var(--panda-border, #eae7e1);
    border-radius: 10px;
    padding: 14px 16px;
    background: var(--card-white, #ffffff);
    color: var(--panda-ink, #2a2a25);
    font-family: var(--font-body, 'DM Sans', sans-serif);
    font-size: 15px;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.panda-checkout-v2 .pnda-checkout-wrapper input:focus,
.panda-checkout-v2 .pnda-checkout-wrapper select:focus,
.panda-checkout-v2 .pnda-checkout-wrapper textarea:focus {
    border-color: var(--panda-gold, #c9a84c);
    box-shadow: 0 0 0 3px rgba(201, 168, 76, 0.15);
    outline: none;
}

/* Label — tiny caps */
.panda-checkout-v2 .pnda-checkout-wrapper label {
    font-family: var(--font-body, 'DM Sans', sans-serif);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--warm-gray, #8a8578);
    margin-bottom: 8px;
}
.panda-checkout-v2 .pnda-checkout-wrapper label .required {
    color: var(--panda-gold, #c9a84c);
    margin-left: 2px;
}

/* Payment method kartları — radius 10, panda border, seçili altın */
.panda-checkout-v2 .payment-method {
    border-radius: 10px !important;
    border: 1.5px solid var(--panda-border, #eae7e1) !important;
    background: var(--card-white, #ffffff);
    transition: all 0.2s ease;
}
.panda-checkout-v2 .payment-method:hover {
    border-color: var(--panda-gold, #c9a84c) !important;
}
.panda-checkout-v2 .payment-method.selected {
    border-color: var(--panda-gold, #c9a84c) !important;
    background: rgba(201, 168, 76, 0.05) !important;
    box-shadow: 0 0 0 3px rgba(201, 168, 76, 0.12);
}

/* CTA "Tamamla ve Ödemeye Geç" — gold primary (Figma: ink default + gold hover;
   ama mevcut sistemde gold primary tutarlılığı korunsun) */
.panda-checkout-v2 #place_order {
    background: var(--panda-gold, #c9a84c) !important;
    color: #ffffff !important;
    font-family: var(--font-body, 'DM Sans', sans-serif) !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    letter-spacing: 0.02em;
    border: none;
    border-radius: 12px !important;
    padding: 16px 20px !important;
    box-shadow: 0 4px 12px rgba(201, 168, 76, 0.28);
    transition: background 0.2s ease, box-shadow 0.2s ease, transform 0.1s ease;
}
.panda-checkout-v2 #place_order:hover:not(:disabled) {
    background: #b8941f !important;
    box-shadow: 0 6px 16px rgba(201, 168, 76, 0.38);
    transform: translateY(-1px);
}
.panda-checkout-v2 #place_order:active {
    transform: translateY(0);
}

/* Order summary sticky card — radius 12, padding, toplam altın */
.panda-checkout-v2 .sticky.top-24 {
    border-radius: 12px !important;
    border: 1px solid var(--panda-border, #eae7e1) !important;
    background: var(--card-white, #ffffff) !important;
    padding: 24px !important;
    top: 24px !important;
}
.panda-checkout-v2 .sticky .text-xl {
    font-family: var(--font-display, 'Cormorant Garamond', serif) !important;
    font-size: 24px !important;
    font-weight: 700 !important;
    color: var(--panda-gold, #c9a84c) !important;
}

/* Cart item preview — Panda card bg */
.panda-checkout-v2 .bg-\[\#f9f9f8\] {
    background: rgba(201, 168, 76, 0.06) !important;
    border-radius: 8px;
}

/* "GİRİŞ YAP" butonu — Figma'da daha narin */
.panda-checkout-v2 button.bg-\[var\(--pnda-gold\)\] {
    background: var(--panda-gold, #c9a84c) !important;
    padding: 10px 18px !important;
    border-radius: 9999px !important;
    box-shadow: 0 2px 6px rgba(201, 168, 76, 0.25);
}

/* Terms checkbox — Panda frame */
.panda-checkout-v2 .custom-checkbox .checkmark {
    border-radius: 6px;
    border: 2px solid var(--panda-border, #eae7e1);
}
.panda-checkout-v2 .custom-checkbox input:checked ~ .checkmark {
    background: var(--panda-gold, #c9a84c);
    border-color: var(--panda-gold, #c9a84c);
}

/* Trust badges satırı */
.panda-checkout-v2 .border-gray-100 {
    border-color: var(--panda-border, #eae7e1) !important;
}

/* Mobile — header kompakt */
@media (max-width: 640px) {
    .panda-checkout-v2 .panda-checkout-header-inner {
        padding: 16px;
    }
    .panda-checkout-v2 .panda-checkout-title {
        font-size: 20px;
    }
    .panda-checkout-v2 .panda-checkout-header-spacer {
        display: none;
    }
    .panda-checkout-v2 > .max-w-6xl {
        padding-top: 20px;
        padding-bottom: 40px;
    }
    .panda-checkout-v2 #place_order {
        font-size: 15px !important;
        padding: 14px 18px !important;
    }
}

/* ================================================================
   Panda V2 Auth (Login + Register) — v5.9.57
   Kaynak: docs/panda-v2-source/src/app/pages/Login.tsx + Register.tsx
   ================================================================ */

.panda-auth-page {
    min-height: calc(100vh - 200px);
    background: var(--panda-background);
    padding: 48px 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: var(--font-body);
    color: var(--panda-ink);
    width: 100vw;
    margin-left: calc(-50vw + 50%);
}
.panda-auth-page * { box-sizing: border-box; }

.panda-auth-container {
    width: 100%;
    max-width: 420px;
}

/* Brand header */
.panda-auth-brand {
    text-align: center;
    margin-bottom: 28px;
}
.panda-auth-brand-logo {
    display: inline-block;
    font-family: var(--font-display);
    font-size: 32px;
    font-weight: 600;
    color: var(--panda-ink);
    text-decoration: none;
    margin-bottom: 6px;
    line-height: 1;
    transition: color 0.15s;
}
.panda-auth-brand-logo:hover { color: var(--panda-gold); }
.panda-auth-brand-tagline {
    font-size: 14px;
    color: var(--warm-gray);
    margin: 0;
}

/* Card */
.panda-auth-card {
    background: var(--card-white);
    border: 1px solid var(--panda-border);
    border-radius: 12px;
    padding: 32px;
}
.panda-auth-title {
    font-family: var(--font-display);
    font-size: 28px;
    font-weight: 600;
    line-height: 1.2;
    color: var(--panda-ink);
    margin: 0 0 8px;
    letter-spacing: -0.005em;
}
.panda-auth-subtitle {
    font-size: 14px;
    color: var(--warm-gray);
    line-height: 1.5;
    margin: 0 0 28px;
}

/* Form */
.panda-auth-form .panda-field {
    margin-bottom: 20px;
}
.panda-auth-form .panda-grid-2 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}
.panda-auth-form .panda-grid-2 .panda-field { margin-bottom: 20px; }
@media (max-width: 480px) {
    .panda-auth-form .panda-grid-2 { grid-template-columns: 1fr; gap: 0; }
}
.panda-auth-form input.is-readonly {
    color: var(--warm-gray);
    cursor: not-allowed;
}
.panda-auth-form select {
    width: 100%;
    padding: 14px 16px;
    font-family: var(--font-body);
    font-size: 15px;
    color: var(--panda-ink);
    background: var(--panda-background);
    border: 2px solid var(--panda-border);
    border-radius: 8px;
    outline: none;
    cursor: pointer;
    transition: border-color 0.2s, box-shadow 0.2s;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%238a8578' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");
    background-repeat: no-repeat;
    background-position: right 14px center;
    padding-right: 40px;
}
.panda-auth-form select:focus {
    border-color: var(--panda-gold);
    box-shadow: 0 0 0 3px rgba(201, 168, 76, 0.12);
}
.panda-auth-form select:disabled {
    opacity: 0.55;
    cursor: wait;
}
.panda-auth-form label {
    display: block;
    font-size: 13px;
    font-weight: 600;
    color: var(--panda-ink);
    margin-bottom: 8px;
}
.panda-auth-form input[type="email"],
.panda-auth-form input[type="text"],
.panda-auth-form input[type="tel"],
.panda-auth-form input[type="password"] {
    width: 100%;
    padding: 14px 16px;
    font-family: var(--font-body);
    font-size: 15px;
    color: var(--panda-ink);
    background: var(--panda-background);
    border: 2px solid var(--panda-border);
    border-radius: 8px;
    outline: none;
    transition: border-color 0.2s, box-shadow 0.2s;
}
.panda-auth-form input:focus {
    border-color: var(--panda-gold);
    box-shadow: 0 0 0 3px rgba(201, 168, 76, 0.12);
}

/* Error */
.panda-auth-error {
    background: rgba(196, 75, 63, 0.08);
    border: 1px solid rgba(196, 75, 63, 0.28);
    color: var(--alert-red);
    border-radius: 8px;
    padding: 10px 14px;
    font-size: 13px;
    margin: 0 0 18px;
}

/* Button */
.panda-auth-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: 100%;
    padding: 16px 24px;
    min-height: 52px;
    font-family: var(--font-body);
    font-size: 15px;
    font-weight: 600;
    border-radius: 8px;
    border: 1px solid transparent;
    cursor: pointer;
    transition: background 0.18s, color 0.18s, border-color 0.18s, opacity 0.18s;
    text-decoration: none;
}
.panda-auth-btn-primary {
    background: var(--panda-ink);
    color: #fff;
    border-color: var(--panda-ink);
}
.panda-auth-btn-primary:hover:not(:disabled) {
    background: var(--panda-gold);
    color: var(--panda-ink);
    border-color: var(--panda-gold);
}
.panda-auth-btn-primary:disabled {
    opacity: 0.45;
    cursor: not-allowed;
}
.panda-auth-btn-primary.is-loading .label,
.panda-auth-btn-primary.is-loading .arrow {
    display: none;
}
.panda-auth-btn-primary .spinner { display: none; }
.panda-auth-btn-primary.is-loading .spinner {
    display: inline-block;
    width: 18px;
    height: 18px;
    border: 2px solid rgba(255,255,255,0.35);
    border-top-color: #fff;
    border-radius: 999px;
    animation: panda-auth-spin 0.7s linear infinite;
}
@keyframes panda-auth-spin { to { transform: rotate(360deg); } }

.panda-auth-btn-ghost {
    background: #fff;
    color: var(--panda-ink);
    border-color: var(--panda-border);
    margin-top: 18px;
}
.panda-auth-btn-ghost:hover { border-color: var(--panda-ink); }

/* Success / sent state */
.panda-auth-success-icon {
    width: 80px;
    height: 80px;
    margin: 0 auto 20px;
    border-radius: 999px;
    background: var(--gold-light);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--panda-gold);
}
.panda-auth-success-icon svg { width: 36px; height: 36px; }
.panda-auth-card--sent { text-align: center; }
.panda-auth-card--sent .sent-email { color: var(--panda-ink); }

.panda-auth-info-box {
    background: var(--panda-background);
    border: 1px solid var(--panda-border);
    border-radius: 8px;
    padding: 14px 16px;
    font-size: 13px;
    color: var(--warm-gray);
    text-align: left;
    line-height: 1.5;
    margin-top: 20px;
}
.panda-auth-info-box strong {
    display: block;
    color: var(--panda-ink);
    margin-bottom: 4px;
}

/* Back link */
.panda-auth-back {
    text-align: center;
    margin-top: 22px;
}
.panda-auth-back a {
    font-size: 14px;
    font-weight: 500;
    color: var(--warm-gray);
    text-decoration: none;
    transition: color 0.15s;
}
.panda-auth-back a:hover { color: var(--panda-ink); }

/* Mobile */
@media (max-width: 480px) {
    .panda-auth-page { padding: 32px 16px; }
    .panda-auth-card { padding: 24px 20px; }
    .panda-auth-brand-logo { font-size: 28px; }
    .panda-auth-title { font-size: 24px; }
    .panda-auth-btn { padding: 14px 20px; min-height: 48px; font-size: 14px; }
}

/* v5.9.76.5 — Bottom Bar Inline Session Chip Strip (UIKit chip stili).
   Bar'ın HEMEN ÜSTÜNDE fixed; ayrı element (#pnda-bottom-bar DOM sözleşmesi DOKUNULMAZ).
   Chip click → sayfadaki .pnda-zen-time-btn click'i tetikler (state machine devreye girer). */
.panda-detail-bar-sessions {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 88px;
    z-index: 998;
    display: flex;
    gap: 8px;
    padding: 10px 16px;
    background: #fff;
    border-top: 1px solid var(--panda-border, #eae7e1);
    box-shadow: 0 -4px 16px rgba(0, 0, 0, 0.04);
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: thin;
}
.panda-detail-bar-sessions::-webkit-scrollbar { height: 4px; }
.panda-detail-bar-sessions::-webkit-scrollbar-thumb { background: var(--panda-border, #eae7e1); border-radius: 2px; }
.panda-detail-bar-chip {
    flex-shrink: 0;
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 1px;
    min-width: 64px;
    padding: 8px 14px;
    background: var(--panda-background, #faf9f6);
    border: 1px solid var(--panda-border, #eae7e1);
    border-radius: 8px;
    color: var(--panda-ink, #2a2a25);
    font-family: var(--font-body, "DM Sans", sans-serif);
    cursor: pointer;
    transition: all 0.15s ease;
}
.panda-detail-bar-chip:hover {
    border-color: var(--panda-gold, #c9a84c);
    background: rgba(201, 168, 76, 0.06);
}
.panda-detail-bar-chip:disabled {
    opacity: 0.4;
    cursor: not-allowed;
    pointer-events: none;
}
.panda-detail-bar-chip.is-active {
    background: var(--panda-gold, #c9a84c);
    border-color: var(--panda-gold, #c9a84c);
    color: var(--panda-ink, #2a2a25);
}
.panda-detail-bar-chip .bar-chip-date {
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}
.panda-detail-bar-chip .bar-chip-weekday {
    font-size: 9px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    opacity: 0.6;
}
.panda-detail-bar-chip .bar-chip-time {
    font-family: var(--font-display, "Cormorant Garamond", serif);
    font-size: 16px;
    font-weight: 700;
    margin-top: 2px;
}
/* Body alt boşluk: bottom bar (~90) + chip strip (~70) */
html body.single-pnda_event .panda-detail { padding-bottom: 180px !important; }
@media (max-width: 768px) {
    /* Mobile: chip strip TAMAMEN GİZLE (kullanıcı kararı — masaüstünde aktif kalır) */
    .panda-detail-bar-sessions { display: none !important; }
    html body.single-pnda_event .panda-detail { padding-bottom: 100px !important; }

    /* Bottom bar info: kompakt tek satır — tutar + koltuk birleşik görünüm */
    .panda-detail-bottombar { padding: 10px 14px; }
    .panda-detail-bottombar-inner { gap: 10px; }
    .panda-detail-bar-info {
        display: flex;
        align-items: baseline;
        gap: 8px;
        flex-wrap: wrap;
    }
    .panda-detail-bar-label {
        font-size: 9px;
        margin: 0;
        flex-shrink: 0;
    }
    .panda-detail-bar-price-row {
        flex-wrap: nowrap;
        align-items: baseline;
        gap: 6px;
    }
    .panda-detail-bar-detail { display: inline !important; font-size: 11px; }
    .panda-detail-bar-timer { margin: 0; flex-basis: 100%; font-size: 10px; }
    .panda-detail-bar-btn { padding: 11px 16px; font-size: 13px; }
}

/* ═══════════════════════════════════════════════════════════════════
   v5.9.79+ Components — Insight + Video
   Konum: templates/panda/_components/{insight,video-section}.php
   ═══════════════════════════════════════════════════════════════════ */

/* ──── Insight chip ──── */
.pnda-insight {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 6px 12px 6px 6px;
    border-radius: 999px;
    background: var(--card-white);
    border: 1px solid var(--panda-border);
    font-family: var(--font-body);
    font-size: 13px;
    color: var(--panda-ink);
    line-height: 1.2;
}
.pnda-insight-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    font-size: 11px;
    flex-shrink: 0;
}
.pnda-insight-msg {
    font-family: var(--font-display);
    font-style: italic;
    font-weight: 500;
    color: var(--panda-ink);
}

/* Overlay variant — foto üzerinde küçük şeffaf chip */
.pnda-insight--overlay {
    background: rgba(255, 255, 255, 0.92);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    padding: 4px 10px 4px 4px;
    font-size: 11px;
    border-color: transparent;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}
.pnda-insight--overlay .pnda-insight-icon {
    width: 18px;
    height: 18px;
    font-size: 9px;
}

/* ──── Video Section (iframe 16:9 responsive) ──── */
.pnda-video-section {
    padding: 32px 18px;
}
.pnda-video-wrap {
    position: relative;
    width: 100%;
    max-width: 960px;
    margin: 0 auto;
    aspect-ratio: 16 / 9;
    background: #000;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.2);
}
.pnda-video-wrap iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

@media (max-width: 768px) {
    .pnda-video-section { padding: 24px 12px; }
    .pnda-video-wrap { border-radius: 8px; }
}

/* ─── Insight band (About üstü/altı sade vurgu) ──── */
.panda-detail-insight-band {
    max-width: 1000px;
    margin: 0 auto 24px;
    padding: 0 clamp(16px, 4vw, 24px);
    display: flex;
    justify-content: center;
}
.panda-detail-insight-band .pnda-insight {
    padding: 10px 18px 10px 10px;
    font-size: 14px;
    background: var(--card-white);
    border: 1px solid var(--panda-border);
    box-shadow: 0 1px 3px rgba(0,0,0,.04);
}
.panda-detail-insight-band .pnda-insight-icon {
    width: 26px;
    height: 26px;
}

/* Meta-item satırı taşma koruması (uzun targetAudience vs.) */
.panda-detail-meta-item {
    max-width: 100%;
    min-width: 0;
}
.panda-detail-meta-item span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 280px;
}
@media (max-width: 768px) {
    .panda-detail-meta-item span { max-width: 200px; }
    .panda-detail-insight-band .pnda-insight { font-size: 13px; padding: 8px 14px 8px 8px; }
    .panda-detail-insight-band .pnda-insight-icon { width: 22px; height: 22px; }
}

/* ═══════════════════════════════════════════════════════════════════
   v5.9.80+ EventCard + EventBadge + SessionChip
   Kaynak: UI Kit src/app/components/EventCard.tsx
   ═══════════════════════════════════════════════════════════════════ */

/* ───── Event Badge (kart sol üstü) ───── */
.pnda-event-badge {
    position: absolute;
    top: 8px;
    left: 8px;
    padding: 2px 8px;
    text-transform: uppercase;
    font-family: var(--font-body);
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 0.04em;
    border-radius: 3px;
    z-index: 10;
    line-height: 1.4;
}

/* ───── Session Chip ───── */
.pnda-session-chip {
    display: inline-block;
    padding: 4px 8px;
    background: var(--panda-background);
    border: 1px solid var(--panda-border);
    border-radius: 3px;
    font-family: var(--font-body);
    font-size: 10px;
    font-weight: 500;
    color: var(--warm-gray);
    line-height: 1;
}
.pnda-session-chip.is-active {
    background: var(--gold-light);
    border-color: var(--panda-gold);
    color: var(--panda-ink);
    font-weight: 600;
}
.pnda-session-chip-extra {
    font-family: var(--font-body);
    font-size: 10px;
    font-style: italic;
    color: var(--warm-gray);
    margin-left: 4px;
}

/* ───── Event Card (anasayfa+kategori+sanatçı listeleri) ───── */
.pnda-event-card {
    display: block;
    background: var(--card-white);
    border: 1px solid var(--panda-border);
    border-radius: 6px;
    overflow: hidden;
    text-decoration: none;
    color: inherit;
    transition: transform .25s, box-shadow .25s;
}
.pnda-event-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 24px rgba(0,0,0,.08);
}
.pnda-event-card.is-sold-out {
    opacity: .5;
    pointer-events: none;
}

/* Desktop layout (>=768px) */
.pnda-event-card__desktop { display: none; }
@media (min-width: 768px) {
    .pnda-event-card__desktop {
        display: grid;
        grid-template-columns: 76px 240px 1fr 180px;
        min-height: 200px;
    }
    .pnda-event-card__mobile { display: none; }
}

.pnda-event-card__date-col {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: var(--panda-background);
    border-right: 1px solid var(--panda-border);
    padding: 12px 0;
}
.pnda-event-card__day {
    font-family: var(--font-display);
    font-size: 30px;
    font-weight: 700;
    color: var(--panda-ink);
    line-height: 1;
}
.pnda-event-card__month {
    text-transform: uppercase;
    font-family: var(--font-body);
    font-size: 10px;
    font-weight: 600;
    color: var(--warm-gray);
    letter-spacing: 0.05em;
    margin-top: 4px;
}
.pnda-event-card__weekday {
    font-family: var(--font-body);
    font-size: 9px;
    font-weight: 400;
    color: var(--warm-gray);
}

.pnda-event-card__image-wrap {
    position: relative;
    overflow: hidden;
    height: 200px;
}
.pnda-event-card__image-wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .4s;
}
.pnda-event-card:hover .pnda-event-card__image-wrap img {
    transform: scale(1.05);
}

.pnda-event-card__info {
    padding: 16px 20px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.pnda-event-card__category {
    text-transform: uppercase;
    font-family: var(--font-body);
    font-size: 10px;
    font-weight: 600;
    color: var(--panda-gold);
    letter-spacing: 0.13em;
    margin-bottom: 6px;
}
.pnda-event-card__title {
    font-family: var(--font-display);
    font-size: 22px;
    font-weight: 600;
    color: var(--panda-ink);
    line-height: 1.2;
    margin: 0 0 8px;
    transition: color .25s;
}
.pnda-event-card:hover .pnda-event-card__title {
    color: var(--panda-gold);
}

.pnda-event-card__meta {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px;
    font-family: var(--font-body);
    font-size: 12px;
    color: var(--warm-gray);
    margin-bottom: 12px;
    line-height: 1.5;
}
.pnda-event-card__meta-item {
    display: inline-flex;
    align-items: center;
    gap: 4px;
}
.pnda-event-card__meta-item svg {
    width: 12px;
    height: 12px;
    stroke-linecap: round;
    stroke-linejoin: round;
}
.pnda-event-card__meta-lang {
    color: var(--panda-gold);
    font-weight: 600;
}

.pnda-event-card__sessions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
}

.pnda-event-card__side {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    background: var(--panda-background);
    border-left: 1px solid var(--panda-border);
    padding: 14px 16px;
}
.pnda-event-card__cta {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    width: 100%;
    padding: 10px 16px;
    background: var(--panda-ink);
    color: #fff;
    border-radius: 6px;
    font-family: var(--font-body);
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.03em;
    transition: background-color .25s, color .25s;
}
.pnda-event-card:hover .pnda-event-card__cta {
    background: var(--panda-gold);
    color: var(--panda-ink);
}
.pnda-event-card__cta svg {
    width: 14px;
    height: 14px;
}
.pnda-event-card.is-sold-out .pnda-event-card__cta {
    background: var(--panda-border);
    color: var(--warm-gray);
}

/* Mobile layout (<768px) */
@media (max-width: 767px) {
    .pnda-event-card__desktop { display: none; }
    .pnda-event-card__mobile { display: block; }
}

.pnda-event-card__date-strip {
    padding: 10px 14px;
    background: var(--panda-background);
    border-bottom: 1px solid var(--panda-border);
    font-family: var(--font-body);
    font-size: 12px;
    font-weight: 600;
    color: var(--panda-ink);
}

.pnda-event-card__image-wrap--mobile {
    height: auto;
    padding-bottom: 56.25%;       /* 16:9 ratio */
}
.pnda-event-card__image-wrap--mobile img {
    position: absolute;
    inset: 0;
}

.pnda-event-card__insight-overlay {
    position: absolute;
    bottom: 8px;
    right: 8px;
    z-index: 5;
}
.pnda-event-card__date-overlay {
    position: absolute;
    bottom: 8px;
    left: 8px;
    padding: 2px 8px;
    background: rgba(42,42,37,.8);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    border-radius: 3px;
    font-family: var(--font-body);
    font-size: 11px;
    font-weight: 600;
    color: #fff;
    z-index: 5;
}

.pnda-event-card__cta--mobile {
    margin: 0 14px 14px;
    padding: 12px;
    font-size: 13px;
}
.pnda-event-card__mobile .pnda-event-card__info {
    padding: 14px;
}
.pnda-event-card__mobile .pnda-event-card__title {
    font-size: 18px;
}

/* ═══════════════════════════════════════════════════════════════════
   v5.9.81+ Artist (single-team) — Sanatçı detay sayfası
   Kaynak: UI Kit ArtistPage.tsx
   ═══════════════════════════════════════════════════════════════════ */

.panda-artist {
    background: var(--panda-background);
    min-height: 100vh;
}

/* Header */
.panda-artist-header {
    background: var(--card-white);
    border-bottom: 1px solid var(--panda-border);
}
.panda-artist-header-inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 24px;
}
.panda-artist-back {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--panda-ink);
    font-family: var(--font-body);
    font-size: 14px;
    font-weight: 500;
    text-decoration: none;
    transition: color .25s;
}
.panda-artist-back:hover { color: var(--panda-gold); }
.panda-artist-back svg { width: 18px; height: 18px; }

/* Hero */
.panda-artist-hero {
    max-width: 900px;
    margin: 0 auto;
    padding: 80px 24px 16px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}
.panda-artist-avatar {
    width: 200px;
    height: 200px;
    border-radius: 50%;
    overflow: hidden;
    border: 3px solid var(--panda-border);
    background: var(--card-white);
    margin-bottom: 24px;
}
.panda-artist-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.panda-artist-name {
    font-family: var(--font-display);
    font-size: clamp(32px, 6vw, 48px);
    font-weight: 600;
    color: var(--panda-ink);
    line-height: 1.1;
    margin: 0 0 8px;
}
.panda-artist-role {
    font-family: var(--font-body);
    font-size: 18px;
    color: var(--warm-gray);
    margin: 0 0 32px;
}

/* Stats */
.panda-artist-stats {
    display: flex;
    gap: 32px;
    margin-top: 16px;
}
.panda-artist-stat {
    text-align: center;
}
.panda-artist-stat-value {
    display: block;
    font-family: var(--font-display);
    font-size: 32px;
    font-weight: 700;
    color: var(--panda-gold);
    margin-bottom: 4px;
}
.panda-artist-stat-label {
    font-family: var(--font-body);
    font-size: 13px;
    color: var(--warm-gray);
}

/* Sosyal medya ikonları */
.panda-artist-socials {
    display: flex;
    gap: 12px;
    margin-top: 24px;
}
.panda-artist-social {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: var(--card-white);
    border: 1px solid var(--panda-border);
    color: var(--warm-gray);
    transition: all .25s;
}
.panda-artist-social:hover {
    background: var(--panda-ink);
    color: #fff;
    border-color: var(--panda-ink);
    transform: translateY(-2px);
}
.panda-artist-social svg { width: 18px; height: 18px; }

/* Bölüm başlıkları */
.panda-artist-section-title {
    font-family: var(--font-display);
    font-size: clamp(22px, 4vw, 28px);
    font-weight: 600;
    color: var(--panda-ink);
    margin: 0 0 24px;
}

/* Biyografi */
.panda-artist-bio-section {
    max-width: 900px;
    margin: 64px auto 0;
    padding: 0 24px;
}
.panda-artist-bio-card {
    background: var(--card-white);
    border: 1px solid var(--panda-border);
    border-radius: 12px;
    padding: 32px;
    font-family: var(--font-body);
    font-size: 15px;
    line-height: 1.8;
    color: var(--panda-ink);
}
.panda-artist-bio-card p { margin: 0 0 16px; }
.panda-artist-bio-card p:last-child { margin-bottom: 0; }

/* Etkinlikler listesi */
.panda-artist-events {
    max-width: 1000px;
    margin: 64px auto 80px;
    padding: 0 24px;
}
.panda-artist-events-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

/* Boş durum */
.panda-artist-empty-card {
    background: var(--card-white);
    border: 1px solid var(--panda-border);
    border-radius: 12px;
    padding: 48px;
    text-align: center;
    font-family: var(--font-body);
    font-size: 15px;
    color: var(--warm-gray);
}

/* Mobil */
@media (max-width: 768px) {
    .panda-artist-hero { padding: 48px 16px 16px; }
    .panda-artist-avatar { width: 140px; height: 140px; }
    .panda-artist-bio-section,
    .panda-artist-events { padding: 0 16px; margin-top: 48px; }
    .panda-artist-bio-card { padding: 24px; }
}

/* ============================================================
 * v5.9.82 — ORGANIZER (Organizatör) Detay Sayfası
 * Kaynak: docs/figma-zen-design/pages/OrganizerPage.tsx
 * Mimari: Sanatçı sayfasıyla aynı DNA (Hero + section + EventCard listesi)
 * ============================================================ */
.panda-organizer {
    background: var(--panda-background, #faf8f3);
    min-height: 100vh;
    color: var(--panda-ink, #1a1a1a);
}
.panda-organizer-header {
    background: var(--card-white, #fff);
    border-bottom: 1px solid var(--panda-border, #e5e0d5);
}
.panda-organizer-header-inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 24px;
}
.panda-organizer-back {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-family: var(--font-body, "DM Sans", sans-serif);
    font-size: 14px;
    font-weight: 500;
    color: var(--panda-ink, #1a1a1a);
    text-decoration: none;
    transition: opacity 0.2s;
}
.panda-organizer-back:hover { opacity: 0.6; }
.panda-organizer-back svg { width: 18px; height: 18px; }

.panda-organizer-hero {
    max-width: 900px;
    margin: 0 auto;
    padding: 80px 24px 40px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}
.panda-organizer-logo {
    width: 160px;
    height: 160px;
    border-radius: 50%;
    overflow: hidden;
    border: 3px solid var(--panda-border, #e5e0d5);
    background: var(--card-white, #fff);
    margin-bottom: 24px;
    flex-shrink: 0;
}
.panda-organizer-logo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.panda-organizer-name {
    font-family: var(--font-display, "Cormorant Garamond", serif);
    font-size: 48px;
    font-weight: 600;
    color: var(--panda-ink, #1a1a1a);
    margin: 0 0 12px;
    line-height: 1.1;
}
.panda-organizer-company {
    font-family: var(--font-body, "DM Sans", sans-serif);
    font-size: 16px;
    color: var(--warm-gray, #6b6b6b);
    margin: 0 0 8px;
    max-width: 600px;
}
.panda-organizer-stats {
    display: flex;
    align-items: center;
    gap: 32px;
    margin-top: 24px;
}
.panda-organizer-stat { text-align: center; }
.panda-organizer-stat-value {
    display: block;
    font-family: var(--font-display, "Cormorant Garamond", serif);
    font-size: 32px;
    font-weight: 700;
    color: var(--panda-gold, #c9a84c);
    margin-bottom: 4px;
    line-height: 1;
}
.panda-organizer-stat-label {
    display: block;
    font-family: var(--font-body, "DM Sans", sans-serif);
    font-size: 13px;
    color: var(--warm-gray, #6b6b6b);
}
.panda-organizer-links {
    display: flex;
    gap: 12px;
    margin-top: 24px;
    flex-wrap: wrap;
    justify-content: center;
}
.panda-organizer-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 18px;
    background: var(--card-white, #fff);
    border: 1px solid var(--panda-border, #e5e0d5);
    border-radius: 999px;
    font-family: var(--font-body, "DM Sans", sans-serif);
    font-size: 13px;
    font-weight: 500;
    color: var(--panda-ink, #1a1a1a);
    text-decoration: none;
    transition: all 0.2s;
}
.panda-organizer-link:hover {
    background: var(--panda-ink, #1a1a1a);
    color: #fff;
    border-color: var(--panda-ink, #1a1a1a);
}
.panda-organizer-link svg { width: 14px; height: 14px; }

.panda-organizer-about,
.panda-organizer-events {
    max-width: 900px;
    margin: 0 auto;
    padding: 0 24px 64px;
}
.panda-organizer-section-title {
    font-family: var(--font-display, "Cormorant Garamond", serif);
    font-size: 28px;
    font-weight: 600;
    color: var(--panda-ink, #1a1a1a);
    margin: 0 0 24px;
}
.panda-organizer-about-card,
.panda-organizer-empty-card {
    background: var(--card-white, #fff);
    border: 1px solid var(--panda-border, #e5e0d5);
    border-radius: 12px;
    padding: 32px;
    font-family: var(--font-body, "DM Sans", sans-serif);
    font-size: 15px;
    line-height: 1.8;
    color: var(--panda-ink, #1a1a1a);
}
.panda-organizer-about-card p { margin: 0 0 16px; }
.panda-organizer-about-card p:last-child { margin: 0; }
.panda-organizer-empty-card {
    text-align: center;
    color: var(--warm-gray, #6b6b6b);
}
.panda-organizer-events-list {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

/* Not-found state */
.panda-organizer--notfound {
    min-height: 60vh;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 80px 24px;
}
.panda-organizer-notfound-inner h1 {
    font-family: var(--font-display, "Cormorant Garamond", serif);
    font-size: 32px;
    color: var(--panda-ink, #1a1a1a);
    margin: 0 0 12px;
}
.panda-organizer-notfound-inner p {
    color: var(--warm-gray, #6b6b6b);
    margin: 0 0 24px;
}
.panda-organizer-notfound-inner .panda-btn-primary {
    display: inline-block;
    padding: 12px 24px;
    background: var(--panda-ink, #1a1a1a);
    color: #fff;
    font-family: var(--font-body, "DM Sans", sans-serif);
    font-size: 14px;
    font-weight: 600;
    border-radius: 6px;
    text-decoration: none;
    transition: opacity 0.2s;
}
.panda-organizer-notfound-inner .panda-btn-primary:hover { opacity: 0.85; }

/* Responsive — mobile */
@media (max-width: 768px) {
    .panda-organizer-hero { padding: 48px 16px 32px; }
    .panda-organizer-logo { width: 120px; height: 120px; margin-bottom: 16px; }
    .panda-organizer-name { font-size: 32px; }
    .panda-organizer-stat-value { font-size: 26px; }
    .panda-organizer-section-title { font-size: 22px; }
    .panda-organizer-about,
    .panda-organizer-events { padding: 0 16px 48px; }
    .panda-organizer-about-card { padding: 20px; }
}

/* ============================================================
 * v5.9.83 — CATEGORY (Kategori) Sayfası
 * Kaynak: docs/figma-zen-design/pages/CategoryPage.tsx
 * Notlar:
 *  - archive-events.php ile aynı .panda-list-* ve .panda-event-card
 *    yapısını kullanır; sadece hero variant'ı + breadcrumb + count box.
 * ============================================================ */
.panda-category-hero { /* extra spacing — breadcrumb için yer aç */
    padding-top: 0;
}
.panda-breadcrumb {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 20px 0 16px;
    font-family: var(--font-body, "DM Sans", sans-serif);
    font-size: 13px;
    color: var(--warm-gray, #6b6b6b);
    flex-wrap: wrap;
}
.panda-breadcrumb a {
    color: var(--warm-gray, #6b6b6b);
    text-decoration: none;
    transition: color 0.2s;
}
.panda-breadcrumb a:hover { color: var(--panda-ink, #1a1a1a); }
.panda-breadcrumb span[aria-current="page"] {
    color: var(--panda-ink, #1a1a1a);
    font-weight: 500;
}
.panda-breadcrumb svg { width: 12px; height: 12px; opacity: 0.6; }

.panda-category-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 24px;
    padding: 24px 0 32px;
}
.panda-category-header-main { flex: 1 1 auto; min-width: 0; }

.panda-category-label {
    display: inline-block;
    padding: 6px 12px;
    margin-bottom: 14px;
    background: var(--gold-light, rgba(201, 168, 76, 0.12));
    color: var(--panda-gold, #c9a84c);
    font-family: var(--font-body, "DM Sans", sans-serif);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.15em;
    border-radius: 4px;
}
.panda-category-title {
    font-family: var(--font-display, "Cormorant Garamond", serif);
    font-size: 52px;
    font-weight: 600;
    line-height: 1.1;
    letter-spacing: -0.02em;
    color: var(--panda-ink, #1a1a1a);
    margin: 0 0 12px;
}
.panda-category-description {
    font-family: var(--font-body, "DM Sans", sans-serif);
    font-size: 16px;
    color: var(--warm-gray, #6b6b6b);
    line-height: 1.6;
    max-width: 600px;
    margin: 0;
}

.panda-category-count {
    display: flex;
    align-items: baseline;
    gap: 6px;
    padding: 10px 16px;
    background: var(--panda-background, #faf8f3);
    border: 1px solid var(--panda-border, #e5e0d5);
    border-radius: 6px;
    font-family: var(--font-body, "DM Sans", sans-serif);
    flex-shrink: 0;
    align-self: flex-start;
}
.panda-category-count-num {
    font-size: 18px;
    font-weight: 700;
    color: var(--panda-ink, #1a1a1a);
}
.panda-category-count-label {
    font-size: 13px;
    color: var(--warm-gray, #6b6b6b);
    font-weight: 500;
}

/* Empty state — kategori için */
.panda-category-empty {
    background: var(--card-white, #fff);
    border: 1px solid var(--panda-border, #e5e0d5);
    border-radius: 8px;
    padding: 80px 24px;
    text-align: center;
}
.panda-category-empty .icon { font-size: 48px; margin-bottom: 16px; }
.panda-empty-title {
    font-family: var(--font-display, "Cormorant Garamond", serif);
    font-size: 24px;
    font-weight: 600;
    color: var(--panda-ink, #1a1a1a);
    margin: 0 0 12px;
}
.panda-category-empty p {
    font-family: var(--font-body, "DM Sans", sans-serif);
    font-size: 15px;
    color: var(--warm-gray, #6b6b6b);
    margin: 0 0 24px;
}
.panda-empty-cta {
    display: inline-block;
    padding: 12px 24px;
    background: var(--panda-ink, #1a1a1a);
    color: #fff;
    font-family: var(--font-body, "DM Sans", sans-serif);
    font-size: 14px;
    font-weight: 600;
    border-radius: 6px;
    text-decoration: none;
    transition: opacity 0.2s;
}
.panda-empty-cta:hover { opacity: 0.85; color: #fff; }

/* Responsive — mobile */
@media (max-width: 768px) {
    .panda-breadcrumb { padding: 16px 0 12px; font-size: 12px; }
    .panda-category-header {
        flex-direction: column;
        align-items: stretch;
        gap: 16px;
        padding: 16px 0 24px;
    }
    .panda-category-title { font-size: 34px; }
    .panda-category-description { font-size: 14px; }
    .panda-category-count { align-self: flex-start; }
    .panda-category-empty { padding: 56px 20px; }
}
