/* =========================================================
   PRICE LIST — comprehensive redesign
   Loaded after style.css + static.css; scoped to price-list.
   Palette locked: gold #d6a12e / black / white / WhatsApp green.
   Concept: a price list presented as a personal clinical
   "estimate" + a menu of treatments. Numbered markers appear
   only where order is real (the 3-step process).
   ========================================================= */

.pl-au { color: var(--gold); }

/* --- Shared eyebrow (Roboto utility face) --- */
.pl-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 16px;
  font-family: "Roboto", system-ui, sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 2.6px;
  text-transform: uppercase;
  color: var(--gold-dark);
}
.pl-eyebrow::before {
  content: "";
  width: 26px;
  height: 2px;
  background: var(--gold);
}

/* =========================================================
   1. INTRO — statement + personal-estimate signature
   ========================================================= */
.pl-intro { background: var(--white); padding: clamp(48px, 6vw, 84px) 0 clamp(40px, 5vw, 64px); }
.pl-intro-grid {
  display: grid;
  grid-template-columns: 1.05fr .95fr;
  gap: clamp(32px, 5vw, 72px);
  align-items: center;
}
.pl-intro-copy h2 {
  margin: 0 0 18px;
  max-width: 16ch;
  font-size: clamp(30px, 4vw, 50px);
  font-weight: 900;
  line-height: 1.08;
  letter-spacing: -.5px;
  color: var(--dark-2);
}
.pl-lead {
  margin: 0 0 30px;
  max-width: 54ch;
  color: var(--gray);
  font-size: 17px;
  line-height: 1.75;
}
.pl-intro-actions { display: flex; align-items: center; gap: 22px; flex-wrap: wrap; }
.pl-textlink {
  font-weight: 800;
  color: var(--dark-2);
  border-bottom: 2px solid var(--gold);
  padding-bottom: 2px;
  transition: color .2s ease;
}
.pl-textlink span { color: var(--gold); display: inline-block; transition: transform .2s ease; }
.pl-textlink:hover { color: var(--gold-dark); text-decoration: none; }
.pl-textlink:hover span { transform: translateX(4px); }

/* --- Signature: personal treatment estimate --- */
.pl-estimate {
  margin: 0;
  background:
    linear-gradient(rgba(214, 161, 46, .05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(214, 161, 46, .05) 1px, transparent 1px),
    #0b0b0c;
  background-size: 40px 40px, 40px 40px, auto;
  border: 1px solid rgba(214, 161, 46, .34);
  border-radius: 16px;
  box-shadow: 0 34px 70px rgba(15, 15, 15, .28);
  padding: clamp(22px, 2.4vw, 32px);
  color: var(--white);
}
.pl-estimate-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding-bottom: 18px;
  border-bottom: 1px dashed rgba(255, 255, 255, .16);
}
.pl-estimate-brand { font-weight: 800; font-size: 15px; color: #fff; }
.pl-estimate-tag {
  font-family: "Roboto", system-ui, sans-serif;
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--black);
  background: var(--gold);
  padding: 5px 10px;
  border-radius: 100px;
}
.pl-estimate-rows { list-style: none; margin: 0; padding: 6px 0 0; }
.pl-estimate-rows li {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 15px 0;
  border-bottom: 1px solid rgba(255, 255, 255, .08);
}
.pl-estimate-item { font-size: 15px; color: rgba(255, 255, 255, .82); }
.pl-estimate-amt {
  margin-left: auto;
  flex: none;
  width: 64px;
  height: 12px;
  border-radius: 3px;
  background: repeating-linear-gradient(45deg, rgba(214, 161, 46, .9) 0 3px, transparent 3px 6px);
}
.pl-estimate-total {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
  margin-top: 18px;
  padding-top: 18px;
  border-top: 1px dashed rgba(255, 255, 255, .16);
}
.pl-estimate-total-label {
  font-family: "Roboto", system-ui, sans-serif;
  font-weight: 700;
  font-size: 13px;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: var(--gold-light);
}
.pl-estimate-total-note { font-size: 13px; color: rgba(255, 255, 255, .55); font-style: italic; }

