
/* SAYFAYA ÖZGÜ CSS — kabuk kuralları fit-shell.css'e devredildi.
   Buradaki her kuralın seçicisi fit-shell.css'te YOK; yani hiçbiri
   kabuk kopyası değil. */
/* ============================================================
 C2 — DİYETİSYEN ROL KATMANI (tek profil-v1 · body[data-roles~="diyetisyen"])
 Pattern kaynağı: diyetisyen-profil-v1.html (pf- mirası) — VERBATIM port.
 Varsayılan gizli; C1 rol token'ı ile açılır. data-cap KULLANILMAZ.
 ============================================================ */

/* ---- görünürlük geçidi: rol katmanı öğeleri varsayılan gizli ---- */
.pf-rl-dyt{display:none !important}

body[data-roles~="diyetisyen"] .pf-verify.pf-rl-dyt{display:inline-flex !important}

body[data-roles~="diyetisyen"] .pf-handle-dyt.pf-rl-dyt{display:block !important}

body[data-roles~="diyetisyen"] .pf-on.pf-rl-dyt{display:block !important}

/* diyetisyen: avatar köşesinde TEK temiz yeşil müsaitlik noktası → kök tomato kamera affordance'ı
 gizle (üst üste binme/yarım-daire çakışması giderilir). Operatör profili düzenlemeyi "Profili Düzenle"
 ile yapar. (Antrenör/işletme kendi noktasını eklediğinde aynı prensip genişler.) */
body[data-roles~="diyetisyen"] .pf-ava .pf-ava-edit{display:none !important}

body[data-roles~="diyetisyen"] .pf-ava .pf-on{z-index:3}

/* ZİYARETÇİ CTA'ları (Randevu/Mesaj/yanıt) yalnız PUBLIC — operatör kendine randevu olamaz.
 Own'da kök 'Profili Düzenle' gösterilir (C2 own↔public bug fix; antrenör ile tutarlı). */
body.pf-public[data-roles~="diyetisyen"] .pf-book.pf-rl-dyt{display:inline-flex !important}

body.pf-public[data-roles~="diyetisyen"] .pf-msg.pf-rl-dyt{display:inline-flex !important}

body.pf-public[data-roles~="diyetisyen"] .pf-resp.pf-rl-dyt{display:flex !important}

/* kimlik/stats = her iki modda */
body[data-roles~="diyetisyen"] .pf-stats.pf-rl-dyt{display:flex !important}

body[data-roles~="diyetisyen"] .dt.pf-rl-dyt{display:inline-flex !important}

body[data-roles~="diyetisyen"] .pf-pro-band.pf-rl-dyt{display:flex !important}

/* diyetisyen modunda kök sayaç şeridini gizle (profesyonel şerit devralır) */
body[data-roles~="diyetisyen"] .pf-stats-kok{display:none !important}

/* diyetisyen aksiyon kolonu (dikey, diyetisyen-profil deseni); share gizli
   (P7 · "Üye Ol" düğmesi artık hiçbir rolde yok, gizlenecek bir şey kalmadı) */
body[data-roles~="diyetisyen"] .pf-actions{flex-direction:column;align-items:stretch;width:200px}

body[data-roles~="diyetisyen"] .pf-actions .icon-btn{display:none !important}

@media(max-width:640px){body[data-roles~="diyetisyen"] .pf-actions{width:100%}
}

/* diyetisyen: Takip Et yeşil tema (Randevu Al ile uyumlu; base tomato'yu override) */
body[data-roles~="diyetisyen"] .pf-follow{background:var(--green);border-color:var(--green)}

body[data-roles~="diyetisyen"] .pf-follow:hover{background:var(--green-deep);border-color:var(--green-deep)}

body[data-roles~="diyetisyen"] .pf-follow.following:hover{border-color:var(--green);color:var(--green);background:rgba(59,183,126,.10)}

/* operatör aksiyon kolonu: TÜM butonlar AYNI box anatomisi (yükseklik/padding/radius/ikon-hiza eşit
 → yamukluk gider). display'e DOKUNMA — own/public + rol gating yönetir. */
body[data-roles~="diyetisyen"] .pf-actions > .pf-book,
body[data-roles~="diyetisyen"] .pf-actions > .pf-follow,
body[data-roles~="diyetisyen"] .pf-actions > .pf-msg,
body[data-roles~="diyetisyen"] .pf-actions > .pf-edit-btn{
  align-items:center;justify-content:center;gap:9px;width:100%;box-sizing:border-box;
  padding:13px 20px;font-size:13.5px;line-height:1.25;border-radius:var(--radius-md);white-space:nowrap;
}

/* banner defter rozeti = ÜYE markası; operatör rollerinde GİZLİ (operatör profilinde 'hareket defteri' mantıksız) */
body[data-roles~="diyetisyen"] .pf-mark,
body[data-roles~="antrenor"] .pf-mark,
body[data-roles~="isletme"] .pf-mark{display:none !important}

/* breadcrumb own etiketi: üye "Hareket Defterim" · operatör "Profilim" (içerik evi yapısı değişmez, salt etiket) */
.pf-crumb-op{display:none}

body[data-roles~="diyetisyen"] .pf-crumb-own .pf-crumb-uye,
body[data-roles~="antrenor"] .pf-crumb-own .pf-crumb-uye,
body[data-roles~="isletme"] .pf-crumb-own .pf-crumb-uye{display:none}

