/* ════════════════════════════════════════════════════════════════
   POST V5 — Phase 60 (30 May 2026)
   Temiz baştan rewrite. Tek external CSS. Namespace: .pv5-*
   Z-INDEX HİYERARŞİSİ:
     content  =  auto
     cover    =     1
     toolbar  =   100
     rail     =   110
     site hdr =   500  (templates/header.php, dokunma)
     backdrop =   900
     panel    =  1000
   ════════════════════════════════════════════════════════════════ */

/* ─── A) TOKENS ──────────────────────────────────────────────── */
body.pv5-page {
  --ink:       #1A1714;
  --ink-soft:  #4A4138;
  --ink-mute:  #8A7F73;
  --paper:     #FFFFFF;
  --bg:        #F4F1EC;
  --surface:   #FAF7F2;
  --rule:      #E7E0D2;
  --accent:    #8B6E4E;
  --accent-dk: #6B4F35;
  --accent-lt: #C4A882;
  --ai-1:      #C17F5E;
  --ai-2:      #8B6E4E;
  --danger:    #B7553D;
  --shadow-sm: 0 1px 4px rgba(26,23,20,.06);
  --shadow:    0 2px 12px rgba(26,23,20,.08);
  --shadow-lg: 0 10px 40px rgba(26,23,20,.15);

  --f-serif: 'Newsreader','Cormorant Garamond',Georgia,serif;
  --f-sans:  'Outfit','Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;

  --rail-w:    56px;
  --tb-h:      52px;
  --panel-w:   380px;
  --paper-max: 820px;
  --font-scale: 1;

  background: var(--bg) !important;
  color: var(--ink);
  font-family: var(--f-sans);
  font-size: 16px;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

/* ─── B) Distraction PURGE (header/footer FAB'larını gizle) ── */
body.pv5-page #chatbot-fab,
body.pv5-page .chatbot-fab,
body.pv5-page .zbot-fab,
body.pv5-page .wa-fab,
body.pv5-page #btt,
body.pv5-page .btt,
body.pv5-page .gm-fab,
body.pv5-page #gmFab,
body.pv5-page .zb-gm-widget,
body.pv5-page .gm-navbar-indicator,
body.pv5-page #gmIndicator,
body.pv5-page #zbPremiumSticky,
body.pv5-page .premium-sticky,
body.pv5-page .launch-strip,
body.pv5-page .launch-strip-wrap,
body.pv5-page .pillar-progress-bar,
body.pv5-page .ai-strip,
body.pv5-page .ai-toast,
body.pv5-page .ai-mobile-bar,
body.pv5-page .ai-floating-overlay,
body.pv5-page .sticky-share,
body.pv5-page #stickyShare,
body.pv5-page .zb-nl-ov,
body.pv5-page #zbExitOverlay,
body.pv5-page .mobile-cta-bar,
body.pv5-page .pillar-cta-wrap,
body.pv5-page .related-posts,
body.pv5-page .pe-feedback,
body.pv5-page .pe-poll,
body.pv5-page .ad-slot,
body.pv5-page [class*="yandex_rtb"],
body.pv5-page .adsbygoogle,
body.pv5-page .nl-popup,
body.pv5-page #zbNlPopup,
body.pv5-page [class*="floating"]:not(.pv5-rail):not(.pv5-tb):not(.pv5-panel) {
  display: none !important;
}

/* ─── C) APP container ──────────────────────────────────────── */
body.pv5-page .pv5 {
  position: relative;
  padding-left: var(--rail-w);
  min-height: 100vh;
  background: var(--bg);
}

/* ─── D) TOP TOOLBAR (sticky 100) ───────────────────────────── */
body.pv5-page .pv5-tb {
  position: sticky;
  top: 0;
  z-index: 100;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  height: var(--tb-h);
  padding: 0 18px;
  background: var(--paper);
  border-bottom: 1px solid var(--rule);
  box-shadow: var(--shadow-sm);
  font-family: var(--f-sans);
}
body.pv5-page .pv5-tb-group {
  display: flex;
  align-items: center;
  gap: 4px;
  flex: 1 0 auto;
}
body.pv5-page .pv5-tb-left  { justify-content: flex-start; }
body.pv5-page .pv5-tb-center{ justify-content: center; }
body.pv5-page .pv5-tb-right { justify-content: flex-end; }

body.pv5-page .pv5-tb-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 34px;
  height: 32px;
  padding: 0 8px;
  border: 0;
  border-radius: 6px;
  background: transparent;
  color: var(--ink-soft);
  font-family: var(--f-sans);
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  text-decoration: none;
  transition: background .15s, color .15s;
}
body.pv5-page .pv5-tb-btn:hover {
  background: var(--surface);
  color: var(--accent);
}
body.pv5-page .pv5-disabled { opacity: .25; pointer-events: none; }
body.pv5-page .pv5-tb-info,
body.pv5-page .pv5-tb-fontpct {
  padding: 0 8px;
  font-size: 12px;
  color: var(--ink-mute);
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
body.pv5-page .pv5-tb-theme .pv5-icon-moon { display: none; }
body.pv5-page[data-theme="dark"] .pv5-tb-theme .pv5-icon-sun { display: none; }
body.pv5-page[data-theme="dark"] .pv5-tb-theme .pv5-icon-moon { display: inline; }

/* ═══ E) SOL RAIL — Phase 60.6 modernize ═══════════════════════
   - Hover-expand: 56 → 200px (desktop)
   - 3 grup (nav/AI/personal) ile visual hierarchy
   - Glassmorphism backdrop + subtle border
   - Ripple effect + +N puan baloncuğu (JS spawn)
   - Mobile: bottom-sheet horizontal scroller (≤760px)
   ═══════════════════════════════════════════════════════════════ */
body.pv5-page {
  --rail-w-expanded: 200px;
  --rail-bg: rgba(255, 255, 255, .85);
  --rail-bg-blur: 14px;
}
body.pv5-page[data-theme="dark"] {
  --rail-bg: rgba(26, 23, 20, .82);
}

body.pv5-page .pv5-rail {
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  width: var(--rail-w);
  z-index: 110;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 0;
  padding: 18px 8px;
  background: var(--rail-bg);
  -webkit-backdrop-filter: blur(var(--rail-bg-blur)) saturate(160%);
          backdrop-filter: blur(var(--rail-bg-blur)) saturate(160%);
  border-right: 1px solid var(--rule);
  transition: width .26s cubic-bezier(.23, 1, .32, 1),
              box-shadow .26s cubic-bezier(.23, 1, .32, 1);
  overflow: hidden;
}

/* Hover-expand (desktop only — mobile rules override) */
body.pv5-page .pv5-rail:hover,
body.pv5-page .pv5-rail:focus-within {
  width: var(--rail-w-expanded);
  box-shadow: 8px 0 32px rgba(26, 23, 20, .08);
}

/* Group */
body.pv5-page .pv5-rail-group {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 10px 0 12px;
  position: relative;
}
body.pv5-page .pv5-rail-group + .pv5-rail-group {
  border-top: 1px solid var(--rule);
  margin-top: 4px;
}

/* Group label — only visible on expand */
body.pv5-page .pv5-rail-group-lbl {
  display: block;
  font-family: var(--f-sans);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--ink-mute);
  padding: 0 12px 6px;
  opacity: 0;
  transform: translateX(-6px);
  transition: opacity .18s .04s, transform .22s .04s;
  pointer-events: none;
  white-space: nowrap;
}
body.pv5-page .pv5-rail:hover .pv5-rail-group-lbl,
body.pv5-page .pv5-rail:focus-within .pv5-rail-group-lbl {
  opacity: 1;
  transform: translateX(0);
}

/* AI grup için subtle tint */
body.pv5-page .pv5-rail-group[data-group="ai"] {
  background: linear-gradient(180deg, rgba(193, 127, 94, .03), transparent 60%);
  border-radius: 12px;
}
body.pv5-page .pv5-rail-group[data-group="ai"] .pv5-rail-group-lbl {
  color: var(--ai-1);
}

/* Buton */
body.pv5-page .pv5-rail-btn {
  position: relative;
  display: flex;
  align-items: center;
  gap: 12px;
  width: 100%;
  min-height: 40px;
  padding: 0 10px;
  border-radius: 10px;
  border: 0;
  background: transparent;
  color: var(--ink-soft);
  cursor: pointer;
  text-decoration: none;
  font-family: var(--f-sans);
  font-size: 13px;
  font-weight: 500;
  letter-spacing: -.005em;
  white-space: nowrap;
  overflow: hidden;
  transition: background .15s, color .15s, transform .12s;
  -webkit-tap-highlight-color: transparent;
}
body.pv5-page .pv5-rail-btn:hover {
  background: var(--surface);
  color: var(--accent);
}
body.pv5-page .pv5-rail-btn:active {
  transform: scale(.96);
}

/* Icon container — sabit boyut */
body.pv5-page .pv5-rail-icon {
  flex-shrink: 0;
  width: 24px;
  height: 24px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: relative;
}
body.pv5-page .pv5-rail-icon svg {
  width: 20px;
  height: 20px;
}

/* Label — expand'da görünür */
body.pv5-page .pv5-rail-label {
  flex: 1;
  opacity: 0;
  transform: translateX(-8px);
  transition: opacity .18s .06s, transform .22s .06s;
  pointer-events: none;
  overflow: hidden;
  text-overflow: ellipsis;
}
body.pv5-page .pv5-rail:hover .pv5-rail-label,
body.pv5-page .pv5-rail:focus-within .pv5-rail-label {
  opacity: 1;
  transform: translateX(0);
}

/* Active panel state */
body.pv5-page .pv5-rail-btn.is-active {
  background: linear-gradient(135deg, var(--ai-1), var(--ai-2));
  color: #fff;
  box-shadow: 0 4px 14px rgba(193, 127, 94, .25);
}
body.pv5-page .pv5-rail-btn.is-active:hover {
  background: linear-gradient(135deg, var(--ai-2), var(--accent-dk));
  color: #fff;
}

/* AI buton — subtle gradient text hover */
body.pv5-page .pv5-rail-ai {
  color: var(--ai-1);
}
body.pv5-page .pv5-rail-ai:hover {
  background: linear-gradient(135deg, rgba(193, 127, 94, .12), rgba(139, 110, 78, .08));
  color: var(--accent-dk);
}
body.pv5-page .pv5-rail-ai .pv5-rail-icon {
  filter: drop-shadow(0 0 0 transparent);
  transition: filter .2s;
}
body.pv5-page .pv5-rail-ai:hover .pv5-rail-icon {
  filter: drop-shadow(0 0 6px rgba(193, 127, 94, .35));
}
body.pv5-page .pv5-rail-ai.is-active .pv5-rail-icon {
  filter: drop-shadow(0 0 8px rgba(255, 255, 255, .4));
}

/* Focus ring (a11y) */
body.pv5-page .pv5-rail-btn:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 2px;
  border-radius: 10px;
}