/* --- 3-step process (numbers justified: this IS a sequence) --- */
.pl-steps {
  list-style: none;
  margin: clamp(44px, 5vw, 68px) 0 0;
  padding: clamp(36px, 4vw, 44px) 0 0;
  border-top: 1px solid rgba(0, 0, 0, .1);
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(24px, 3vw, 44px);
}
.pl-step-no {
  display: block;
  font-family: "Roboto", system-ui, sans-serif;
  font-size: 15px;
  font-weight: 700;
  letter-spacing: 1px;
  color: var(--gold);
}
.pl-step-no::after {
  content: "";
  display: block;
  width: 34px;
  height: 2px;
  margin-top: 12px;
  background: var(--gold);
  opacity: .5;
}
.pl-steps h3 { margin: 16px 0 8px; font-size: 19px; font-weight: 800; color: var(--dark-2); }
.pl-steps p { margin: 0; color: var(--gray); font-size: 15.5px; line-height: 1.7; }

/* =========================================================
   2. FACTORS — sticky intro + clean accordion (no decorative numbers)
   ========================================================= */
.pl-factors { background: var(--off-white); padding: clamp(52px, 6vw, 80px) 0; }
.pl-factors-grid {
  display: grid;
  grid-template-columns: .9fr 1.35fr;
  gap: clamp(36px, 5vw, 84px);
  align-items: start;
}
.pl-factors-head { position: sticky; top: 110px; }
.pl-factors-head h2 { margin: 0 0 16px; font-size: clamp(26px, 3vw, 38px); font-weight: 900; line-height: 1.15; color: var(--dark-2); }
.pl-factors-head p { margin: 0 0 22px; color: var(--gray); font-size: 16.5px; line-height: 1.75; }
.pl-factors-head strong { color: var(--dark-2); }

.pl-acc details {
  background: var(--white);
  border: 1px solid rgba(0, 0, 0, .08);
  border-radius: 12px;
  margin-bottom: 12px;
  transition: border-color .2s ease, box-shadow .2s ease;
}
.pl-acc details[open] { border-color: rgba(214, 161, 46, .5); box-shadow: 0 16px 34px rgba(20, 20, 20, .08); }
.pl-acc summary {
  position: relative;
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 20px 54px 20px 22px;
  cursor: pointer;
  list-style: none;
}
.pl-acc summary::-webkit-details-marker { display: none; }
.pl-acc summary h3 { margin: 0; font-size: clamp(16px, 1.5vw, 19px); font-weight: 800; color: var(--dark-2); transition: color .2s ease; }
.pl-acc summary:hover h3 { color: var(--gold-dark); }
.pl-acc summary::after {
  content: "";
  position: absolute;
  right: 22px;
  top: 50%;
  width: 13px;
  height: 13px;
  transform: translateY(-50%);
  background:
    linear-gradient(var(--gold), var(--gold)) center/13px 2px no-repeat,
    linear-gradient(var(--gold), var(--gold)) center/2px 13px no-repeat;
  transition: transform .25s ease;
}
.pl-acc details[open] summary::after { transform: translateY(-50%) rotate(135deg); }
.pl-acc .pl-a { padding: 0 22px 22px; }
.pl-acc .pl-a p { margin: 0 0 12px; color: rgba(0, 0, 0, .72); font-size: 15.5px; line-height: 1.8; }
.pl-acc .pl-a p:last-child { margin-bottom: 0; }
.pl-acc .pl-a strong { color: var(--dark-2); }

/* =========================================================
   3. TREATMENT INDEX — the "menu" (dotted leaders, no sequence numbers)
   ========================================================= */
.pl-treat { background: var(--white); padding: clamp(52px, 6vw, 84px) 0; }
.pl-treat-head { text-align: center; max-width: 640px; margin: 0 auto clamp(30px, 4vw, 44px); }
.pl-treat-head .pl-eyebrow { justify-content: center; }
.pl-treat-head h2 { margin: 0 0 12px; font-size: clamp(28px, 3.4vw, 42px); font-weight: 900; color: var(--dark-2); }
.pl-treat-head p { margin: 0; color: var(--gray); font-size: 16px; line-height: 1.7; }

.pl-index {
  list-style: none;
  margin: 0 auto clamp(32px, 4vw, 40px);
  padding: 0;
  max-width: 900px;
  border-top: 1px solid rgba(0, 0, 0, .1);
}
.pl-index li { border-bottom: 1px solid rgba(0, 0, 0, .1); }
.pl-index a {
  display: flex;
  align-items: baseline;
  gap: 8px;
  padding: 20px 8px;
  color: var(--dark-2);
  transition: padding .25s ease, color .2s ease;
}
.pl-index-name { flex: none; font-size: clamp(17px, 1.8vw, 21px); font-weight: 800; }
.pl-index-dots { flex: 1; align-self: center; height: 0; border-bottom: 1px dotted rgba(0, 0, 0, .28); margin: 0 6px; }
.pl-index-cta {
  flex: none;
  font-family: "Roboto", system-ui, sans-serif;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: var(--gray-light);
  transition: color .2s ease;
}
.pl-index-cta span { color: var(--gold); display: inline-block; transition: transform .2s ease; }
.pl-index a:hover { color: var(--gold-dark); padding-left: 16px; text-decoration: none; }
.pl-index a:hover .pl-index-cta { color: var(--gold-dark); }
.pl-index a:hover .pl-index-cta span { transform: translateX(5px); }