body[data-roles~="diyetisyen"] .pf-crumb-own .pf-crumb-op,
body[data-roles~="antrenor"] .pf-crumb-own .pf-crumb-op,
body[data-roles~="isletme"] .pf-crumb-own .pf-crumb-op{display:inline}


/* ---- rol etiketi (pf-handle kardeşi — yeşil profesyonel ünvan) ---- */
.pf-handle-dyt{font-size:13.5px;color:var(--green-deep);font-weight:700;margin-top:4px}


/* ---- hero: müsaitlik noktası + verify rozeti + Randevu/Mesaj/yanıt ---- */
.pf-ava .pf-on{position:absolute;right:6px;bottom:9px;width:22px;height:22px;border-radius:var(--radius-circle);background:var(--green);border:3px solid #fff}

.pf-verify{align-items:center;gap:6px;font-size:12px;font-weight:700;color:var(--green-deep);background:rgba(59,183,126,.13);padding:5px 11px;border-radius:var(--radius-sm)}

.pf-verify i{font-size:12px}

.pf-book{align-items:center;justify-content:center;gap:9px;font-family:inherit;font-size:14px;font-weight:700;color:#fff;background:var(--green);border:1px solid var(--green);border-radius:var(--radius-md);padding:14px 22px;cursor:pointer;transition:.2s var(--ease);white-space:nowrap}

.pf-book:hover{background:var(--green-deep);transform:translateY(-2px)}

.pf-msg{align-items:center;justify-content:center;gap:8px;font-family:inherit;font-size:13.5px;font-weight:700;color:var(--slate);background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-md);padding:12px 16px;cursor:pointer;transition:.2s var(--ease)}

.pf-msg:hover{border-color:var(--green);color:var(--green)}

.pf-resp{align-items:center;justify-content:center;gap:7px;font-size:11.5px;color:var(--green-deep);font-weight:600;margin-top:1px}

.pfs.green i{background:rgba(59,183,126,.13);color:var(--green-deep)}


/* ---- sahibi köprüsü pill (C2-1c'de bağlanacak; CSS hazır, henüz HTML yok) ---- */
.pf-panel{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:12.5px;font-weight:700;color:var(--green-deep);background:#E7F6EF;border:1px dashed var(--green);border-radius:var(--radius-md);padding:10px 14px;transition:.2s var(--ease)}

.pf-panel:hover{background:var(--green);color:#fff}


/* ---- HAKKINDA: prose + yan bilgi kartı ---- */
.ab-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:30px;align-items:start}

.ab-main h2{font-size:22px;margin:0 0 14px}

.ab-main h2:not(:first-child){margin-top:34px}

.ab-main p{font-size:15px;color:var(--slate-2);font-weight:500;line-height:1.75;margin-bottom:14px}

.ab-spec{display:flex;flex-wrap:wrap;gap:9px;margin-top:4px}

.ab-spec .chip{cursor:default}

.ab-approach{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:8px}

.ap-item{display:flex;gap:14px;background:var(--bg-cream);border:1px solid var(--line);border-radius:var(--radius-lg);padding:18px 18px}

.ap-item i{flex:none;width:42px;height:42px;border-radius:var(--radius-md);background:rgba(59,183,126,.13);color:var(--green-deep);display:grid;place-items:center;font-size:16px}

.ap-item b{display:block;font-size:14.5px;color:var(--slate);margin-bottom:4px}

.ap-item span{font-size:13px;color:var(--muted);font-weight:500;line-height:1.55}

.ab-side{position:sticky;top:180px;display:flex;flex-direction:column;gap:18px}

.info-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--sh-sm);padding:20px 22px}

.info-card h4{font-size:14px;display:flex;align-items:center;gap:9px;margin-bottom:15px;padding-bottom:13px;border-bottom:1px solid var(--line)}

.info-card h4 i{color:var(--green);font-size:13px}

.ic-row{display:flex;gap:13px;padding:10px 0}

.ic-row+.ic-row{border-top:1px solid var(--line)}

.ic-row .ic-ico{flex:none;width:34px;height:34px;border-radius:var(--radius-md);background:var(--bg);color:var(--slate-2);display:grid;place-items:center;font-size:13px;margin-top:2px}

.ic-row b{display:block;font-size:13.5px;color:var(--slate);font-weight:700;line-height:1.3}

.ic-row span{display:block;font-size:12px;color:var(--muted);font-weight:500;margin-top:2px}

.ic-verify{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:700;color:var(--green-deep);background:rgba(59,183,126,.12);padding:3px 8px;border-radius:var(--radius-sm);margin-top:5px}


/* ---- HİZMETLER: paket kartları ---- */
.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}

.svc-card{display:flex;flex-direction:column;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);padding:24px 22px;transition:.25s var(--ease)}

.svc-card:hover{border-color:#dcdcdc;box-shadow:var(--sh-sm);transform:translateY(-4px)}

.svc-card.feat{border-color:rgba(59,183,126,.4);box-shadow:0 10px 30px rgba(59,183,126,.08)}

.svc-tag{align-self:flex-start;font-size:10.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--green-deep);background:rgba(59,183,126,.13);padding:5px 11px;border-radius:var(--radius-sm);margin-bottom:14px}