/* Ripple effect container */
body.pv5-page .pv5-rail-ripple {
  position: absolute;
  border-radius: 50%;
  background: rgba(193, 127, 94, .3);
  transform: scale(0);
  animation: pv5ripple .55s ease-out;
  pointer-events: none;
}
@keyframes pv5ripple {
  to {
    transform: scale(2.5);
    opacity: 0;
  }
}

/* +N puan baloncuğu — ZBG ile entegre */
body.pv5-page .pv5-rail-pts {
  position: absolute;
  top: -4px;
  left: 50%;
  transform: translateX(-50%);
  background: linear-gradient(135deg, #F59E0B, #FB923C);
  color: #fff;
  font-family: var(--f-sans);
  font-size: 11px;
  font-weight: 700;
  padding: 3px 8px;
  border-radius: 100px;
  box-shadow: 0 2px 8px rgba(251, 146, 60, .4);
  pointer-events: none;
  white-space: nowrap;
  z-index: 10;
  animation: pv5pts 1.4s cubic-bezier(.22, .9, .35, 1) forwards;
}
@keyframes pv5pts {
  0%   { opacity: 0; transform: translate(-50%, 10px) scale(.7); }
  20%  { opacity: 1; transform: translate(-50%, -10px) scale(1.08); }
  60%  { opacity: 1; transform: translate(-50%, -22px) scale(1); }
  100% { opacity: 0; transform: translate(-50%, -38px) scale(.9); }
}

/* Eski rail-sep gizle (artık grup separator var) */
body.pv5-page .pv5-rail-sep { display: none; }

/* ─── F) CENTER STAGE + PAPER ───────────────────────────────── */
body.pv5-page .pv5-stage {
  padding: 32px 24px 80px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 32px;
}
body.pv5-page .pv5-paper {
  width: 100%;
  max-width: var(--paper-max);
  background: var(--paper);
  border-radius: 12px;
  box-shadow: var(--shadow);
  padding: 0 56px 56px;     /* TOP 0 — cover'la başlar */
  overflow: hidden;
}

/* ─── G) COVER HERO (image + overlay + text) z:1 ────────────── */
body.pv5-page .pv5-cover {
  position: relative;
  margin: 0 -56px 32px;      /* paper padding sıfırla */
  min-height: 520px;
  background: linear-gradient(135deg, var(--cc, var(--accent)), var(--accent-dk));
  display: flex;
  align-items: flex-end;
  isolation: isolate;
  overflow: hidden;
  z-index: 1;
}
body.pv5-page .pv5-cover-blank { min-height: 380px; }
body.pv5-page .pv5-cover-bg {
  position: absolute; inset: 0; z-index: 0;
}
body.pv5-page .pv5-cover-bg img {
  width: 100%; height: 100%; object-fit: cover;
  display: block; margin: 0;
}
body.pv5-page .pv5-cover-shade {
  position: absolute; inset: 0;
  background: linear-gradient(180deg,
    rgba(0,0,0,.32) 0%,
    rgba(0,0,0,.50) 35%,
    rgba(0,0,0,.78) 70%,
    rgba(0,0,0,.92) 100%);
  pointer-events: none;
}
body.pv5-page .pv5-cover-text {
  position: relative; z-index: 2;
  padding: 48px 56px 40px;
  width: 100%; color: #fff;
}
body.pv5-page .pv5-cover-meta {
  display: flex; align-items: center; flex-wrap: wrap; gap: 8px;
  margin-bottom: 14px;
  font-family: var(--f-sans); font-size: 12px;
  color: rgba(255,255,255,.88);
  text-shadow: 0 1px 2px rgba(0,0,0,.4);
}
body.pv5-page .pv5-cover-meta span[aria-hidden] { opacity: .5; }
body.pv5-page .pv5-cover-cat {
  display: inline-block;
  padding: 4px 12px;
  background: rgba(255,255,255,.18);
  -webkit-backdrop-filter: blur(6px);
          backdrop-filter: blur(6px);
  color: #fff;
  border: 1px solid rgba(255,255,255,.22);
  border-radius: 100px;
  font-size: 11px; font-weight: 700;
  text-transform: uppercase; letter-spacing: .06em;
  text-decoration: none; text-shadow: none;
  transition: background .2s;
}
body.pv5-page .pv5-cover-cat:hover { background: rgba(255,255,255,.28); }
body.pv5-page .pv5-title {
  font-family: var(--f-serif);
  font-size: calc(48px * var(--font-scale));
  font-weight: 600; line-height: 1.1;
  letter-spacing: -0.022em;
  color: #fff; margin: 0 0 18px;
  text-shadow: 0 2px 12px rgba(0,0,0,.4);
}
body.pv5-page .pv5-excerpt {
  font-family: var(--f-serif);
  font-size: calc(20px * var(--font-scale));
  line-height: 1.45; font-style: italic; font-weight: 400;
  color: rgba(255,255,255,.88);
  margin: 0 0 22px;
  text-shadow: 0 1px 6px rgba(0,0,0,.4);
  max-width: 720px;
}
body.pv5-page .pv5-author {
  display: flex; align-items: center; gap: 10px;
  padding: 12px 0 0; margin-top: 12px;
  border-top: 1px solid rgba(255,255,255,.18);
  font-family: var(--f-sans); font-size: 13px;
  color: rgba(255,255,255,.92);
  text-shadow: 0 1px 4px rgba(0,0,0,.4);
}
body.pv5-page .pv5-author-img {
  width: 36px; height: 36px; border-radius: 50%;
  object-fit: cover;
  background: rgba(255,255,255,.2);
  border: 2px solid rgba(255,255,255,.28);
  color: #fff;
  display: inline-flex; align-items: center; justify-content: center;
  font-weight: 600; font-size: 14px; flex-shrink: 0;
}
body.pv5-page .pv5-author-init { background: var(--accent); }
body.pv5-page .pv5-author-init-lg { width: 56px; height: 56px; font-size: 20px; }
body.pv5-page .pv5-author-name a { color: #fff; font-weight: 600; }
body.pv5-page .pv5-author-name a:hover { color: rgba(255,255,255,.85); }
body.pv5-page .pv5-author-role { color: rgba(255,255,255,.7); }

/* ─── H) RECIPE PILL ────────────────────────────────────────── */
body.pv5-page .pv5-pill {
  display: flex; flex-wrap: wrap; justify-content: center; align-items: center;
  gap: 16px; margin: 0 auto 36px;
  padding: 10px 20px;
  background: var(--surface);
  border: 1px solid var(--rule);
  border-radius: 100px;
  font-family: var(--f-sans); font-size: 14px; font-weight: 600;
  color: var(--ink); max-width: max-content;
}
body.pv5-page .pv5-pill span { display: inline-flex; align-items: center; gap: 4px; }

/* ─── I) BODY (article content) ─────────────────────────────── */
body.pv5-page .pv5-body {
  font-family: var(--f-serif);
  font-size: calc(19px * var(--font-scale));
  line-height: 1.75;
  color: var(--ink);
}
body.pv5-page .pv5-body p {
  margin: 0 0 28px;
  font-size: calc(19px * var(--font-scale));
  line-height: 1.75;
}
body.pv5-page .pv5-body h2 {
  font-family: var(--f-serif);
  font-size: calc(30px * var(--font-scale));
  font-weight: 600; line-height: 1.25;
  letter-spacing: -0.015em; color: var(--ink);
  margin: 56px 0 20px;
  scroll-margin-top: 80px;
}
body.pv5-page .pv5-body h3 {
  font-family: var(--f-serif);
  font-size: calc(22px * var(--font-scale));
  font-weight: 600; line-height: 1.3;
  color: var(--ink); margin: 40px 0 14px;
}
body.pv5-page .pv5-body h4 {
  font-family: var(--f-sans); font-size: calc(15px * var(--font-scale));
  font-weight: 700; text-transform: uppercase; letter-spacing: .05em;
  color: var(--ink-soft); margin: 32px 0 12px;
}
body.pv5-page .pv5-body a {
  color: var(--ink);
  text-decoration: underline;
  text-decoration-color: var(--accent-lt);
  text-underline-offset: 3px;
  text-decoration-thickness: 1.5px;
  transition: text-decoration-color .15s;
}
body.pv5-page .pv5-body a:hover { text-decoration-color: var(--accent); }
body.pv5-page .pv5-body strong { font-weight: 700; color: var(--ink); }
body.pv5-page .pv5-body em { font-style: italic; }
body.pv5-page .pv5-body blockquote {
  border-left: 3px solid var(--accent);
  margin: 36px 0;
  padding: 8px 0 8px 24px;
  font-style: italic;
  font-size: calc(22px * var(--font-scale));
  line-height: 1.5;
  color: var(--ink-soft);
}
body.pv5-page .pv5-body blockquote p {
  font-size: calc(22px * var(--font-scale));
  margin: 0;
}
body.pv5-page .pv5-body ul,
body.pv5-page .pv5-body ol { margin: 0 0 28px; padding-left: 28px; }
body.pv5-page .pv5-body li {
  margin-bottom: 10px; line-height: 1.7;
  font-size: calc(19px * var(--font-scale));
}
body.pv5-page .pv5-body img,
body.pv5-page .pv5-body figure img {
  max-width: 100%; height: auto;
  border-radius: 6px; margin: 28px 0; display: block;
}
body.pv5-page .pv5-body figure { margin: 32px 0; }
body.pv5-page .pv5-body figcaption {
  font-family: var(--f-sans); font-size: 13px; color: var(--ink-mute);
  text-align: center; margin-top: 8px; font-style: italic;
}
body.pv5-page .pv5-body hr {
  border: 0; border-top: 1px solid var(--rule); margin: 40px 0;
}
body.pv5-page .pv5-body table {
  width: 100%; border-collapse: collapse; margin: 28px 0;
  font-family: var(--f-sans); font-size: calc(15px * var(--font-scale));
}
body.pv5-page .pv5-body th,
body.pv5-page .pv5-body td {
  padding: 10px 14px; border-bottom: 1px solid var(--rule); text-align: left;
}
body.pv5-page .pv5-body th { background: var(--surface); font-weight: 600; }
body.pv5-page .pv5-body details {
  margin: 14px 0; padding: 14px 18px;
  border: 1px solid var(--rule); border-radius: 8px;
  background: var(--paper); font-family: var(--f-sans);
}
body.pv5-page .pv5-body details summary { cursor: pointer; font-weight: 600; }
body.pv5-page .pv5-body .info-box,
body.pv5-page .pv5-body .warn-box {
  margin: 32px 0; padding: 18px 22px;
  border-left: 3px solid var(--accent-lt);
  background: var(--surface);
  border-radius: 0 8px 8px 0;
}

/* ─── J) RECIPE sections ────────────────────────────────────── */
body.pv5-page .pv5-recipe {
  margin: 48px 0; padding: 28px;
  background: var(--surface);
  border: 1px solid var(--rule); border-radius: 12px;
  font-family: var(--f-sans);
}
body.pv5-page .pv5-recipe h2 {
  font-family: var(--f-serif);
  font-size: 24px; font-weight: 600;
  margin: 0 0 18px; color: var(--ink);
}
body.pv5-page .pv5-ing-list {
  list-style: none; padding: 0; margin: 0;
  display: grid; grid-template-columns: 1fr; gap: 10px;
}
@media (min-width: 640px) {
  body.pv5-page .pv5-ing-list { grid-template-columns: 1fr 1fr; }
}
body.pv5-page .pv5-ing-list li {
  padding: 10px 0; border-bottom: 1px solid var(--rule);
  display: flex; gap: 10px; align-items: baseline;
}
body.pv5-page .pv5-ing-icon { font-size: 18px; flex-shrink: 0; }
body.pv5-page .pv5-step-list {
  margin: 0; padding-left: 24px; counter-reset: pv5step;
}
body.pv5-page .pv5-step-list li {
  margin-bottom: 14px; padding-left: 8px;
}
body.pv5-page .pv5-step-list strong { color: var(--accent); }

/* ─── K) FAQ ────────────────────────────────────────────────── */
body.pv5-page .pv5-faq { margin: 56px 0; }
body.pv5-page .pv5-faq h2 {
  font-family: var(--f-serif); font-size: 24px;
  font-weight: 600; margin: 0 0 24px; color: var(--ink);
}
body.pv5-page .pv5-faq-item {
  margin: 12px 0;
  border: 1px solid var(--rule); border-radius: 8px;
  background: var(--paper); overflow: hidden;
}
body.pv5-page .pv5-faq-item summary {
  padding: 16px 20px; font-weight: 600;
  font-size: 15px; color: var(--ink);
  cursor: pointer; list-style: none;
  position: relative; padding-right: 44px;
  font-family: var(--f-sans);
}
body.pv5-page .pv5-faq-item summary::-webkit-details-marker { display: none; }
body.pv5-page .pv5-faq-item summary::after {
  content: '+';
  position: absolute; right: 18px; top: 50%;
  transform: translateY(-50%);
  font-size: 20px; color: var(--accent); font-weight: 400;
}
body.pv5-page .pv5-faq-item[open] summary::after { content: '−'; }
body.pv5-page .pv5-faq-item > div {
  padding: 0 20px 18px;
  font-size: 15px; line-height: 1.6; color: var(--ink-soft);
  font-family: var(--f-sans);
}

/* ─── L) TAGS ───────────────────────────────────────────────── */
body.pv5-page .pv5-tags {
  margin: 48px 0 24px;
  display: flex; flex-wrap: wrap; gap: 8px;
  font-family: var(--f-sans);
}
body.pv5-page .pv5-tag {
  display: inline-flex; align-items: center;
  padding: 6px 14px;
  background: var(--surface);
  color: var(--ink-soft);
  border: 1px solid var(--rule);
  border-radius: 100px;
  font-size: 13px; font-weight: 500;
  text-decoration: none;
  transition: all .15s;
}
body.pv5-page .pv5-tag:hover {
  background: var(--accent); color: #fff; border-color: var(--accent);
}

/* ─── M) AUTHOR CARD ────────────────────────────────────────── */
body.pv5-page .pv5-author-card {
  margin: 48px 0;
  padding: 28px;
  background: var(--surface);
  border: 1px solid var(--rule);
  border-radius: 12px;
  font-family: var(--f-sans);
}
body.pv5-page .pv5-author-card-head {
  display: flex; align-items: center; gap: 16px; margin-bottom: 14px;
}
body.pv5-page .pv5-author-card-head img {
  width: 56px; height: 56px; border-radius: 50%; object-fit: cover;
}
body.pv5-page .pv5-author-card-name { font-weight: 600; font-size: 17px; color: var(--ink); }
body.pv5-page .pv5-author-card-name a { color: inherit; text-decoration: none; }
body.pv5-page .pv5-author-card-name a:hover { color: var(--accent); }
body.pv5-page .pv5-author-card-role { font-size: 13px; color: var(--ink-mute); }
body.pv5-page .pv5-author-card-bio {
  font-size: 15px; line-height: 1.6; color: var(--ink-soft); margin: 0;
}

/* ─── N) PREV/NEXT NAV ──────────────────────────────────────── */
body.pv5-page .pv5-nav {
  width: 100%;
  max-width: var(--paper-max);
  display: grid; grid-template-columns: 1fr 1fr;
  gap: 16px; font-family: var(--f-sans);
}
body.pv5-page .pv5-nav-card {
  display: flex; flex-direction: column; gap: 6px;
  padding: 22px 24px;
  border: 1px solid var(--rule);
  border-radius: 12px;
  text-decoration: none; color: var(--ink);
  background: var(--paper);
  transition: all .2s;
}
body.pv5-page .pv5-nav-card:hover {
  border-color: var(--accent);
  transform: translateY(-2px);
  box-shadow: var(--shadow);
}
body.pv5-page .pv5-nav-label {
  font-size: 11px; text-transform: uppercase;
  letter-spacing: .12em; color: var(--accent);
  font-weight: 700;
}
body.pv5-page .pv5-nav-title {
  font-family: var(--f-serif);
  font-size: 17px; font-weight: 500;
  line-height: 1.35; color: var(--ink);
}
body.pv5-page .pv5-nav-next { text-align: right; align-items: flex-end; }

/* ─── O) PANELS (slide-out, z:1000) ─────────────────────────── */
body.pv5-page .pv5-panel {
  position: fixed;
  top: 0;
  left: var(--rail-w);
  bottom: 0;
  width: var(--panel-w);
  max-width: calc(100vw - var(--rail-w));
  background: var(--paper);
  border-right: 1px solid var(--rule);
  box-shadow: var(--shadow-lg);
  z-index: 1000;
  transform: translateX(-110%);
  transition: transform .26s cubic-bezier(.23,1,.32,1);
  display: flex; flex-direction: column;
  overflow: hidden;
  visibility: hidden;
}
body.pv5-page .pv5-panel.is-open {
  transform: translateX(0);
  visibility: visible;
}
body.pv5-page .pv5-panel-head {
  display: flex; align-items: center; justify-content: space-between;
  padding: 14px 20px;
  border-bottom: 1px solid var(--rule);
  flex-shrink: 0;
}
body.pv5-page .pv5-panel-head h2 {
  font-family: var(--f-sans);
  font-size: 14px; font-weight: 700;
  margin: 0; color: var(--ink);
  letter-spacing: .02em;
}
body.pv5-page .pv5-panel-x {
  width: 32px; height: 32px;
  border: 0; border-radius: 8px;
  background: transparent; color: var(--ink-mute);
  font-size: 16px; cursor: pointer;
  transition: all .15s;
}
body.pv5-page .pv5-panel-x:hover {
  background: var(--surface); color: var(--ink);
}
body.pv5-page .pv5-panel-body {
  flex: 1;
  overflow-y: auto;
  padding: 20px;
  font-family: var(--f-sans);
  font-size: 14px; line-height: 1.55;
}
body.pv5-page .pv5-hint {
  font-size: 13px; color: var(--ink-mute);
  margin: 0 0 16px;
}

/* ─── P) BACKDROP (z:900) ───────────────────────────────────── */
body.pv5-page .pv5-backdrop {
  position: fixed;
  inset: 0 0 0 var(--rail-w);
  background: rgba(0,0,0,.55);
  -webkit-backdrop-filter: blur(2px);
          backdrop-filter: blur(2px);
  z-index: 900;
  opacity: 0;
  transition: opacity .2s;
  pointer-events: none;
}
body.pv5-page .pv5-backdrop.is-visible {
  opacity: 1;
  pointer-events: auto;
}
body.pv5-page.pv5-locked {
  overflow: hidden;
}

/* ─── Q) INFO panel content ─────────────────────────────────── */
body.pv5-page .pv5-info-excerpt {
  font-size: 13px; color: var(--ink-soft); margin: 0 0 14px;
}
body.pv5-page .pv5-info-section {
  padding: 16px 0; border-bottom: 1px solid var(--rule);
}
body.pv5-page .pv5-info-section:last-child { border-bottom: 0; }
body.pv5-page .pv5-info-label {
  font-size: 11px; text-transform: uppercase; letter-spacing: .08em;
  color: var(--ink-mute); font-weight: 700; margin-bottom: 10px;
}
body.pv5-page .pv5-info-author {
  display: flex; align-items: center; gap: 12px; margin-bottom: 12px;
}
body.pv5-page .pv5-info-author img {
  width: 40px; height: 40px; border-radius: 50%; object-fit: cover;
}
body.pv5-page .pv5-info-author-name { font-weight: 600; font-size: 14px; color: var(--ink); }
body.pv5-page .pv5-info-author-role { font-size: 12px; color: var(--ink-mute); }
body.pv5-page .pv5-info-bio {
  font-size: 13px; line-height: 1.55; color: var(--ink-soft); margin: 8px 0 0;
}
body.pv5-page .pv5-info-dl {
  display: grid; grid-template-columns: 1fr auto; gap: 4px 12px;
  margin: 0; padding: 16px 0;
  border-bottom: 1px solid var(--rule);
  font-size: 13px;
}
body.pv5-page .pv5-info-dl dt { color: var(--ink-mute); padding: 4px 0; }
body.pv5-page .pv5-info-dl dd {
  color: var(--ink); font-weight: 500; margin: 0; padding: 4px 0; text-align: right;
}
body.pv5-page .pv5-info-dl dd a { color: var(--accent); text-decoration: none; }
body.pv5-page .pv5-info-tags {
  display: flex; flex-wrap: wrap; gap: 6px; margin-top: 10px;
}

/* ─── R) TOC panel ──────────────────────────────────────────── */
body.pv5-page .pv5-toc {
  list-style: none; margin: 0; padding: 0;
  counter-reset: pv5toc;
}
body.pv5-page .pv5-toc li { counter-increment: pv5toc; }
body.pv5-page .pv5-toc a {
  display: block;
  padding: 12px 14px;
  color: var(--ink-soft);
  text-decoration: none;
  border-left: 2px solid var(--rule);
  font-size: 13px; line-height: 1.4;
  transition: all .15s;
}
body.pv5-page .pv5-toc a::before {
  content: counter(pv5toc) ".";
  display: inline-block; width: 24px;
  color: var(--ink-mute);
  font-variant-numeric: tabular-nums;
}
body.pv5-page .pv5-toc a:hover,
body.pv5-page .pv5-toc a.is-active {
  color: var(--accent);
  border-left-color: var(--accent);
  background: var(--surface);
  font-weight: 500;
}

/* ─── S) AI panels (summary + ask) ──────────────────────────── */
body.pv5-page .pv5-ai-trigger {
  text-align: center; padding: 24px 0;
}
body.pv5-page .pv5-ai-go {
  display: inline-flex; align-items: center; justify-content: center;
  gap: 8px;
  padding: 14px 28px;
  background: linear-gradient(135deg, var(--ai-1), var(--ai-2));
  color: #fff; border: 0; border-radius: 100px;
  font-family: var(--f-sans); font-size: 14px; font-weight: 600;
  cursor: pointer;
  box-shadow: 0 4px 16px rgba(193,127,94,.25);
  transition: all .2s;
}
body.pv5-page .pv5-ai-go:hover {
  transform: translateY(-1px);
  box-shadow: 0 6px 20px rgba(193,127,94,.35);
}
body.pv5-page .pv5-ai-go:active { transform: translateY(0); }
body.pv5-page .pv5-ai-go-sm {
  padding: 8px 16px; font-size: 12px;
  box-shadow: 0 2px 8px rgba(193,127,94,.25);
}
body.pv5-page .pv5-ai-disc {
  margin: 12px 0 0;
  font-size: 11px; color: var(--ink-mute); text-align: center;
}
body.pv5-page .pv5-ai-loading {
  display: flex; flex-direction: column; align-items: center;
  gap: 12px; padding: 32px 0; text-align: center;
}
body.pv5-page .pv5-ai-loading p {
  margin: 0; font-size: 13px; color: var(--ink-mute);
}
body.pv5-page .pv5-spinner {
  width: 32px; height: 32px;
  border: 3px solid var(--rule);
  border-top-color: var(--ai-1);
  border-radius: 50%;
  animation: pv5spin .8s linear infinite;
}
@keyframes pv5spin { to { transform: rotate(360deg); } }
body.pv5-page .pv5-ai-result {
  margin-top: 16px;
  background: linear-gradient(135deg, rgba(193,127,94,.04), rgba(139,110,78,.04));
  border: 1px solid rgba(193,127,94,.18);
  border-radius: 12px;
  padding: 18px;
}
body.pv5-page .pv5-ai-text {
  font-family: var(--f-serif);
  font-size: 15px; line-height: 1.6;
  color: var(--ink);
  white-space: pre-wrap;
  margin-bottom: 14px;
}
body.pv5-page .pv5-ai-q {
  font-family: var(--f-sans);
  font-size: 12px; font-weight: 600; color: var(--ai-1);
  padding: 8px 12px;
  background: rgba(193,127,94,.06);
  border-radius: 6px; margin-bottom: 12px;
}
body.pv5-page .pv5-ai-q::before {
  content: 'SORU: '; font-weight: 700; letter-spacing: .04em;
}
body.pv5-page .pv5-ai-actions {
  display: flex; gap: 8px; margin-top: 12px; flex-wrap: wrap;
}
body.pv5-page .pv5-ai-act {
  padding: 6px 14px;
  background: var(--paper); color: var(--ink-soft);
  border: 1px solid var(--rule);
  border-radius: 100px;
  font-family: var(--f-sans); font-size: 12px; font-weight: 500;
  cursor: pointer; transition: all .15s;
}
body.pv5-page .pv5-ai-act:hover {
  background: var(--surface);
  border-color: var(--ai-1);
  color: var(--accent);
}
body.pv5-page .pv5-ai-error {
  margin-top: 16px; padding: 12px 16px;
  background: rgba(220,80,60,.06);
  border: 1px solid rgba(220,80,60,.2);
  border-radius: 8px;
  font-size: 13px; color: var(--danger); line-height: 1.4;
}
body.pv5-page .pv5-ai-chips {
  display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 16px;
}
body.pv5-page .pv5-chip {
  padding: 6px 12px;
  background: var(--surface);
  color: var(--ink-soft);
  border: 1px solid var(--rule);
  border-radius: 100px;
  font-family: var(--f-sans);
  font-size: 12px; font-weight: 500;
  cursor: pointer; transition: all .15s;
}
body.pv5-page .pv5-chip:hover {
  background: rgba(193,127,94,.08);
  border-color: var(--ai-1);
  color: var(--accent);
}
body.pv5-page .pv5-ai-form textarea {
  width: 100%;
  padding: 12px 14px;
  border: 1px solid var(--rule);
  border-radius: 8px;
  font-family: var(--f-sans); font-size: 14px;
  line-height: 1.5;
  background: var(--paper); color: var(--ink);
  outline: none; resize: vertical;
  transition: border-color .15s;
  -webkit-appearance: none;
}
body.pv5-page .pv5-ai-form textarea:focus { border-color: var(--ai-1); }
body.pv5-page .pv5-ai-foot {
  display: flex; align-items: center; justify-content: space-between;
  gap: 12px; margin-top: 10px;
}
body.pv5-page .pv5-counter {
  font-size: 11px; color: var(--ink-mute);
  font-variant-numeric: tabular-nums;
}

/* ─── T) AUDIO panel (TTS) ──────────────────────────────────── */
body.pv5-page .pv5-audio-ctrl {
  display: flex; flex-wrap: wrap; gap: 8px;
  margin: 12px 0 18px;
}
body.pv5-page .pv5-audio-rate label {
  font-size: 13px; color: var(--ink-soft);
  display: block; margin-bottom: 8px;
}
body.pv5-page .pv5-audio-rate input[type="range"] {
  width: 100%; accent-color: var(--accent);
}
body.pv5-page .pv5-audio-status {
  margin-top: 18px; padding: 12px 14px;
  background: var(--surface); border-radius: 6px;
  font-size: 12px; color: var(--ink-mute); line-height: 1.4;
}
body.pv5-page .pv5-tts-active {
  background: rgba(196,168,130,.16);
  outline: 2px solid var(--accent-lt);
  border-radius: 4px;
}

/* ─── U) MOBILE (≤760px) — Phase 60.6 bottom-sheet rail ──────── */
@media (max-width: 760px) {
  body.pv5-page {
    --rail-w: 0px;            /* rail artık üstte yer kaplamaz */
    --tb-h: 48px;
    --panel-w: 100vw;
  }
  /* Stage'in sol padding'i sıfırlanır */
  body.pv5-page .pv5 { padding-left: 0; padding-bottom: 60px; }

  /* Rail → bottom-sheet horizontal scroller */
  body.pv5-page .pv5-rail {
    top: auto !important;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100% !important;     /* hover-expand kapanır */
    height: auto;
    flex-direction: row;
    align-items: center;
    padding: 8px 12px;
    padding-bottom: max(8px, env(safe-area-inset-bottom));
    border-right: 0;
    border-top: 1px solid var(--rule);
    box-shadow: 0 -2px 14px rgba(26,23,20,.06) !important;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x proximity;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    transition: none;
  }
  body.pv5-page .pv5-rail::-webkit-scrollbar { display: none; }

  /* Mobilde hover-expand davranışı yok */
  body.pv5-page .pv5-rail:hover,
  body.pv5-page .pv5-rail:focus-within {
    width: 100% !important;
    box-shadow: 0 -2px 14px rgba(26,23,20,.06) !important;
  }
  body.pv5-page .pv5-rail:hover .pv5-rail-label,
  body.pv5-page .pv5-rail:focus-within .pv5-rail-label,
  body.pv5-page .pv5-rail:hover .pv5-rail-group-lbl,
  body.pv5-page .pv5-rail:focus-within .pv5-rail-group-lbl { opacity: 0; }
  body.pv5-page .pv5-rail:hover .pv5-rail-badge,
  body.pv5-page .pv5-rail:focus-within .pv5-rail-badge,
  body.pv5-page .pv5-rail:hover .pv5-rail-dot,
  body.pv5-page .pv5-rail:focus-within .pv5-rail-dot { opacity: 1; }
  body.pv5-page .pv5-rail:hover .pv5-rail-lock,
  body.pv5-page .pv5-rail:focus-within .pv5-rail-lock {
    top: auto; transform: none; right: -4px; bottom: -2px;
  }

  /* Mobilde grup label gizle (yatay sığmaz) */
  body.pv5-page .pv5-rail-group-lbl { display: none !important; }

  /* Grup yatay düzenlemede */
  body.pv5-page .pv5-rail-group {
    flex-direction: row;
    padding: 0 6px;
    gap: 2px;
    border-top: 0 !important;
    margin-top: 0 !important;
  }
  body.pv5-page .pv5-rail-group + .pv5-rail-group {
    border-left: 1px solid var(--rule);
    margin-left: 4px;
    padding-left: 10px;
  }
  body.pv5-page .pv5-rail-group[data-group="ai"] {
    background: transparent;
  }

  /* Mobilde label yok, sadece icon (bottom-sheet kompakt) */
  body.pv5-page .pv5-rail-btn {
    flex-direction: column;
    width: auto;
    min-width: 48px;
    min-height: 44px;
    padding: 4px 8px;
    gap: 2px;
    flex-shrink: 0;
    scroll-snap-align: start;
  }
  body.pv5-page .pv5-rail-label {
    opacity: 1 !important;
    transform: none !important;
    font-size: 9px;
    font-weight: 600;
    line-height: 1;
    max-width: 70px;
    text-align: center;
    color: var(--ink-mute);
  }
  body.pv5-page .pv5-rail-btn:hover .pv5-rail-label,
  body.pv5-page .pv5-rail-btn.is-active .pv5-rail-label {
    color: inherit;
  }
  body.pv5-page .pv5-rail-icon { width: 22px; height: 22px; }
  body.pv5-page .pv5-rail-icon svg { width: 18px; height: 18px; }

  body.pv5-page .pv5-stage { padding: 20px 12px 80px; gap: 24px; }
  body.pv5-page .pv5-paper {
    padding: 0 22px 40px;
    border-radius: 8px;
  }
  body.pv5-page .pv5-cover {
    margin: 0 -22px 28px;
    border-radius: 0;
    flex-direction: column;
    align-items: stretch;
    min-height: auto;
    background: var(--paper);
  }
  body.pv5-page .pv5-cover-bg {
    position: relative; aspect-ratio: 16/9; height: auto;
  }
  body.pv5-page .pv5-cover-bg img { aspect-ratio: 16/9; }
  body.pv5-page .pv5-cover-shade { display: none; }
  body.pv5-page .pv5-cover-text {
    padding: 22px 22px 18px;
    color: var(--ink);
  }
  body.pv5-page .pv5-cover-meta {
    color: var(--ink-mute); text-shadow: none;
  }
  body.pv5-page .pv5-cover-cat {
    background: var(--surface);
    color: var(--cc, var(--accent));
    border-color: var(--rule);
  }
  body.pv5-page .pv5-title {
    color: var(--ink); text-shadow: none;
    font-size: calc(28px * var(--font-scale));
  }
  body.pv5-page .pv5-excerpt {
    color: var(--ink-soft); text-shadow: none;
    font-size: calc(17px * var(--font-scale));
  }
  body.pv5-page .pv5-author {
    color: var(--ink-soft); text-shadow: none;
    border-top-color: var(--rule);
  }
  body.pv5-page .pv5-author-img {
    background: var(--accent); border: 0;
  }
  body.pv5-page .pv5-author-name a { color: var(--ink); }
  body.pv5-page .pv5-author-role { color: var(--ink-mute); }

  body.pv5-page .pv5-body { font-size: calc(18px * var(--font-scale)); }
  body.pv5-page .pv5-body p,
  body.pv5-page .pv5-body li { font-size: calc(18px * var(--font-scale)); }
  body.pv5-page .pv5-body h2 { font-size: calc(26px * var(--font-scale)); margin-top: 44px; }
  body.pv5-page .pv5-body h3 { font-size: calc(20px * var(--font-scale)); }
  body.pv5-page .pv5-body blockquote,
  body.pv5-page .pv5-body blockquote p { font-size: calc(19px * var(--font-scale)); }

  body.pv5-page .pv5-tb-info,
  body.pv5-page .pv5-tb-center { display: none; }
  body.pv5-page .pv5-pill { font-size: 13px; gap: 12px; padding: 8px 16px; }
  body.pv5-page .pv5-nav { grid-template-columns: 1fr; }
  body.pv5-page .pv5-nav-next { text-align: left; align-items: flex-start; }
  body.pv5-page .pv5-panel { left: 0; }
  body.pv5-page .pv5-backdrop { inset: 0; }
}

/* ─── V) FOCUS (a11y) ───────────────────────────────────────── */
body.pv5-page a:focus-visible,
body.pv5-page button:focus-visible,
body.pv5-page input:focus-visible,
body.pv5-page textarea:focus-visible,
body.pv5-page summary:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 3px;
  border-radius: 4px;
}

/* ─── W) PRINT ──────────────────────────────────────────────── */
@media print {
  body.pv5-page .pv5-rail,
  body.pv5-page .pv5-tb,
  body.pv5-page .pv5-panel,
  body.pv5-page .pv5-backdrop,
  body.pv5-page .pv5-tags,
  body.pv5-page header,
  body.pv5-page footer { display: none !important; }
  body.pv5-page .pv5 { padding-left: 0; }
  body.pv5-page .pv5-stage { padding: 0; }
  body.pv5-page .pv5-paper { box-shadow: none; padding: 0; max-width: 100%; }
  body.pv5-page .pv5-cover { min-height: auto; }
  body.pv5-page .pv5-title { font-size: 22pt; color: #000; }
  body.pv5-page .pv5-body { font-size: 11pt; line-height: 1.5; color: #000; }
  body.pv5-page .pv5-body h2 { font-size: 16pt; color: #000; }
}

/* ─── X) DARK MODE ──────────────────────────────────────────── */
body.pv5-page[data-theme="dark"] {
  --ink:       #EDE7DD;
  --ink-soft:  #C8C0B3;
  --ink-mute:  #8A8276;
  --paper:     #1A1714;
  --bg:        #0E0C0A;
  --surface:   #211C16;
  --rule:      #2A241D;
  --accent:    #C4A882;
  --accent-dk: #8B6E4E;
  --accent-lt: #D9C29C;
  --shadow:    0 2px 12px rgba(0,0,0,.4);
  --shadow-lg: 0 10px 40px rgba(0,0,0,.6);
}

/* ─── Y) FONT SCALE ─────────────────────────────────────────── */
body.pv5-page[data-font="sm"] { --font-scale: 0.875; }
body.pv5-page[data-font="md"] { --font-scale: 1; }
body.pv5-page[data-font="lg"] { --font-scale: 1.125; }
body.pv5-page[data-font="xl"] { --font-scale: 1.25; }

/* ─── Z) PAYWALL ────────────────────────────────────────────── */
body.pv5-page .pv5-paywall-teaser {
  position: relative;
  max-height: 480px;
  overflow: hidden;
  -webkit-mask-image: linear-gradient(180deg, #000 70%, transparent 100%);
          mask-image: linear-gradient(180deg, #000 70%, transparent 100%);
}
body.pv5-page .pv5-paywall-fallback {
  background: var(--surface);
  padding: 32px;
  border-radius: 12px;
  text-align: center;
  margin: 32px 0;
}
body.pv5-page .pv5-paywall-fallback h3 {
  font-family: var(--f-serif);
  font-size: 24px;
  margin-bottom: 12px;
}
body.pv5-page .pv5-paywall-fallback a {
  color: var(--accent);
  font-weight: 600;
  text-decoration: underline;
}

/* ═══════════════════════════════════════════════════════════════
   PHASE 60.1: Sol sidebar 3 değer feature
   - Kaydet (Bookmark) toggle
   - Yıldız Rating (slide panel + badge)
   - Yorumlara Atla + Comments section
   ═══════════════════════════════════════════════════════════════ */

/* Rail spacer (ayraç) */
body.pv5-page .pv5-rail-sep {
  display: block;
  width: 24px;
  height: 1px;
  background: var(--rule);
  margin: 8px auto;
}

/* Kaydet butonu (filled/outline toggle) — Phase 60.6 layout uyumlu */
body.pv5-page .pv5-rail-save .pv5-icon-bm-fill { display: none; }
body.pv5-page .pv5-rail-save.is-saved {
  color: var(--accent);
}
body.pv5-page .pv5-rail-save.is-saved .pv5-icon-bm-out { display: none; }
body.pv5-page .pv5-rail-save.is-saved .pv5-icon-bm-fill { display: inline; }
body.pv5-page .pv5-rail-save.pv5-pop {
  animation: pv5pop .3s cubic-bezier(.25,1.5,.5,1);
}
@keyframes pv5pop {
  0%   { transform: scale(1); }
  50%  { transform: scale(1.18); }
  100% { transform: scale(1); }
}

/* Rail badge — Phase 60.6: icon kontekstine pozisyonla, expand'da görünür hale gelir */
body.pv5-page .pv5-rail-badge {
  position: absolute;
  top: -4px;
  right: -6px;
  min-width: 16px;
  height: 16px;
  padding: 0 4px;
  border-radius: 8px;
  background: var(--accent);
  color: #fff;
  font-family: var(--f-sans);
  font-size: 9px;
  font-weight: 700;
  line-height: 16px;
  text-align: center;
  font-variant-numeric: tabular-nums;
  pointer-events: none;
  transition: opacity .15s;
}
/* Badge'i icon container içine al */
body.pv5-page .pv5-rail-btn .pv5-rail-badge {
  top: -6px;
  right: -8px;
}
/* Expand olduğunda badge label içine entegre olduğundan corner badge gizlenir */
body.pv5-page .pv5-rail:hover .pv5-rail-badge,
body.pv5-page .pv5-rail:focus-within .pv5-rail-badge {
  opacity: 0;
}

/* ─── RATING Panel ─── */
body.pv5-page .pv5-rate-summary {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 16px;
  background: var(--surface);
  border: 1px solid var(--rule);
  border-radius: 12px;
  margin-bottom: 18px;
}
body.pv5-page .pv5-rate-big {
  font-family: var(--f-serif);
  font-size: 38px;
  font-weight: 600;
  color: var(--accent);
  line-height: 1;
}
body.pv5-page .pv5-rate-summary-r { flex: 1; }
body.pv5-page .pv5-rate-stars-display {
  display: flex;
  gap: 1px;
  font-size: 18px;
  color: var(--rule);
  margin-bottom: 4px;
}
body.pv5-page .pv5-rate-stars-display .on { color: #F59E0B; }
body.pv5-page .pv5-rate-count {
  font-size: 12px;
  color: var(--ink-mute);
}

body.pv5-page .pv5-rate-stars {
  display: flex;
  justify-content: center;
  gap: 6px;
  padding: 18px 0;
  margin: 0 -4px;
}
body.pv5-page .pv5-rate-stars button {
  width: 44px;
  height: 44px;
  border: 0;
  background: transparent;
  color: var(--rule);
  font-size: 32px;
  line-height: 1;
  cursor: pointer;
  transition: color .12s, transform .12s;
  padding: 0;
}
body.pv5-page .pv5-rate-stars button:hover {
  transform: scale(1.15);
}
/* Hover preview: stars before hovered one stay lit */
body.pv5-page .pv5-rate-stars:hover button { color: var(--rule); }
body.pv5-page .pv5-rate-stars button:hover,
body.pv5-page .pv5-rate-stars button:hover ~ button { color: var(--rule); }
body.pv5-page .pv5-rate-stars:hover button:not(:hover):not(:hover ~ button) { color: #F59E0B; }
/* Locked state — current vote shown */
body.pv5-page .pv5-rate-stars[data-current="1"] button:nth-child(-n+1),
body.pv5-page .pv5-rate-stars[data-current="2"] button:nth-child(-n+2),
body.pv5-page .pv5-rate-stars[data-current="3"] button:nth-child(-n+3),
body.pv5-page .pv5-rate-stars[data-current="4"] button:nth-child(-n+4),
body.pv5-page .pv5-rate-stars[data-current="5"] button:nth-child(-n+5) {
  color: #F59E0B;
}
body.pv5-page .pv5-rate-stars.is-locked button {
  cursor: default;
  pointer-events: none;
}
body.pv5-page .pv5-rate-stars.is-locked button:hover { transform: none; }
body.pv5-page .pv5-rate-msg {
  text-align: center;
  font-size: 13px;
  color: var(--ink-soft);
  margin: 4px 0 14px;
  line-height: 1.5;
}
body.pv5-page .pv5-rate-msg strong { color: var(--accent); }

/* ─── COMMENTS Section ─── */
body.pv5-page .pv5-comments {
  margin: 56px 0 32px;
  padding-top: 32px;
  border-top: 1px solid var(--rule);
  scroll-margin-top: 80px;
  font-family: var(--f-sans);
}
body.pv5-page .pv5-cmt-title {
  font-family: var(--f-serif);
  font-size: 26px;
  font-weight: 600;
  color: var(--ink);
  margin: 0 0 20px;
  display: flex;
  align-items: center;
  gap: 8px;
}
body.pv5-page .pv5-cmt-count {
  font-family: var(--f-sans);
  font-size: 15px;
  font-weight: 500;
  color: var(--ink-mute);
}

/* Form */
body.pv5-page .pv5-cmt-form {
  margin-bottom: 28px;
  padding: 20px;
  background: var(--surface);
  border: 1px solid var(--rule);
  border-radius: 12px;
}
body.pv5-page .pv5-cmt-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin-bottom: 10px;
}
body.pv5-page .pv5-cmt-form input,
body.pv5-page .pv5-cmt-form textarea {
  width: 100%;
  padding: 10px 14px;
  border: 1px solid var(--rule);
  border-radius: 8px;
  background: var(--paper);
  color: var(--ink);
  font-family: var(--f-sans);
  font-size: 14px;
  line-height: 1.5;
  outline: none;
  transition: border-color .15s;
  -webkit-appearance: none;
}
body.pv5-page .pv5-cmt-form textarea {
  resize: vertical;
  min-height: 100px;
}
body.pv5-page .pv5-cmt-form input:focus,
body.pv5-page .pv5-cmt-form textarea:focus {
  border-color: var(--accent);
}
body.pv5-page .pv5-cmt-foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 12px;
  gap: 12px;
  flex-wrap: wrap;
}
body.pv5-page .pv5-cmt-hint {
  font-size: 12px;
  color: var(--ink-mute);
}

/* List */
body.pv5-page .pv5-cmt-list {
  display: flex;
  flex-direction: column;
  gap: 14px;
}
body.pv5-page .pv5-cmt-item {
  padding: 18px;
  background: var(--paper);
  border: 1px solid var(--rule);
  border-radius: 10px;
  scroll-margin-top: 80px;
}
body.pv5-page .pv5-cmt-head {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 10px;
}
body.pv5-page .pv5-cmt-avatar {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: var(--accent);
  color: #fff;
  font-size: 14px;
  font-weight: 600;
  flex-shrink: 0;
}
body.pv5-page .pv5-cmt-meta {
  display: flex;
  flex-direction: column;
}
body.pv5-page .pv5-cmt-author {
  font-size: 14px;
  font-weight: 600;
  color: var(--ink);
  line-height: 1.2;
}
body.pv5-page .pv5-cmt-date {
  font-size: 12px;
  color: var(--ink-mute);
  margin-top: 2px;
}
body.pv5-page .pv5-cmt-body {
  font-size: 15px;
  line-height: 1.6;
  color: var(--ink-soft);
  word-wrap: break-word;
}
body.pv5-page .pv5-cmt-empty {
  padding: 32px 24px;
  text-align: center;
  color: var(--ink-mute);
  background: var(--surface);
  border: 1px dashed var(--rule);
  border-radius: 12px;
  font-size: 14px;
}

/* Comments mobile */
@media (max-width: 760px) {
  body.pv5-page .pv5-cmt-row { grid-template-columns: 1fr; }
  body.pv5-page .pv5-cmt-foot { flex-direction: column-reverse; align-items: stretch; }
  body.pv5-page .pv5-cmt-foot button { width: 100%; }
  body.pv5-page .pv5-rate-summary { flex-direction: column; text-align: center; }
  body.pv5-page .pv5-cmt-title { font-size: 22px; }
}

/* ═══════════════════════════════════════════════════════════════
   PHASE 60.7: Yorumlar v2 — like + reply + sort + AJAX
   ═══════════════════════════════════════════════════════════════ */
body.pv5-page .pv5-cmt-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin: 0 0 20px;
  flex-wrap: wrap;
}
body.pv5-page .pv5-cmt-header .pv5-cmt-title { margin: 0; }

/* Sort dropdown — pill grup */
body.pv5-page .pv5-cmt-sort {
  display: inline-flex;
  gap: 2px;
  padding: 3px;
  background: var(--surface);
  border: 1px solid var(--rule);
  border-radius: 100px;
}
body.pv5-page .pv5-cmt-sort-btn {
  padding: 6px 14px;
  border: 0;
  background: transparent;
  color: var(--ink-mute);
  font-family: var(--f-sans);
  font-size: 12px;
  font-weight: 600;
  border-radius: 100px;
  cursor: pointer;
  transition: all .15s;
}
body.pv5-page .pv5-cmt-sort-btn:hover { color: var(--ink); }
body.pv5-page .pv5-cmt-sort-btn.is-active {
  background: var(--paper);
  color: var(--accent);
  box-shadow: 0 1px 3px rgba(26, 23, 20, .08);
}

/* AJAX result message — submit sonrası feedback */
body.pv5-page .pv5-cmt-result {
  margin-top: 12px;
  padding: 12px 16px;
  border-radius: 8px;
  font-family: var(--f-sans);
  font-size: 13px;
  line-height: 1.5;
}
body.pv5-page .pv5-cmt-result.is-success {
  background: rgba(22, 163, 74, .08);
  border: 1px solid rgba(22, 163, 74, .2);
  color: #15803D;
}
body.pv5-page .pv5-cmt-result.is-pending {
  background: rgba(193, 127, 94, .08);
  border: 1px solid rgba(193, 127, 94, .2);
  color: var(--accent-dk);
}
body.pv5-page .pv5-cmt-result.is-error {
  background: rgba(220, 80, 60, .08);
  border: 1px solid rgba(220, 80, 60, .2);
  color: var(--danger);
}

/* Comment item — actions row */
body.pv5-page .pv5-cmt-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px solid var(--rule);
  flex-wrap: wrap;
}
body.pv5-page .pv5-cmt-like {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 6px 12px;
  border: 0;
  background: transparent;
  color: var(--ink-mute);
  font-family: var(--f-sans);
  font-size: 12px;
  font-weight: 600;
  border-radius: 100px;
  cursor: pointer;
  transition: all .15s;
}
body.pv5-page .pv5-cmt-like:hover {
  background: rgba(220, 80, 60, .06);
  color: var(--danger);
}
body.pv5-page .pv5-cmt-like.is-liked {
  background: rgba(220, 80, 60, .08);
  color: var(--danger);
}
body.pv5-page .pv5-cmt-like.pv5-pop {
  animation: pv5pop .35s cubic-bezier(.25, 1.5, .5, 1);
}
body.pv5-page .pv5-cmt-heart {
  font-size: 14px;
  line-height: 1;
}
body.pv5-page .pv5-cmt-like-count {
  font-variant-numeric: tabular-nums;
  min-width: 8px;
}
body.pv5-page .pv5-cmt-like-count:empty { display: none; }

body.pv5-page .pv5-cmt-reply-btn {
  padding: 6px 12px;
  border: 0;
  background: transparent;
  color: var(--ink-mute);
  font-family: var(--f-sans);
  font-size: 12px;
  font-weight: 600;
  border-radius: 100px;
  cursor: pointer;
  transition: all .15s;
}
body.pv5-page .pv5-cmt-reply-btn:hover {
  background: var(--surface);
  color: var(--accent);
}
body.pv5-page .pv5-cmt-reply-btn.is-active {
  background: var(--accent);
  color: #fff;
}

body.pv5-page .pv5-cmt-replies-count {
  margin-left: auto;
  font-family: var(--f-mono, monospace);
  font-size: 11px;
  color: var(--ink-mute);
  letter-spacing: .04em;
}

/* Nested children — indent */
body.pv5-page .pv5-cmt-children {
  margin: 14px 0 0 24px;
  padding-left: 14px;
  border-left: 2px solid var(--rule);
  display: flex;
  flex-direction: column;
  gap: 10px;
}
body.pv5-page .pv5-cmt-child {
  background: var(--surface);
  border-color: var(--rule);
}
body.pv5-page .pv5-cmt-avatar-sm {
  width: 28px;
  height: 28px;
  font-size: 12px;
}

/* Inline reply form */
body.pv5-page .pv5-cmt-reply-form {
  margin: 14px 0 0 24px;
  padding: 14px;
  background: var(--surface);
  border: 1px solid var(--rule);
  border-radius: 10px;
  animation: pv5slideDown .22s cubic-bezier(.23, 1, .32, 1);
}
@keyframes pv5slideDown {
  from { opacity: 0; transform: translateY(-6px); }
  to   { opacity: 1; transform: translateY(0); }
}
body.pv5-page .pv5-cmt-reply-form textarea {
  width: 100%;
  padding: 10px 12px;
  border: 1px solid var(--rule);
  border-radius: 8px;
  background: var(--paper);
  color: var(--ink);
  font-family: var(--f-sans);
  font-size: 13px;
  line-height: 1.5;
  outline: none;
  resize: vertical;
  min-height: 70px;
  margin-bottom: 8px;
  -webkit-appearance: none;
}
body.pv5-page .pv5-cmt-reply-form textarea:focus { border-color: var(--accent); }
body.pv5-page .pv5-cmt-reply-foot {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
}
body.pv5-page .pv5-cmt-reply-cancel {
  padding: 6px 14px;
  border: 1px solid var(--rule);
  background: var(--paper);
  color: var(--ink-soft);
  border-radius: 100px;
  font-family: var(--f-sans);
  font-size: 12px;
  font-weight: 500;
  cursor: pointer;
}
body.pv5-page .pv5-cmt-reply-cancel:hover { border-color: var(--ink-mute); }
body.pv5-page .pv5-cmt-reply-login-cta {
  margin: 14px 0 0 24px;
  padding: 14px 18px;
  background: var(--surface);
  border: 1px solid var(--rule);
  border-radius: 10px;
  font-size: 13px;
  text-align: center;
  color: var(--ink-soft);
}
body.pv5-page .pv5-cmt-reply-login-cta a {
  color: var(--accent);
  font-weight: 600;
  text-decoration: none;
  border-bottom: 1px solid var(--accent);
}

/* New comment slide-in animation */
body.pv5-page .pv5-cmt-item.pv5-cmt-new {
  animation: pv5cmtNew .4s cubic-bezier(.23, 1, .32, 1);
  border-color: var(--accent);
  box-shadow: 0 4px 14px rgba(193, 127, 94, .12);
}
@keyframes pv5cmtNew {
  from { opacity: 0; transform: translateY(-12px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* Submit loading state */
body.pv5-page .pv5-cmt-form.is-submitting textarea,
body.pv5-page .pv5-cmt-form.is-submitting button { opacity: .6; pointer-events: none; }

/* Mobile */
@media (max-width: 760px) {
  body.pv5-page .pv5-cmt-header { flex-direction: column; align-items: stretch; gap: 12px; }
  body.pv5-page .pv5-cmt-sort { align-self: flex-start; }
  body.pv5-page .pv5-cmt-children { margin-left: 12px; padding-left: 10px; }
  body.pv5-page .pv5-cmt-reply-form { margin-left: 12px; }
  body.pv5-page .pv5-cmt-actions { gap: 4px; }
  body.pv5-page .pv5-cmt-like,
  body.pv5-page .pv5-cmt-reply-btn { padding: 6px 10px; font-size: 11px; }
  body.pv5-page .pv5-cmt-replies-count { font-size: 10px; }
}

/* Print */
@media print {
  body.pv5-page .pv5-cmt-actions,
  body.pv5-page .pv5-cmt-sort,
  body.pv5-page .pv5-cmt-form { display: none !important; }
}

/* Dark mode tweaks (Phase 60.1) */
body.pv5-page[data-theme="dark"] .pv5-rail-save.is-saved {
  background: rgba(196, 168, 130, .12);
}
body.pv5-page[data-theme="dark"] .pv5-rate-stars-display { color: #2A241D; }

/* Print: yorumları sakla */
@media print {
  body.pv5-page .pv5-comments,
  body.pv5-page .pv5-cmt-form,
  body.pv5-page .pv5-rail-sep,
  body.pv5-page .pv5-rail-save,
  body.pv5-page .pv5-rail-rate,
  body.pv5-page .pv5-rail-note,
  body.pv5-page .pv5-rail-cmt,
  body.pv5-page .pv5-login-modal { display: none !important; }
}

/* ═══════════════════════════════════════════════════════════════
   PHASE 60.2: Login gating + Notes feature
   - Rail kilit göstergesi (anonymous için 🔒 badge)
   - Notes rail icon + dot indicator
   - Notes panel (textarea + save + status)
   - Login inline CTA (panel içi anonymous)
   - Login modal (gated click triggered)
   - Comments login CTA
   ═══════════════════════════════════════════════════════════════ */

/* Rail lock indicator (anonymous için 🔒) — Phase 60.6 layout uyumlu */
body.pv5-page .pv5-rail-lock {
  position: absolute;
  bottom: -2px;
  right: -4px;
  font-size: 10px;
  line-height: 1;
  opacity: .75;
  pointer-events: none;
  filter: grayscale(.4);
}
body.pv5-page .pv5-rail:hover .pv5-rail-lock,
body.pv5-page .pv5-rail:focus-within .pv5-rail-lock {
  bottom: auto;
  right: 12px;
  top: 50%;
  transform: translateY(-50%);
  opacity: .6;
}
body.pv5-page .pv5-rail-btn.is-locked {
  color: var(--ink-mute);
  opacity: .85;
}
body.pv5-page .pv5-rail-btn.is-locked:hover {
  background: var(--surface);
  opacity: 1;
}
body.pv5-page .pv5-rail-btn.is-locked .pv5-rail-badge {
  background: var(--ink-mute);
}

/* Notes rail dot (yeşil punto — kaydedilmiş not göstergesi) */
body.pv5-page .pv5-rail-note.has-note {
  color: var(--ai-1);
}
body.pv5-page .pv5-rail-dot {
  position: absolute;
  top: -2px;
  right: -2px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--ai-1);
  border: 2px solid var(--paper);
  pointer-events: none;
  transition: opacity .15s;
}
body.pv5-page .pv5-rail:hover .pv5-rail-dot,
body.pv5-page .pv5-rail:focus-within .pv5-rail-dot {
  opacity: 0;
}

/* ─── NOTES Panel ─── */
body.pv5-page .pv5-note-text {
  width: 100%;
  padding: 14px 16px;
  border: 1px solid var(--rule);
  border-radius: 10px;
  background: var(--surface);
  color: var(--ink);
  font-family: var(--f-sans);
  font-size: 14px;
  line-height: 1.6;
  outline: none;
  resize: vertical;
  min-height: 280px;
  transition: border-color .15s, background .15s;
  -webkit-appearance: none;
  margin-bottom: 10px;
}
body.pv5-page .pv5-note-text:focus {
  border-color: var(--ai-1);
  background: var(--paper);
}
body.pv5-page .pv5-note-foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
  font-size: 11px;
  color: var(--ink-mute);
  margin-bottom: 12px;
}
body.pv5-page .pv5-note-status { font-style: italic; }
body.pv5-page .pv5-note-status.is-saving { color: var(--ai-1); font-style: normal; }
body.pv5-page .pv5-note-status.is-saved  { color: #16A34A; font-style: normal; }
body.pv5-page .pv5-note-status.is-error  { color: var(--danger); font-style: normal; }
body.pv5-page .pv5-note-counter { font-variant-numeric: tabular-nums; }
body.pv5-page .pv5-note-actions {
  display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 14px;
}

/* ─── INLINE Login CTA (panel içinde) ─── */
body.pv5-page .pv5-login-inline {
  padding: 24px 16px;
  text-align: center;
  background: linear-gradient(135deg, rgba(193,127,94,.04), rgba(139,110,78,.04));
  border: 1px solid rgba(193,127,94,.16);
  border-radius: 12px;
}
body.pv5-page .pv5-login-icon {
  font-size: 32px;
  margin-bottom: 12px;
  line-height: 1;
}
body.pv5-page .pv5-login-inline h3 {
  font-family: var(--f-serif);
  font-size: 18px;
  font-weight: 600;
  color: var(--ink);
  margin: 0 0 8px;
}
body.pv5-page .pv5-login-inline p {
  font-size: 13px;
  line-height: 1.5;
  color: var(--ink-soft);
  margin: 0 0 16px;
  font-family: var(--f-sans);
}
body.pv5-page .pv5-login-actions {
  display: flex;
  gap: 10px;
  justify-content: center;
  flex-wrap: wrap;
  margin-bottom: 14px;
}
body.pv5-page .pv5-login-actions .pv5-ai-go,
body.pv5-page .pv5-login-actions .pv5-ai-act {
  text-decoration: none;
}
body.pv5-page .pv5-login-perks {
  list-style: none;
  padding: 0;
  margin: 14px auto 0;
  text-align: left;
  font-size: 13px;
  color: var(--ink-soft);
  max-width: 280px;
}
body.pv5-page .pv5-login-perks li {
  padding: 6px 0;
  border-bottom: 1px dashed var(--rule);
}
body.pv5-page .pv5-login-perks li:last-child { border-bottom: 0; }

/* ─── LOGIN MODAL (gated tıklama tetiklemeli) ─── */
body.pv5-page .pv5-login-modal {
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(26, 23, 20, .58);
  -webkit-backdrop-filter: blur(3px);
          backdrop-filter: blur(3px);
  padding: 20px;
  opacity: 0;
  transition: opacity .2s;
}
/* CRITICAL: [hidden] attribute'u CSS display:flex tarafından override ediliyordu →
   modal opacity:0 ile görünmez ama tüm sayfa tıklamalarını yutuyordu (Phase 60.2 regression fix) */
body.pv5-page .pv5-login-modal[hidden] {
  display: none !important;
}
body.pv5-page .pv5-login-modal.is-open {
  opacity: 1;
}
body.pv5-page .pv5-login-modal-card {
  position: relative;
  max-width: 360px;
  width: 100%;
  background: var(--paper);
  border-radius: 16px;
  padding: 32px 24px 24px;
  text-align: center;
  box-shadow: var(--shadow-lg);
  font-family: var(--f-sans);
  transform: scale(.96);
  transition: transform .25s cubic-bezier(.23,1,.32,1);
}
body.pv5-page .pv5-login-modal.is-open .pv5-login-modal-card {
  transform: scale(1);
}
body.pv5-page .pv5-login-modal-x {
  position: absolute;
  top: 10px;
  right: 12px;
  width: 30px;
  height: 30px;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: var(--ink-mute);
  font-size: 16px;
  cursor: pointer;
}
body.pv5-page .pv5-login-modal-x:hover {
  background: var(--surface);
  color: var(--ink);
}
body.pv5-page .pv5-login-modal h3 {
  font-family: var(--f-serif);
  font-size: 20px;
  font-weight: 600;
  margin: 8px 0;
  color: var(--ink);
}
body.pv5-page .pv5-login-modal p {
  font-size: 14px;
  line-height: 1.5;
  color: var(--ink-soft);
  margin: 0 0 18px;
}
body.pv5-page .pv5-login-modal .pv5-login-actions {
  margin: 0;
}

/* ─── Comments login CTA (anonymous için form yerine) ─── */
body.pv5-page .pv5-cmt-login-cta {
  margin-bottom: 28px;
  padding: 28px 24px;
  background: linear-gradient(135deg, rgba(193,127,94,.04), rgba(139,110,78,.04));
  border: 1px solid rgba(193,127,94,.16);
  border-radius: 12px;
  text-align: center;
}
body.pv5-page .pv5-cmt-login-icon {
  font-size: 36px;
  line-height: 1;
  margin-bottom: 10px;
}
body.pv5-page .pv5-cmt-login-cta h3 {
  font-family: var(--f-serif);
  font-size: 20px;
  font-weight: 600;
  color: var(--ink);
  margin: 0 0 8px;
}
body.pv5-page .pv5-cmt-login-cta p {
  font-size: 14px;
  color: var(--ink-soft);
  margin: 0 0 16px;
  line-height: 1.5;
}
body.pv5-page .pv5-cmt-login-actions {
  display: flex;
  gap: 10px;
  justify-content: center;
  flex-wrap: wrap;
}
body.pv5-page .pv5-cmt-login-actions a { text-decoration: none; }

/* ─── Comments form userbar (logged-in için) ─── */
body.pv5-page .pv5-cmt-userbar {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 0 0 12px;
  margin-bottom: 10px;
  border-bottom: 1px solid var(--rule);
  font-size: 13px;
  color: var(--ink-soft);
}
body.pv5-page .pv5-cmt-userlbl { font-weight: 500; }

/* Mobile Phase 60.2 */
@media (max-width: 760px) {
  body.pv5-page .pv5-login-modal-card { padding: 28px 20px 20px; }
  body.pv5-page .pv5-login-actions .pv5-ai-go,
  body.pv5-page .pv5-login-actions .pv5-ai-act { width: 100%; text-align: center; }
  body.pv5-page .pv5-cmt-login-actions a { width: 100%; }
  body.pv5-page .pv5-note-text { min-height: 220px; }
}

/* Dark mode Phase 60.2 */
body.pv5-page[data-theme="dark"] .pv5-login-modal { background: rgba(0,0,0,.68); }
body.pv5-page[data-theme="dark"] .pv5-rail-note.has-note { background: rgba(196,168,130,.12); }
body.pv5-page[data-theme="dark"] .pv5-rail-dot { border-color: var(--paper); }

/* Print Phase 60.2 */
@media print {
  body.pv5-page .pv5-rail-note,
  body.pv5-page .pv5-login-modal,
  body.pv5-page .pv5-cmt-login-cta { display: none !important; }
}

/* ═══════════════════════════════════════════════════════════════
   PHASE 60.3: Highlight (Vurgu) — Kindle-style metin vurgulama
   - 4 renk seçenek (sarı/pembe/mavi/yeşil)
   - Selection floating popup (mouseup üzerinde)
   - Existing highlight click → delete tooltip
   ═══════════════════════════════════════════════════════════════ */

/* Vurgu — 4 renk paleti */
body.pv5-page .pv5-hl {
  cursor: pointer;
  padding: 0 1px;
  border-radius: 2px;
  transition: filter .15s;
}
body.pv5-page .pv5-hl:hover { filter: brightness(.94); }
body.pv5-page .pv5-hl-yellow { background: rgba(252, 211, 77, .55); color: var(--ink); }
body.pv5-page .pv5-hl-pink   { background: rgba(244, 114, 182, .42); color: var(--ink); }
body.pv5-page .pv5-hl-blue   { background: rgba(96, 165, 250, .42); color: var(--ink); }
body.pv5-page .pv5-hl-green  { background: rgba(110, 231, 183, .45); color: var(--ink); }

/* Dark mode için ayar */
body.pv5-page[data-theme="dark"] .pv5-hl-yellow { background: rgba(252, 211, 77, .28); color: var(--ink); }
body.pv5-page[data-theme="dark"] .pv5-hl-pink   { background: rgba(244, 114, 182, .25); color: var(--ink); }
body.pv5-page[data-theme="dark"] .pv5-hl-blue   { background: rgba(96, 165, 250, .25); color: var(--ink); }
body.pv5-page[data-theme="dark"] .pv5-hl-green  { background: rgba(110, 231, 183, .26); color: var(--ink); }

/* ─── Selection Popup ─── */
body.pv5-page .pv5-hl-popup {
  position: absolute;
  z-index: 1100;
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 6px 8px;
  background: var(--paper);
  border: 1px solid var(--rule);
  border-radius: 12px;
  box-shadow: var(--shadow-lg);
  font-family: var(--f-sans);
  opacity: 0;
  transform: translateY(6px) scale(.96);
  transition: opacity .12s, transform .12s;
  pointer-events: none;
  user-select: none;
  -webkit-user-select: none;
}
body.pv5-page .pv5-hl-popup.is-visible {
  opacity: 1;
  transform: translateY(0) scale(1);
  pointer-events: auto;
}
body.pv5-page .pv5-hl-popup::after {
  content: '';
  position: absolute;
  bottom: -6px;
  left: 50%;
  transform: translateX(-50%) rotate(45deg);
  width: 10px;
  height: 10px;
  background: var(--paper);
  border-right: 1px solid var(--rule);
  border-bottom: 1px solid var(--rule);
}
body.pv5-page .pv5-hl-popup.is-above::after {
  bottom: auto;
  top: -6px;
  border-right: 0; border-bottom: 0;
  border-left: 1px solid var(--rule);
  border-top: 1px solid var(--rule);
}

/* Renk butonları */
body.pv5-page .pv5-hl-color {
  width: 26px;
  height: 26px;
  border: 2px solid transparent;
  border-radius: 50%;
  cursor: pointer;
  padding: 0;
  transition: transform .12s, border-color .12s;
}
body.pv5-page .pv5-hl-color:hover {
  transform: scale(1.15);
}
body.pv5-page .pv5-hl-color[data-color="yellow"] { background: rgba(252, 211, 77, .9); }
body.pv5-page .pv5-hl-color[data-color="pink"]   { background: rgba(244, 114, 182, .85); }
body.pv5-page .pv5-hl-color[data-color="blue"]   { background: rgba(96, 165, 250, .85); }
body.pv5-page .pv5-hl-color[data-color="green"]  { background: rgba(110, 231, 183, .9); }

/* Delete butonu (existing highlight'a tıklandığında) */
body.pv5-page .pv5-hl-popup-del {
  border: 0;
  background: transparent;
  color: var(--danger);
  font-size: 13px;
  padding: 6px 10px;
  border-radius: 6px;
  cursor: pointer;
  font-family: var(--f-sans);
  font-weight: 500;
  white-space: nowrap;
}
body.pv5-page .pv5-hl-popup-del:hover {
  background: rgba(183, 85, 61, .08);
}

body.pv5-page .pv5-hl-popup-sep {
  width: 1px;
  height: 20px;
  background: var(--rule);
  margin: 0 4px;
}

/* Login hint (anonymous için inline tooltip yerine login modal — popup hiç gösterilmez) */
/* Mobile özel ayarlar */
@media (max-width: 760px) {
  body.pv5-page .pv5-hl-color { width: 32px; height: 32px; }
  body.pv5-page .pv5-hl-popup { padding: 8px 10px; gap: 8px; }
}

/* Print: highlight'lar açık kalsın ama popup gizlensin */
@media print {
  body.pv5-page .pv5-hl-popup { display: none !important; }
  body.pv5-page .pv5-hl {
    background: transparent !important;
    border-bottom: 2px solid #999;
  }
}

/* ═══════════════════════════════════════════════════════════════
   PHASE 60.4: Yazar Takip (Follow) — buton + author card
   - Hero küçük pill (cover üstü, beyaz over-dark)
   - Author card bottom büyük buton
   ═══════════════════════════════════════════════════════════════ */

/* Hero küçük takip butonu (cover üstü beyaz) */
body.pv5-page .pv5-author-follow {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 4px 12px;
  margin-left: 10px;
  border: 1px solid rgba(255, 255, 255, .35);
  border-radius: 100px;
  background: rgba(255, 255, 255, .12);
  color: #fff;
  font-family: var(--f-sans);
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
  text-shadow: none;
  transition: background .15s, border-color .15s, transform .12s;
  -webkit-backdrop-filter: blur(4px);
          backdrop-filter: blur(4px);
}
body.pv5-page .pv5-author-follow:hover {
  background: rgba(255, 255, 255, .22);
  border-color: rgba(255, 255, 255, .55);
  transform: translateY(-1px);
}
body.pv5-page .pv5-author-follow:active { transform: translateY(0); }
body.pv5-page .pv5-author-follow.is-following {
  background: rgba(255, 255, 255, .92);
  color: var(--ink);
  border-color: rgba(255, 255, 255, .9);
}
body.pv5-page .pv5-author-follow.is-following:hover {
  background: rgba(255, 255, 255, 1);
}
body.pv5-page .pv5-follow-icon {
  font-size: 13px;
  line-height: 1;
  font-weight: 700;
}

/* Author card BÜYÜK takip butonu */
body.pv5-page .pv5-author-card-actions {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-top: 18px;
  flex-wrap: wrap;
}
body.pv5-page .pv5-author-follow-big {
  margin-left: 0;
  padding: 11px 22px;
  font-size: 14px;
  background: linear-gradient(135deg, var(--ai-1), var(--ai-2));
  color: #fff;
  border: 0;
  box-shadow: 0 4px 14px rgba(193, 127, 94, .25);
  text-shadow: none;
}
body.pv5-page .pv5-author-follow-big:hover {
  background: linear-gradient(135deg, var(--ai-2), var(--accent-dk));
  box-shadow: 0 6px 18px rgba(193, 127, 94, .35);
  transform: translateY(-1px);
  border: 0;
}
body.pv5-page .pv5-author-follow-big .pv5-follow-icon {
  font-size: 16px;
}
body.pv5-page .pv5-author-follow-big.is-following {
  background: var(--paper);
  color: var(--accent);
  border: 1.5px solid var(--accent);
  box-shadow: none;
}
body.pv5-page .pv5-author-follow-big.is-following:hover {
  background: rgba(193, 127, 94, .06);
  border-color: var(--accent-dk);
  box-shadow: 0 2px 8px rgba(193, 127, 94, .15);
}

body.pv5-page .pv5-author-followers {
  font-family: var(--f-sans);
  font-size: 13px;
  color: var(--ink-mute);
  font-variant-numeric: tabular-nums;
}
body.pv5-page .pv5-author-followers span { font-weight: 600; color: var(--ink-soft); }

body.pv5-page .pv5-author-card-hint {
  margin: 12px 0 0;
  font-size: 12px;
  color: var(--ink-mute);
  font-style: italic;
  font-family: var(--f-sans);
}

/* Pop animasyon (state değişiminde) */
body.pv5-page .pv5-author-follow.pv5-pop {
  animation: pv5pop .3s cubic-bezier(.25, 1.5, .5, 1);
}

/* Mobile */
@media (max-width: 760px) {
  body.pv5-page .pv5-author-follow {
    margin-left: auto;
    margin-top: 6px;
  }
  body.pv5-page .pv5-author-card-actions {
    flex-direction: column;
    align-items: stretch;
  }
  body.pv5-page .pv5-author-follow-big {
    justify-content: center;
    width: 100%;
  }
  body.pv5-page .pv5-author-followers {
    text-align: center;
  }
}

/* Mobile hero — buton dark mode'da */
body.pv5-page[data-theme="dark"] .pv5-author-follow-big.is-following {
  background: var(--paper);
  color: var(--accent);
  border-color: var(--accent);
}

/* Print: takip butonları gizlensin */
@media print {
  body.pv5-page .pv5-author-follow,
  body.pv5-page .pv5-author-card-actions,
  body.pv5-page .pv5-author-card-hint { display: none !important; }
}

/* ═══════════════════════════════════════════════════════════════
   PHASE 60.5: Tried-It (Bunu Denedim) — recipe-only pill
   - Pill below recipe meta
   - "🍳 Bunu Denedim" → tıklayınca "✓ Denedim" + count
   - Sayaç pill içinde gösterilir
   ═══════════════════════════════════════════════════════════════ */

body.pv5-page .pv5-tried-wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  margin: 0 auto 36px;
  max-width: max-content;
}

body.pv5-page .pv5-tried {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 12px 22px 12px 20px;
  background: var(--paper);
  border: 1.5px solid var(--rule);
  color: var(--ink);
  border-radius: 100px;
  font-family: var(--f-sans);
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
  transition: all .18s;
  box-shadow: 0 1px 2px rgba(26,23,20,.04);
}
body.pv5-page .pv5-tried:hover {
  border-color: var(--accent);
  background: rgba(193, 127, 94, .04);
  transform: translateY(-1px);
  box-shadow: 0 4px 14px rgba(193, 127, 94, .12);
}
body.pv5-page .pv5-tried:active { transform: translateY(0); }

body.pv5-page .pv5-tried.is-tried {
  background: linear-gradient(135deg, var(--ai-1), var(--ai-2));
  color: #fff;
  border-color: transparent;
  box-shadow: 0 4px 14px rgba(193, 127, 94, .22);
}
body.pv5-page .pv5-tried.is-tried:hover {
  background: linear-gradient(135deg, var(--ai-2), var(--accent-dk));
  box-shadow: 0 6px 18px rgba(193, 127, 94, .32);
}

body.pv5-page .pv5-tried-icon {
  font-size: 18px;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 22px;
}
body.pv5-page .pv5-tried.is-tried .pv5-tried-icon {
  font-weight: 800;
  font-size: 17px;
}

body.pv5-page .pv5-tried-text { letter-spacing: -.005em; }

body.pv5-page .pv5-tried-count {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding-left: 12px;
  margin-left: 4px;
  border-left: 1px solid var(--rule);
  font-size: 13px;
  font-weight: 500;
  font-variant-numeric: tabular-nums;
  color: var(--ink-soft);
  transition: color .18s, border-color .18s;
}
body.pv5-page .pv5-tried.is-tried .pv5-tried-count {
  border-left-color: rgba(255, 255, 255, .25);
  color: rgba(255, 255, 255, .92);
}
body.pv5-page .pv5-tried-count-lbl {
  font-size: 11px;
  text-transform: lowercase;
  font-weight: 500;
  opacity: .82;
}

body.pv5-page .pv5-tried-hint {
  margin: 0;
  font-size: 12px;
  color: var(--ink-mute);
  font-style: italic;
  text-align: center;
  max-width: 320px;
  line-height: 1.4;
  font-family: var(--f-sans);
}

/* Pop animation on toggle */
body.pv5-page .pv5-tried.pv5-pop {
  animation: pv5pop .3s cubic-bezier(.25, 1.5, .5, 1);
}

/* Mobile */
@media (max-width: 760px) {
  body.pv5-page .pv5-tried {
    width: 100%;
    justify-content: center;
    padding: 14px 18px;
    font-size: 14px;
  }
  body.pv5-page .pv5-tried-wrap { max-width: 100%; }
  body.pv5-page .pv5-tried-count { font-size: 12px; }
}

/* Print: gizle */
@media print {
  body.pv5-page .pv5-tried-wrap { display: none !important; }
}