/* =========================================================
   Responsive
   ========================================================= */
@media (max-width: 980px) {
  .pl-intro-grid { grid-template-columns: 1fr; }
  .pl-estimate { max-width: 460px; margin: 0 auto; }
}
@media (max-width: 900px) {
  .pl-factors-grid { grid-template-columns: 1fr; }
  .pl-factors-head { position: static; }
}
@media (max-width: 680px) {
  .pl-steps { grid-template-columns: 1fr; gap: 26px; }
  .pl-index-dots { display: none; }
  .pl-index a { justify-content: space-between; padding-left: 0; padding-right: 0; }
  .pl-index a:hover { padding-left: 6px; }
}
@media (prefers-reduced-motion: reduce) {
  .pl-index a, .pl-index-cta span, .pl-acc summary::after, .pl-textlink span, .pl-estimate { transition: none; }
}

/* =========================================================
   PRICE CALCULATOR — interactive dental chart
   Everything is scoped under .pcalc, and the teeth use .pt
   (NOT .tooth) because style.css already owns .tooth for the
   homepage arch and would otherwise override the marks here.
   Palette locked: gold / black / white / WhatsApp green.
   ========================================================= */

.pcalc{position:relative;background:#060606;padding:clamp(44px,5vw,72px) 0;overflow:hidden}
.pcalc::before{content:"";position:absolute;inset:0;pointer-events:none;background:
  radial-gradient(56% 46% at 78% 4%, rgba(214,161,46,.14), transparent 68%),
  radial-gradient(46% 42% at 4% 96%, rgba(214,161,46,.10), transparent 70%)}
.pcalc > .container{position:relative;z-index:1}

.pcalc-head{max-width:640px;margin:0 0 24px}
.pcalc-head h2{margin:0 0 10px;font-size:clamp(25px,2.9vw,36px);font-weight:800;color:#fff;line-height:1.14}
.pcalc-head h2 em{font-style:normal;color:var(--gold)}
.pcalc-head p{margin:0;font-size:15.5px;line-height:1.7;color:#9a9a9a;max-width:58ch}

/* chart left, its price directly underneath, palette down the right */
.pcalc-body{display:grid;gap:20px;align-items:stretch;
  grid-template-columns:minmax(0,1fr) 320px;
  /* the chart row absorbs whatever height the palette needs, so the
     left column (chart + price) always ends level with the palette */
  grid-template-rows:1fr max-content;
  grid-template-areas:"chart pal" "price pal"}
.pcalc-pal{grid-area:pal}
.pcalc-chart{grid-area:chart;min-width:0;display:flex}
.pcalc-panel{grid-area:price}

/* ---------- palette ---------- */
.pcalc-pal{background:linear-gradient(180deg,#121212,#0d0d0d);border:1px solid #232323;
  border-radius:var(--radius);padding:14px 14px 12px}
.pcalc-pal h3{margin:0 0 8px;font-family:"Roboto",sans-serif;font-size:10px;letter-spacing:.26em;
  text-transform:uppercase;color:#7d7d7d;font-weight:700}
/* Başlık artık bir buton (mobilde kulakçık tetikleyicisi).
   Masaüstünde görünüm birebir eski h3 gibi kalsın diye sıfırlanıyor. */
.pcalc-pal h3 .pcalc-grp-t{
  display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;
  background:none;border:0;padding:0;margin:0;text-align:left;
  font:inherit;color:inherit;letter-spacing:inherit;text-transform:inherit;cursor:default}
.pcalc-grp-caret{display:none}
.pcalc-note{font-size:11.5px;color:#6e6e6e;margin:-4px 0 10px;line-height:1.45}
.pcalc-tools{display:flex;flex-wrap:wrap;gap:5px}
.pcalc-sep{height:1px;background:#222;margin:12px 2px}
.pcalc-tool{display:flex;gap:9px;align-items:center;text-align:left;background:transparent;
  border:1px solid #242424;border-radius:6px;padding:7px 9px;color:#cfcfcf;cursor:pointer;
  font-family:var(--font);flex:1 1 168px;min-width:0;
  transition:background .15s,border-color .15s,color .15s}
.pcalc-tool:hover{background:rgba(214,161,46,.07);border-color:rgba(214,161,46,.24)}
.pcalc-tool:focus-visible{outline:2px solid var(--gold-light);outline-offset:2px}
.pcalc-tool[aria-pressed="true"]{background:rgba(214,161,46,.14);border-color:var(--gold);color:#fff}
.pcalc-tool .gl{flex:0 0 22px;width:22px;height:40px}
.pcalc-tool .gl svg{width:100%;height:100%;display:block}
.pcalc-tool .tx{min-width:0;flex:1}
.pcalc-tool .nm{display:block;font-size:12.5px;font-weight:700;line-height:1.25}
.pcalc-tool .pr{display:block;font-family:"Roboto",sans-serif;font-size:10.5px;color:#8d8d8d;
  margin-top:2px;font-variant-numeric:tabular-nums}
.pcalc-tool[aria-pressed="true"] .pr{color:var(--gold-light)}

/* ---------- chart ---------- */
.pcalc-stage{position:relative;background:rgba(255,255,255,.025);
  border:1px solid rgba(214,161,46,.22);border-radius:var(--radius);padding:12px 14px 10px;
  flex:1;display:flex;flex-direction:column;justify-content:center;min-height:0}
.pcalc-stagetop{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;
  font-family:"Roboto",sans-serif;font-size:11.5px;letter-spacing:1.6px;text-transform:uppercase;color:#7d7d7d}
.pcalc-stagetop b{color:var(--gold);font-weight:700}
.pcalc-clear{background:transparent;border:1px solid #2e2e2e;color:#9a9a9a;
  font-family:"Roboto",sans-serif;font-size:10.5px;font-weight:700;letter-spacing:1.6px;
  text-transform:uppercase;padding:7px 11px;border-radius:6px;cursor:pointer}
.pcalc-clear:hover{border-color:var(--gold);color:var(--gold)}
.pcalc-arch{flex:1;min-height:0;width:100%;max-width:600px;height:100%;
  display:block;margin:0 auto;align-self:center;touch-action:manipulation}
.pcalc-archlabel{font-family:"Roboto",sans-serif;font-size:11px;font-weight:700;letter-spacing:2.6px;fill:#4a4a4a}

.pcalc .pt{cursor:crosshair}
.pcalc .pt .crown{fill:url(#pcEnamel);stroke:#8f8f8f;stroke-width:.8;transform-origin:0px 22px;
  transition:fill .18s ease,stroke .18s ease,filter .18s ease}
.pcalc .pt .groove{fill:none;stroke:#9c9c9c;stroke-width:.7;opacity:.5;pointer-events:none;transition:opacity .18s}
.pcalc .pt .hit{fill:transparent}
.pcalc .pt .mark{pointer-events:none}
.pcalc .pt .ring{fill:none;stroke:var(--gold-light);stroke-width:1;stroke-dasharray:3 3;opacity:0;pointer-events:none}
.pcalc .pt:hover .crown{stroke:var(--gold-light);filter:drop-shadow(0 0 7px rgba(214,161,46,.45))}
.pcalc .pt.on .crown{stroke:var(--gold-dark)}
.pcalc .pt.on .groove{opacity:.28}
.pcalc .pt.pop .crown{animation:pcPop .26s cubic-bezier(.3,1.5,.5,1)}
@keyframes pcPop{0%{transform:scale(1)}42%{transform:scale(1.16)}100%{transform:scale(1)}}
.pcalc .pt:focus{outline:none}
.pcalc .pt:focus-visible .crown{stroke:#fff;stroke-width:2;filter:drop-shadow(0 0 10px rgba(231,190,91,.95))}
.pcalc .pt:focus-visible .ring{opacity:1}

/* treatment marks — read by shape and fill, never by hue */
.pcalc .mk-fill{fill:url(#pcEnamelGold);stroke:var(--gold-dark);stroke-width:.7}
.pcalc .mk-solid{fill:var(--gold);stroke:none}
.pcalc .mk-ring{fill:none;stroke:var(--gold);stroke-width:2.6;stroke-linejoin:round}
.pcalc .mk-line{fill:none;stroke:var(--gold);stroke-width:1.6;stroke-linecap:round}
.pcalc .mk-thick{fill:none;stroke:var(--gold);stroke-width:3;stroke-linecap:round}
.pcalc .mark{animation:pcInk .2s ease-out}
@keyframes pcInk{from{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}

.pcalc-rail{fill:none;stroke:url(#pcBridge);stroke-width:13;stroke-linecap:round;stroke-linejoin:round;
  opacity:0;transition:opacity .3s ease;pointer-events:none}
.pcalc-rail.on{opacity:1;filter:drop-shadow(0 0 9px rgba(214,161,46,.55))}
.pcalc-fixture{fill:#0b0b0b;stroke:var(--gold-light);stroke-width:1.4;opacity:0;transition:opacity .3s}
.pcalc-fixture.on{opacity:1}

/* ---------- price, sitting under the chart ---------- */
.pcalc-panel{background:#0a0a0a;border:1px solid rgba(214,161,46,.34);border-radius:var(--radius);
  padding:16px 18px;box-shadow:0 22px 54px rgba(0,0,0,.42);
  display:grid;grid-template-columns:1fr auto 1fr;gap:18px 26px;align-items:center}
.pcalc-treat{margin:0 0 3px;font-size:17px;font-weight:800;color:#fff}
.pcalc-count{margin:0;font-size:13px;color:#8d8d8d}
.pcalc-count b{color:var(--gold);font-weight:700}
.pcalc-units{
  display:flex;align-items:center;flex-wrap:wrap;gap:6px;
  margin-top:10px;
}
.pcalc-units[hidden]{display:none!important}
.pcalc-units-label{
  font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;
  color:#8a8a8a;margin-right:4px;
}
.pcalc-unit{
  min-width:40px;padding:7px 11px;border-radius:8px;
  border:1px solid rgba(255,255,255,.14);background:#161616;color:#cfcfcf;
  font-family:inherit;font-size:13.5px;font-weight:800;cursor:pointer;
  transition:border-color .18s,background .18s,color .18s;
}
.pcalc-unit:hover{border-color:rgba(214,161,46,.5);color:#fff}
.pcalc-unit.is-on,.pcalc-unit[aria-pressed="true"]{
  border-color:var(--gold);background:rgba(214,161,46,.14);color:var(--gold);
}
.pcalc-plabel{font-family:"Roboto",sans-serif;font-size:10.5px;font-weight:700;letter-spacing:2px;
  text-transform:uppercase;color:#6e6e6e;margin-bottom:3px;text-align:center}
.pcalc-amount{margin:0;font-size:clamp(32px,4vw,46px);font-weight:900;color:var(--gold);line-height:1.02;
  letter-spacing:-1.4px;font-variant-numeric:tabular-nums;text-shadow:0 0 32px rgba(214,161,46,.38);
  text-align:center}
.pcalc-per{margin:5px 0 0;font-size:12.5px;color:#7d7d7d;text-align:center}
.pcalc-wa{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;
  background:var(--green);color:#fff;font-size:14px;font-weight:800;border:0;
  border-radius:var(--btn-radius);padding:14px 16px;cursor:pointer;text-decoration:none;
  transition:background .18s}
.pcalc-wa:hover{background:var(--green-dark);color:#fff}
.pcalc-pnote{grid-column:1/-1;margin:0;padding-top:11px;border-top:1px solid #1e1e1e;
  font-size:12px;line-height:1.6;color:#6e6e6e}
.pcalc-plink{grid-column:1/-1;margin:0;font-size:12.5px;color:#8d8d8d;
  text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgba(214,161,46,.5)}
.pcalc-plink:hover{color:var(--gold)}

@media (max-width:1080px){
  .pcalc-body{grid-template-columns:minmax(0,1fr) 290px}
  .pcalc-panel{grid-template-columns:1fr auto}
  .pcalc-amount,.pcalc-per,.pcalc-plabel{text-align:left}
}
@media (max-width:860px){
  /* palette first on a phone — you cannot mark teeth before picking a treatment */
  /* stacked: no stretching, the chart goes back to its natural size */
  /* Fiyat, diş şemasının üstünde ve yapışkan: diş işaretlerken tutar ekranda kalır.
     Grid yerine flex — sticky bir grid öğesinin kapsayıcı bloğu kendi grid alanı
     olduğu için yapışmaz; flex'te kapsayıcı blok tüm .pcalc-body olur. */
  .pcalc-body{display:flex;flex-direction:column;gap:20px}
  .pcalc-pal{order:1}
  .pcalc-panel{order:2;position:sticky;top:63px;z-index:5}  /* 63px = mobil sticky header yüksekliği */
  .pcalc-chart{order:3}

  /* Yapışkan kutu ekranın yarısını yemesin — mobilde sıkıştırılmış düzen:
     tedavi adı ve tutar yan yana, buton tam genişlik.
     minmax(0,1fr): sol sütun içeriğinin (18/20/24 paket satırı) genişliği
     kutuyu viewport'tan taşırıp "kaymaya" yol açıyordu → 0'a kadar küçülebilsin. */
  .pcalc-panel{grid-template-columns:minmax(0,1fr) auto;gap:12px 16px;padding:14px}
  .pcalc-plabel,.pcalc-amount,.pcalc-per{text-align:right}
  /* Veneer paketi (18/20/24) satırı sol hücrede düzgün sarsın, taşmasın */
  .pcalc-units{margin-top:8px}
  .pcalc-units-label{flex-basis:100%;margin:0 0 2px}
  .pcalc-amount{font-size:32px;letter-spacing:-1px}
  .pcalc-per{font-size:11.5px}
  .pcalc-wa{grid-column:1/-1;padding:12px 14px}
  .pcalc-pnote{font-size:11px;line-height:1.5;padding-top:9px}
  .pcalc-chart{display:block}
  .pcalc-stage{display:block;flex:none}
  .pcalc-arch{flex:none;width:100%;max-width:520px;height:auto;margin:0 auto}
  /* Palet kulakçığa dönüyor: üç grup alt alta, tıklanınca açılıyor */
  .pcalc-pal{display:block;padding:10px}
  .pcalc-sep{display:none}
  .pcalc-grp{border:1px solid #232323;border-radius:8px;background:#101010;overflow:hidden}
  .pcalc-grp + .pcalc-grp{margin-top:8px}
  .pcalc-pal h3{margin:0}
  .pcalc-pal h3 .pcalc-grp-t{padding:14px;cursor:pointer;min-height:48px}
  .pcalc-grp-caret{display:block;flex:none;width:9px;height:9px;
    border-right:2px solid var(--gold);border-bottom:2px solid var(--gold);
    transform:translateY(-2px) rotate(45deg);transition:transform .25s ease}
  .pcalc-grp.open .pcalc-grp-caret{transform:translateY(2px) rotate(-135deg)}
  .pcalc-grp-b{max-height:0;overflow:hidden;padding:0 14px;
    transition:max-height .3s ease,padding .3s ease}
  .pcalc-grp.open .pcalc-grp-b{max-height:760px;padding:0 14px 14px}
  .pcalc-tool{flex:1 1 100%}
}
@media (max-width:420px){ .pcalc-tool{flex:1 1 100%} }
@media (prefers-reduced-motion:reduce){
  .pcalc .pt.pop .crown,.pcalc .mark{animation:none}
  .pcalc .pt .crown,.pcalc .pt .groove,.pcalc-rail,.pcalc-fixture{transition:none}
}

/* Kapalı tedavi listesi: kapalıyken tek satır, ama linkler her hâlükârda
   DOM'da olduğu için taranır. Paletteki tedaviler buton olduğundan sayfanın
   tedavi sayfalarına giden içerik içi iç linklerini bu blok taşıyor. */
.pcalc-more{margin:22px 0 0;padding-top:16px;border-top:1px solid rgba(255,255,255,.1)}
.pcalc-more summary{cursor:pointer;list-style:none;display:inline-flex;align-items:center;gap:9px;
  font-family:"Roboto",sans-serif;font-size:11px;font-weight:700;letter-spacing:2px;
  text-transform:uppercase;color:#6e6e6e;transition:color .16s}
.pcalc-more summary::-webkit-details-marker{display:none}
.pcalc-more summary::after{content:"+";font-size:14px;line-height:1;color:var(--gold-dark)}
.pcalc-more[open] summary::after{content:"\2013"}
.pcalc-more summary:hover{color:#b4b4b4}
.pcalc-more summary:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:2px}
.pcalc-more ul{list-style:none;margin:16px 0 2px;padding:0;display:grid;
  grid-template-columns:repeat(auto-fill,minmax(196px,1fr));gap:9px 26px}
.pcalc-more a{color:#9a9a9a;text-decoration:none;font-size:13.5px;transition:color .16s}
.pcalc-more a:hover,.pcalc-more a:focus-visible{color:var(--gold)}