.svc-ico{width:48px;height:48px;border-radius:var(--radius-md);background:rgba(59,183,126,.13);color:var(--green-deep);display:grid;place-items:center;font-size:19px;margin-bottom:16px}

.svc-card h3{font-size:18px;margin-bottom:7px}

.svc-card>p{font-size:13.5px;color:var(--muted);font-weight:500;line-height:1.6;margin-bottom:16px}

.svc-feats{list-style:none;margin:0 0 20px;display:flex;flex-direction:column;gap:9px}

.svc-feats li{display:flex;gap:10px;font-size:13.5px;color:var(--slate-2);font-weight:500;line-height:1.4}

.svc-feats li i{flex:none;color:var(--green);font-size:13px;margin-top:3px}

.svc-foot{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:18px;border-top:1px solid var(--line)}

.svc-price b{font-size:23px;font-weight:700;color:var(--slate);letter-spacing:-.02em}

.svc-price span{font-size:12px;color:var(--muted);font-weight:500}

.svc-book{display:inline-flex;align-items:center;gap:8px;font-family:inherit;font-size:13.5px;font-weight:700;color:#fff;background:var(--green);border:none;border-radius:var(--radius-md);padding:12px 18px;cursor:pointer;transition:.2s var(--ease);white-space:nowrap}

.svc-book:hover{background:var(--green-deep)}


/* ---- İLGİLİ TARİFLER grid (rr-grid; r-card MİRAS base'de) ---- */
.rr-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}


/* ---- YORUMLAR (danışan yorumları) ---- */
.rev-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:30px;align-items:start}

.rev-summary{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);padding:24px 22px;position:sticky;top:180px}

.rev-big{text-align:center;padding-bottom:18px;border-bottom:1px solid var(--line);margin-bottom:16px}

.rev-big b{display:block;font-size:46px;font-weight:700;color:var(--slate);letter-spacing:-.03em;line-height:1}

.rev-stars{color:var(--yellow);font-size:15px;margin:9px 0 6px}

.rev-big span{font-size:12.5px;color:var(--muted);font-weight:500}

.rs-bars{display:flex;flex-direction:column;gap:9px}

.rs-bar{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--muted);font-weight:600}

.rs-bar .rl{flex:none;width:30px;display:inline-flex;align-items:center;gap:3px}

.rs-bar .rl i{color:var(--yellow);font-size:10px}

.rs-track{flex:1;height:7px;border-radius:var(--radius-sm);background:var(--bg);overflow:hidden}

.rs-fill{height:100%;border-radius:var(--radius-sm);background:var(--yellow)}

.rs-bar .rn{flex:none;width:30px;text-align:right}

.rev-main{min-width:0}

.rev-filter{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}

.rev-filter .chip.active{border-color:var(--green);color:var(--green-deep);background:rgba(59,183,126,.13);font-weight:700}

.rev-list{display:flex;flex-direction:column;gap:16px}

.rev-item{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);padding:20px 22px}

.rev-top{display:flex;align-items:center;gap:13px;margin-bottom:12px}

.rev-av{flex:none;width:44px;height:44px;border-radius:var(--radius-circle);background-size:cover;background-position:center}

.rev-who{min-width:0;flex:1}

.rev-who b{font-size:14.5px;color:var(--slate);display:flex;align-items:center;gap:8px;flex-wrap:wrap}

.rev-badge{font-size:10px;font-weight:700;color:var(--green-deep);background:rgba(59,183,126,.12);padding:3px 8px;border-radius:var(--radius-sm);display:inline-flex;align-items:center;gap:5px}

.rev-who span{font-size:12px;color:var(--muted);font-weight:500}

.rev-rate{flex:none;color:var(--yellow);font-size:13px;letter-spacing:1px}

.rev-text{font-size:14px;color:var(--slate-2);font-weight:500;line-height:1.65}

.rev-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:13px}

.rev-tag{font-size:11.5px;font-weight:600;color:var(--slate-2);background:var(--bg);border:1px solid var(--line);padding:5px 10px;border-radius:var(--radius-sm)}

.rev-foot{display:flex;align-items:center;gap:18px;margin-top:14px;padding-top:13px;border-top:1px solid var(--line)}

.rev-help{display:inline-flex;align-items:center;gap:8px;font-family:inherit;font-size:12.5px;font-weight:600;color:var(--muted);background:none;border:none;cursor:pointer;transition:.18s}

.rev-help:hover{color:var(--green)}

/* R19/A15 · dokunma hedefi — düğmenin görsel yazısı 12.5px kalır, tıklama
   kutusu kitin 44px kapısına çıkar (kit §5/§6/§10 ile aynı yöntem). */
button.rev-help{min-height:44px}

/* K16 · "Faydalı" artık gerçek bir sayaç (dm_fit_faydali_v1) — basılı
   durum dolu ikonla ve aynı yeşille işaretlenir, tekrar basınca geri alınır. */
button.rev-help.is-voted{color:var(--green)}

.rev-reply{font-size:13px;color:var(--slate-2);font-weight:500;line-height:1.6;margin-top:13px;padding:14px 16px;background:rgba(59,183,126,.06);border:1px solid rgba(59,183,126,.18);border-radius:var(--radius-md)}

.rev-reply b{color:var(--green-deep);display:inline-flex;align-items:center;gap:7px;font-size:12.5px;margin-bottom:5px}

.rev-more{display:flex;justify-content:center;margin-top:22px}


/* ---- RANDEVU MODALI (slot seçici) — diyetisyen-profil VERBATIM ---- */
.apt-overlay{position:fixed;inset:0;background:rgba(20,18,12,.5);z-index:97;opacity:0;visibility:hidden;transition:opacity .25s var(--ease),visibility .25s}

.apt-overlay.show{opacity:1;visibility:visible}

.apt-modal{position:fixed;inset:0;z-index:98;display:grid;place-items:center;padding:20px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .25s var(--ease),visibility .25s}

.apt-modal.show{opacity:1;visibility:visible;pointer-events:auto}

.apt-panel{width:min(580px,100%);max-height:calc(100vh - 40px);overflow-y:auto;background:#fff;border-radius:var(--radius-lg);box-shadow:var(--sh-lg);transform:translateY(14px);transition:transform .3s var(--ease)}

.apt-modal.show .apt-panel{transform:translateY(0)}

.apt-head{display:flex;align-items:center;gap:14px;padding:20px 24px;border-bottom:1px solid var(--line)}

.apt-av{flex:none;width:46px;height:46px;border-radius:var(--radius-circle);background-size:cover;background-position:center}

.apt-head h3{font-size:18px}

.apt-head p{font-size:12.5px;color:var(--muted);font-weight:500;margin-top:2px;display:inline-flex;align-items:center;gap:6px}

.apt-head p i{color:var(--green-deep)}

.apt-close{margin-left:auto;flex:none;width:40px;height:40px;border-radius:var(--radius-md);border:1px solid var(--line);background:var(--paper);color:var(--slate);font-size:16px;cursor:pointer;display:grid;place-items:center;transition:.2s var(--ease)}

.apt-close:hover{border-color:var(--green);color:var(--green)}

.apt-body{padding:22px 24px 24px}

.apt-block+.apt-block{margin-top:22px}

.apt-lbl{font-size:13px;font-weight:700;color:var(--slate);margin-bottom:11px;display:flex;align-items:center;gap:8px}

.apt-lbl i{color:var(--green);font-size:12px}

.apt-svc{display:flex;flex-direction:column;gap:8px}

.apt-svc label{position:relative;display:flex;align-items:center;gap:12px;padding:13px 15px;border:1px solid var(--line);border-radius:var(--radius-md);cursor:pointer;transition:.18s var(--ease)}

.apt-svc input{position:absolute;opacity:0;pointer-events:none}

.apt-svc label:hover{border-color:var(--green)}

.apt-svc .rd{flex:none;width:20px;height:20px;border-radius:var(--radius-circle);border:1.5px solid #d8d8d8;display:grid;place-items:center;transition:.18s}

.apt-svc .rd::after{content:"";width:10px;height:10px;border-radius:var(--radius-circle);background:var(--green);transform:scale(0);transition:.18s}

.apt-svc input:checked~.rd{border-color:var(--green)}

.apt-svc input:checked~.rd::after{transform:scale(1)}

.apt-svc input:checked~.si b{color:var(--green-deep)}

.apt-svc label:has(input:checked){border-color:var(--green);background:rgba(59,183,126,.10)}

.apt-svc .si{flex:1;min-width:0}

.apt-svc .si b{font-size:14px;font-weight:700;color:var(--slate);display:block}

.apt-svc .si span{font-size:12px;color:var(--muted);font-weight:500}

.apt-svc .sp{flex:none;font-size:14px;font-weight:700;color:var(--slate)}

.apt-days{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding-bottom:4px}

.apt-days::-webkit-scrollbar{display:none}

.apt-day{flex:none;min-width:66px;text-align:center;padding:11px 8px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--paper);cursor:pointer;font-family:inherit;transition:.18s var(--ease)}

.apt-day span{display:block;font-size:11px;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.03em}

.apt-day b{display:block;font-size:18px;color:var(--slate);font-weight:700;margin-top:3px}

.apt-day small{display:block;font-size:10px;color:var(--green-deep);font-weight:600;margin-top:3px}

.apt-day:hover{border-color:var(--green)}

.apt-day.sel{border-color:var(--green);background:var(--green)}

.apt-day.sel span,.apt-day.sel b,.apt-day.sel small{color:#fff}

.apt-day.off{opacity:.4;pointer-events:none}

.apt-slots{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}

.apt-slot{padding:11px 0;text-align:center;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--paper);cursor:pointer;font-family:inherit;font-size:13.5px;font-weight:700;color:var(--slate);transition:.18s var(--ease)}

.apt-slot:hover{border-color:var(--green);color:var(--green)}

.apt-slot.sel{border-color:var(--green);background:var(--green);color:#fff}

.apt-slot.off{opacity:.4;pointer-events:none;text-decoration:line-through}

.apt-foot{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:24px;padding-top:18px;border-top:1px solid var(--line)}

.apt-sum{font-size:12px;color:var(--muted);font-weight:500}

.apt-sum b{display:block;font-size:15px;color:var(--slate);font-weight:700;margin-top:2px}

.apt-confirm{flex:none}

.apt-success{text-align:center;padding:22px 0 10px}

.apt-success .ok{width:64px;height:64px;border-radius:var(--radius-circle);background:#EAF7F0;color:var(--green);display:grid;place-items:center;font-size:27px;margin:0 auto 16px}

.apt-success h4{font-size:19px;margin-bottom:8px}

.apt-success p{font-size:13.5px;color:var(--muted);font-weight:500;max-width:380px;margin:0 auto;line-height:1.6}

/* sağlık-modülü birincil CTA'ları (randevu onay + uzmana mesaj) = yeşil */
.apt-confirm.btn-primary,#msgSend.btn-primary{background:var(--green)}

.apt-confirm.btn-primary:hover,#msgSend.btn-primary:hover{background:var(--green-deep)}


/* ---- PRO TARİF BANDI (diyetisyen tarifler sekmesinde teaser) — VERBATIM ---- */
.pf-pro-band{align-items:center;gap:16px;background:linear-gradient(120deg,#FBE9E3 0%,#FFF6F2 60%,#fff 100%);border:1px solid #F3D6CC;border-radius:var(--radius-lg);padding:18px 22px;margin-bottom:22px;cursor:pointer;transition:.2s var(--ease)}

.pf-pro-band:hover{border-color:var(--fit);transform:translateY(-2px);box-shadow:0 10px 26px rgba(225,72,39,.10)}

.pf-pro-ico{width:48px;height:48px;flex:none;border-radius:var(--radius-md);background:var(--fit);color:#fff;display:grid;place-items:center;font-size:20px;box-shadow:0 6px 16px rgba(225,72,39,.28)}

.pf-pro-tt{flex:1;min-width:0}

.pf-pro-tt b{display:block;font-size:15.5px;color:var(--slate);font-weight:800;letter-spacing:-.01em}

.pf-pro-tt b .pf-pro-tag{display:inline-flex;align-items:center;gap:5px;font-size:10.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--fit);background:#fff;border:1px solid #F3D6CC;padding:3px 9px;border-radius:var(--radius-pill);margin-left:8px;vertical-align:middle}

.pf-pro-tt span{display:block;font-size:13px;color:var(--muted);font-weight:500;margin-top:3px;line-height:1.5}

.pf-pro-cta{flex:none;display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:#fff;background:var(--fit);border-radius:var(--radius-md);padding:11px 18px;white-space:nowrap;transition:.2s var(--ease)}

.pf-pro-band:hover .pf-pro-cta{background:var(--fit-deep)}

@media(max-width:680px){.pf-pro-band{flex-wrap:wrap}
.pf-pro-cta{width:100%;justify-content:center}
}


/* ---- responsive (diyetisyen pane'leri) ---- */
@media(max-width:1024px){
  .ab-grid{grid-template-columns:1fr}

  .ab-side{position:static}

  .ab-approach{grid-template-columns:1fr}

  .svc-grid{grid-template-columns:1fr 1fr}

  .rr-grid{grid-template-columns:1fr 1fr}

  .rev-layout{grid-template-columns:1fr}

  .rev-summary{position:static}
}

@media(max-width:640px){
  .svc-grid,.rr-grid{grid-template-columns:1fr}

  .ab-main h2{font-size:19px}

  .apt-slots{grid-template-columns:repeat(3,1fr)}
}


/* ============================================================
 C2-1b — ANTRENÖR ROL KATMANI (tek profil-v1 · body[data-roles~="antrenor"])
 Pattern: C2-1a diyetisyen katmanı İKİZİ (pf-rl-at gate + --c-green #009d4f aksan).
 Kaynak: antrenor-detay-v1.html (cp- dark DadaFit hero → pf- LIGHT slot RE-SKIN;
 cp- CSS PORT EDİLMEZ, mevcut pf- hero slot'larına gated içerik biner).
 data-cap KULLANILMAZ. Diyetisyen (pf-rl-dyt) BOZULMAZ — ayrı id/pane/gate; nane
 --green (#3BB77E) SIZMAZ (pane-içi shared aksan .pf-at-pane / #atApt* ile override).
 ============================================================ */
/* ---- görünürlük geçidi ---- */
.pf-rl-at{display:none !important}

body[data-roles~="antrenor"] .pf-verify.pf-rl-at{display:inline-flex !important}

body[data-roles~="antrenor"] .pf-handle-at.pf-rl-at{display:block !important}

body[data-roles~="antrenor"] .pf-on.pf-rl-at{display:block !important}

/* avatar köşesi: TEK temiz yeşil müsaitlik noktası → kök kamera affordance gizle (diyetisyen dersi) */
body[data-roles~="antrenor"] .pf-ava .pf-ava-edit{display:none !important}

body[data-roles~="antrenor"] .pf-ava .pf-on{z-index:3}

/* ZİYARETÇİ CTA'ları (fiyat/Randevu/Danışan/Mesaj/yanıt) yalnız PUBLIC modda — operatör kendi
 profilinde kendine randevu/danışan olamaz. Own'da kök 'Profili Düzenle' (pf-act-own) gösterilir. */
body.pf-public[data-roles~="antrenor"] .pf-price.pf-rl-at{display:flex !important}

body.pf-public[data-roles~="antrenor"] .pf-book.pf-rl-at{display:inline-flex !important}

body.pf-public[data-roles~="antrenor"] .pf-client.pf-rl-at{display:inline-flex !important}

body.pf-public[data-roles~="antrenor"] .pf-msg.pf-rl-at{display:inline-flex !important}

body.pf-public[data-roles~="antrenor"] .pf-resp.pf-rl-at{display:flex !important}

/* kimlik/stats = her iki modda (own+public) */
body[data-roles~="antrenor"] .pf-stats.pf-rl-at{display:flex !important}

body[data-roles~="antrenor"] .dt.pf-rl-at{display:inline-flex !important}

/* antrenör modunda kök sayaç şeridini gizle (profesyonel şerit devralır) */
body[data-roles~="antrenor"] .pf-stats-kok{display:none !important}

/* aksiyon kolonu (dikey; diyetisyen ikizi) — share gizli (P7: "Üye Ol" söküldü) */
body[data-roles~="antrenor"] .pf-actions{flex-direction:column;align-items:stretch;width:200px}

body[data-roles~="antrenor"] .pf-actions .icon-btn{display:none !important}

@media(max-width:640px){body[data-roles~="antrenor"] .pf-actions{width:100%}
}

/* TÜM butonlar AYNI box anatomisi (yamukluk gider; pf-client dahil) */
body[data-roles~="antrenor"] .pf-actions > .pf-book,
body[data-roles~="antrenor"] .pf-actions > .pf-client,
body[data-roles~="antrenor"] .pf-actions > .pf-follow,
body[data-roles~="antrenor"] .pf-actions > .pf-msg,
body[data-roles~="antrenor"] .pf-actions > .pf-edit-btn{
  align-items:center;justify-content:center;gap:9px;width:100%;box-sizing:border-box;
  padding:13px 20px;font-size:13.5px;line-height:1.25;border-radius:var(--radius-md);white-space:nowrap;
}

/* yeşil aksan = --c-green; diyetisyen nane base'lerini override (sızma yok) */
body[data-roles~="antrenor"] .pf-ava .pf-on{background:var(--c-green)}

body[data-roles~="antrenor"] .pf-verify{color:var(--c-green-deep);background:var(--c-green-tint)}

body[data-roles~="antrenor"] .pf-book{background:var(--c-green);border-color:var(--c-green)}

body[data-roles~="antrenor"] .pf-book:hover{background:var(--c-green-deep)}

body[data-roles~="antrenor"] .pf-msg:hover{border-color:var(--c-green);color:var(--c-green)}

body[data-roles~="antrenor"] .pf-resp{color:var(--c-green-deep)}

body[data-roles~="antrenor"] .pfs.green i{background:var(--c-green-tint);color:var(--c-green-deep)}

body[data-roles~="antrenor"] .pf-follow{background:var(--c-green);border-color:var(--c-green)}

body[data-roles~="antrenor"] .pf-follow:hover{background:var(--c-green-deep);border-color:var(--c-green-deep)}

body[data-roles~="antrenor"] .pf-follow.following:hover{border-color:var(--c-green);color:var(--c-green);background:var(--c-green-tint)}


/* ---- rol etiketi (pf-handle-dyt ikizi — yeşil ünvan) ---- */
.pf-handle-at{font-size:13.5px;color:var(--c-green-deep);font-weight:700;margin-top:4px}

/* ---- Danışan Ol (ikincil yeşil; Randevu Al filled ile dengeli) ---- */
.pf-client{align-items:center;justify-content:center;gap:9px;font-family:inherit;font-size:13.5px;font-weight:700;color:var(--c-green-deep);background:var(--c-green-tint);border:1px solid var(--c-green);border-radius:var(--radius-md);padding:12px 16px;cursor:pointer;transition:.2s var(--ease)}

.pf-client:hover{background:var(--c-green);color:#fff}

/* ---- fiyat satırı (₺/seans) ---- */
.pf-price{align-items:baseline;justify-content:center;gap:7px;margin-bottom:3px}

.pf-price b{font-size:23px;font-weight:800;color:var(--slate);letter-spacing:-.01em}

.pf-price span{font-size:12.5px;color:var(--muted);font-weight:500}


/* ---- PROGRAMLAR (prog-* antrenör-unique; cp dark → pf light, --fit→--c-green) ---- */
.prog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}

.prog-media{position:relative;aspect-ratio:16/10;background-size:cover;background-position:center;padding:13px;display:flex;align-items:flex-start;gap:7px}

.prog-media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,18,12,0) 38%,rgba(20,18,12,.74));z-index:0}

.prog-level,.prog-dur{position:relative;z-index:1;display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:700;color:#fff;background:rgba(20,18,12,.42);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);padding:5px 10px;border-radius:var(--radius-sm)}

.prog-level i,.prog-dur i{color:#fff;font-size:10px}

.prog-title{position:absolute;left:14px;right:14px;bottom:13px;z-index:1;color:#fff;font-size:16px;line-height:1.25;margin:0}

.prog-body{display:flex;flex-direction:column;flex:1;padding:16px 18px 18px}

.prog-body p{font-size:13px;color:var(--muted);font-weight:500;line-height:1.55;margin-bottom:14px}

.prog-feats{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:16px}

.prog-feats span{font-size:11.5px;font-weight:600;color:var(--slate-2);background:var(--bg);border:1px solid var(--line);padding:5px 10px;border-radius:var(--radius-sm)}

.prog-foot{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:14px;border-top:1px solid var(--line)}

.prog-foot .price{font-size:12.5px;color:var(--muted);font-weight:500}

.prog-foot .price b{font-size:17px;color:var(--slate);font-weight:700;margin-left:4px}

.prog-foot .go{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;font-weight:700;color:var(--c-green-deep);white-space:nowrap;transition:.2s var(--ease)}

.prog-card:hover .go{gap:10px}


/* ---- ALT CTA BANDI (cp-cta-band → pf-atband; LIGHT, yeşil) ---- */
.pf-atband{display:none;align-items:center;justify-content:space-between;gap:30px;background:linear-gradient(120deg,#E7F6EF 0%,#F1FAF5 58%,#fff 100%);border:1px solid var(--c-green-soft);border-radius:var(--radius-lg);padding:30px 34px;margin-top:30px}

body.pf-public[data-roles~="antrenor"] .pf-atband.pf-rl-at{display:flex !important}
  /* ziyaretçi dönüşüm bandı yalnız PUBLIC */
.pf-atband .cb-eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--c-green-deep);margin-bottom:10px}

.pf-atband h2{font-size:23px;margin-bottom:8px}

.pf-atband .cb-copy p{font-size:14px;color:var(--slate-2);font-weight:500;line-height:1.6;max-width:520px;margin:0}

.pf-atband .cb-act{flex:none;display:flex;flex-direction:column;gap:10px;min-width:212px}

.pf-atband .cb-act .pf-client,.pf-atband .cb-act .pf-msg{display:inline-flex;width:100%;padding:13px 20px;box-sizing:border-box}

.pf-atband .cb-note{display:inline-flex;align-items:center;gap:8px;font-size:11.5px;color:var(--muted);font-weight:500;margin-top:2px}

.pf-atband .cb-note i{color:var(--c-green-deep)}

@media(max-width:860px){.pf-atband{flex-direction:column;align-items:flex-start}
.pf-atband .cb-act{width:100%}
}


/* ---- antrenör pane-içi aksan: shared ab-/rev- nane → --c-green (PANE-SCOPED, diyetisyen'e SIZMAZ) ---- */
.pf-at-pane .ap-item i{background:var(--c-green-tint);color:var(--c-green-deep)}

.pf-at-pane .info-card h4 i{color:var(--c-green)}

.pf-at-pane .ic-verify{color:var(--c-green-deep);background:var(--c-green-tint)}

.pf-at-pane .ab-spec .chip:hover{border-color:var(--c-green);color:var(--c-green-deep);background:var(--c-green-tint)}

.pf-at-pane .rev-filter .chip.active{border-color:var(--c-green);color:var(--c-green-deep);background:var(--c-green-tint)}

.pf-at-pane .rev-badge{color:var(--c-green-deep);background:var(--c-green-tint)}

.pf-at-pane .rev-help:hover{color:var(--c-green)}
.pf-at-pane button.rev-help.is-voted{color:var(--c-green)}

.pf-at-pane .rev-reply{background:var(--c-green-tint);border-color:var(--c-green-soft)}

.pf-at-pane .rev-reply b{color:var(--c-green-deep)}

.pf-at-pane .sec-head .eyebrow,.pf-at-pane .see-all{color:var(--c-green-deep)}


/* ---- antrenör MODALLARI (#atApt*/#atMsg*): apt-* shared CSS nane → --c-green override (SCOPED) ---- */
#atAptModal .apt-close:hover,#atMsgModal .apt-close:hover{border-color:var(--c-green);color:var(--c-green)}

#atAptModal .apt-lbl i,#atMsgModal .apt-lbl i{color:var(--c-green)}

#atAptModal .apt-head p i,#atMsgModal .apt-head p i{color:var(--c-green-deep)}

#atAptModal .apt-svc label:hover{border-color:var(--c-green)}

#atAptModal .apt-svc .rd::after{background:var(--c-green)}

#atAptModal .apt-svc input:checked~.rd{border-color:var(--c-green)}

#atAptModal .apt-svc input:checked~.si b{color:var(--c-green-deep)}

#atAptModal .apt-svc label:has(input:checked){border-color:var(--c-green);background:var(--c-green-tint)}

#atAptModal .apt-day small{color:var(--c-green-deep)}

#atAptModal .apt-day:hover,#atAptModal .apt-slot:hover{border-color:var(--c-green)}

#atAptModal .apt-slot:hover{color:var(--c-green)}

#atAptModal .apt-day.sel,#atAptModal .apt-slot.sel{border-color:var(--c-green);background:var(--c-green)}

#atAptModal .apt-success .ok{background:var(--c-green-tint);color:var(--c-green)}

body[data-roles~="antrenor"] .apt-confirm.btn-primary{background:var(--c-green)}

body[data-roles~="antrenor"] .apt-confirm.btn-primary:hover{background:var(--c-green-deep)}

#atMsgSend.btn-primary{background:var(--c-green)}

#atMsgSend.btn-primary:hover{background:var(--c-green-deep)}

@media(max-width:1024px){.prog-grid{grid-template-columns:1fr 1fr}
}

@media(max-width:640px){.prog-grid{grid-template-columns:1fr}
}


/* ============================================================
 C2-1c — İŞLETME ROL KATMANI + SAHİP→PANEL KÖPRÜSÜ (pf-panel)
 İşletme = petrol (--c-petrol #006072). Köprü = 3 operatör, yalnız OWN mod.
 pf-rl-isl distinkt izolasyon (dyt/at gibi). own↔public CTA dersi korunur:
 ziyaretçi CTA (Mekanı Gör/Mesaj/Takip) yalnız public; yönetim (Profili/Panelden
 Düzenle) yalnız own. Diyetisyen/antrenör BOZULMAZ.
 ============================================================ */
.pf-rl-isl{display:none !important}

body[data-roles~="isletme"] .pf-verify.pf-rl-isl{display:inline-flex !important}

body[data-roles~="isletme"] .pf-handle-isl.pf-rl-isl{display:block !important}

/* ziyaretçi CTA yalnız PUBLIC (own↔public dersi) */
body.pf-public[data-roles~="isletme"] .pf-venue.pf-rl-isl{display:inline-flex !important}

body.pf-public[data-roles~="isletme"] .pf-msg.pf-rl-isl{display:inline-flex !important}

/* aksiyon kolonu (dikey; operatör ikizi) — share gizli (P7: "Üye Ol" söküldü) */
body[data-roles~="isletme"] .pf-actions{flex-direction:column;align-items:stretch;width:200px}

body[data-roles~="isletme"] .pf-actions .icon-btn{display:none !important}

@media(max-width:640px){body[data-roles~="isletme"] .pf-actions{width:100%}
}

body[data-roles~="isletme"] .pf-actions > .pf-venue,
body[data-roles~="isletme"] .pf-actions > .pf-follow,
body[data-roles~="isletme"] .pf-actions > .pf-msg,
body[data-roles~="isletme"] .pf-actions > .pf-edit-btn,
body[data-roles~="isletme"] .pf-actions > .pf-panel{
  align-items:center;justify-content:center;gap:9px;width:100%;box-sizing:border-box;
  padding:13px 20px;font-size:13.5px;line-height:1.25;border-radius:var(--radius-md);white-space:nowrap;
}

/* petrol aksan — --green/--c-green SIZMAZ */
body[data-roles~="isletme"] .pf-verify{color:var(--c-petrol);background:var(--c-petrol-tint)}

body[data-roles~="isletme"] .pf-follow{background:var(--c-petrol);border-color:var(--c-petrol)}

body[data-roles~="isletme"] .pf-follow:hover{background:var(--c-petrol-deep);border-color:var(--c-petrol-deep)}

body[data-roles~="isletme"] .pf-follow.following:hover{border-color:var(--c-petrol);color:var(--c-petrol);background:var(--c-petrol-tint)}

body[data-roles~="isletme"] .pf-msg:hover{border-color:var(--c-petrol);color:var(--c-petrol)}

/* rol etiketi (petrol ünvan) */
.pf-handle-isl{font-size:13.5px;color:var(--c-petrol);font-weight:700;margin-top:4px}

/* Mekanı Gör (petrol birincil link-buton) */
.pf-venue{align-items:center;justify-content:center;gap:9px;font-family:inherit;font-size:14px;font-weight:700;color:#fff;background:var(--c-petrol);border:1px solid var(--c-petrol);border-radius:var(--radius-md);padding:14px 22px;cursor:pointer;transition:.2s var(--ease);white-space:nowrap}

.pf-venue:hover{background:var(--c-petrol-deep);transform:translateY(-2px)}


/* ---- SAHİP→PANEL KÖPRÜSÜ (pf-panel pill; 3 operatör, yalnız OWN) ---- */
/* base .pf-panel CSS zaten var (yeşil dashed); rol gate + own-mod + rol rengi */
body:not(.pf-public)[data-roles~="diyetisyen"] .pf-panel.pf-rl-dyt{display:inline-flex !important}

body:not(.pf-public)[data-roles~="antrenor"]  .pf-panel.pf-rl-at{display:inline-flex !important}

body:not(.pf-public)[data-roles~="isletme"]   .pf-panel.pf-rl-isl{display:inline-flex !important}

body[data-roles~="antrenor"] .pf-panel{color:var(--c-green-deep);background:var(--c-green-tint);border-color:var(--c-green)}

body[data-roles~="antrenor"] .pf-panel:hover{background:var(--c-green);color:#fff;border-color:var(--c-green)}

body[data-roles~="isletme"]  .pf-panel{color:var(--c-petrol);background:var(--c-petrol-tint);border-color:var(--c-petrol)}

body[data-roles~="isletme"]  .pf-panel:hover{background:var(--c-petrol);color:#fff;border-color:var(--c-petrol)}

/* operatör own kolonunda pf-panel uniform (dyt/at; isl yukarıda) */
body[data-roles~="diyetisyen"] .pf-actions > .pf-panel,
body[data-roles~="antrenor"] .pf-actions > .pf-panel{
  align-items:center;justify-content:center;gap:9px;width:100%;box-sizing:border-box;
  padding:13px 20px;font-size:13.5px;line-height:1.25;border-radius:var(--radius-md);white-space:nowrap;
}


/* ---- işletme MESAJ MODALI (#islMsgModal; apt-* paylaşılır, petrol scoped) ---- */
#islMsgModal .apt-close:hover{border-color:var(--c-petrol);color:var(--c-petrol)}

#islMsgModal .apt-lbl i{color:var(--c-petrol)}

#islMsgModal .apt-head p i{color:var(--c-petrol)}

#islMsgModal .apt-success .ok{background:var(--c-petrol-tint);color:var(--c-petrol)}

#islMsgSend.btn-primary{background:var(--c-petrol)}

#islMsgSend.btn-primary:hover{background:var(--c-petrol-deep)}
