
/* ================== REM · Gerçek-Kulak Mantığı ================== */
.rm-hero { background: linear-gradient(178deg, #f7f9fc 0%, #f3f6fb 55%, #f8f4f2 100%); }
.rm-hero h1 { font-family: 'Newsreader', serif; font-weight: 600; font-size: clamp(2.1rem, 4.2vw, 3.05rem);
  line-height: 1.08; color: #16233d; margin: 12px 0 16px; letter-spacing: -.01em; }
.rm-hero h1 em { font-style: italic; color: #3f5fa6; }
.rm-hero-alt { font-family: 'Inter', sans-serif; font-size: .95rem; font-weight: 600; color: #7f8a9c;
  letter-spacing: .01em; margin: -6px 0 18px; }

/* hero önizleme kartı */
.rm-cam { overflow: hidden; }
.rm-cam .sm-cam-p b { color: #1f6b4a; font-family: 'Space Grotesk', sans-serif; transition: color .3s ease; }
.rm-hg { padding: 6px 18px 12px; }
.rm-hg-svg { width: 100%; height: auto; display: block; overflow: visible; }
.rm-hg-grid line { stroke: rgba(22,35,61,.10); stroke-width: 1; }
.rm-hg-ax { font-family: 'Inter', sans-serif; font-size: 9.5px; fill: #97a0b0; }
.rm-hg-hedef, .rm-hg-fit, .rm-hg-rem { fill: none; stroke-linecap: round; stroke-linejoin: round; }
.rm-hg-hedef { stroke: #b3872f; stroke-width: 2.4; stroke-dasharray: 6 4; opacity: 0; animation: rmFade .7s ease .15s forwards; }
.rm-hg-fit { stroke: #c8503f; stroke-width: 2.2; opacity: 0; animation: rmFade .7s ease .45s forwards; }
.rm-hg-fit.solgun { opacity: .38; transition: opacity .5s ease; animation: none; }
.rm-hg-rem { stroke: #1f6b4a; stroke-width: 3.2; filter: drop-shadow(0 6px 12px rgba(31,107,74,.22)); }
.rm-hg-alan { opacity: 0; transition: opacity .6s ease; }
.rm-hg-alan.gor { opacity: 1; }
@keyframes rmFade { to { opacity: 1; } }
.rm-hg-fark-g { opacity: 0; animation: rmFade .5s ease .8s forwards; }
.rm-hg-fark-g line { stroke: #c8503f; stroke-width: 1.4; stroke-dasharray: 3 3; transition: opacity .35s ease; }
.rm-hg-fark-g circle { fill: #c8503f; }
.rm-hg-fark-g #rm-hg-fark-d { transition: cy .05s linear, fill .4s ease; }
.rm-hg-fark-g.tamam line { stroke: #1f6b4a; }
.rm-hg-fark-g.tamam circle { fill: #1f6b4a; }
.rm-hg-lbl { font-family: 'Space Grotesk', sans-serif; font-size: 11.5px; font-weight: 700; fill: #c8503f;
  opacity: 0; animation: rmFade .5s ease .85s forwards; transition: fill .4s ease;
  paint-order: stroke; stroke: #fff; stroke-width: 3.5px; stroke-linejoin: round; }
.rm-hg-lbl.tamam { fill: #1f6b4a; }
.rm-hg-leg { display: flex; flex-wrap: wrap; gap: 6px 14px; margin-top: 8px;
  font-family: 'Inter', sans-serif; font-size: .74rem; color: #5c6577; }
.rm-hg-leg span { display: inline-flex; align-items: center; gap: 6px; }
.rm-hg-leg span::before { content: ""; width: 16px; height: 3px; border-radius: 2px; background: currentColor; }
.rm-hg-leg .e-hedef { color: #b3872f; }
.rm-hg-leg .e-fit { color: #c8503f; }
.rm-hg-leg .e-rem { color: #1f6b4a; }
.rm-hg-not { margin: 10px 0 0; font-size: .8rem; line-height: 1.58; color: #6a7488; min-height: 34px; }
.rm-hg-not b { color: #c8503f; transition: color .4s ease; }
.rm-hg-not.tamam b { color: #1f6b4a; }

/* hero adım şeridi */
.rm-adimlar { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 10px;
  margin: 6px 14px 14px; padding: 12px 14px; border-radius: 14px;
  background: linear-gradient(135deg, #16233d, #24365c); box-shadow: 0 16px 30px -22px rgba(22,35,61,.9); }
.rm-ad { display: inline-flex; align-items: center; gap: 7px; font-family: 'Inter', sans-serif;
  font-size: .82rem; font-weight: 600; color: #b8c6dd; transition: color .35s ease; }
.rm-ad b { display: grid; place-items: center; width: 20px; height: 20px; border-radius: 50%;
  font-family: 'Space Grotesk', sans-serif; font-size: .72rem; color: #cfd9ea;
  background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.18); transition: all .35s ease; }
.rm-ad.on { color: #fff; }
.rm-ad.on b { color: #16233d; background: linear-gradient(135deg, #e2a08f, #f0c7b6); border-color: transparent;
  box-shadow: 0 0 0 4px rgba(226,160,143,.18); }
.rm-ad-ok { color: #5f7398; font-size: .9rem; }
@media (prefers-reduced-motion: reduce) {
  .rm-hg-hedef, .rm-hg-fit, .rm-hg-fark-g, .rm-hg-lbl { opacity: 1; animation: none; }
}

.rm-sec { padding: 76px 26px; }
.rm-sec-ic { max-width: 1200px; margin: 0 auto; }
.rm-sec-ic.dar { max-width: 880px; }
.rm-sec-kick { display: inline-block; font-family: 'Inter', sans-serif; font-size: .72rem; font-weight: 700;
  letter-spacing: .16em; text-transform: uppercase; color: #b3603f; margin-bottom: 10px; }
.rm-sec h2 { font-family: 'Newsreader', serif; font-weight: 600; font-size: clamp(1.7rem, 3vw, 2.3rem);
  color: #16233d; margin: 0 0 12px; }
.rm-alt { font-size: .97rem; line-height: 1.74; color: #4d5768; max-width: none; margin: 0 0 26px; }
.rm-alt b { color: #16233d; }
.rm-disc { margin-top: 16px; font-size: .8rem; line-height: 1.6; color: #7b8494; }
.rm-mini { font-size: .78rem; line-height: 1.55; color: #7b8494; margin-top: 6px; }
.rm-lbl { display: block; font-family: 'Inter', sans-serif; font-size: .74rem; font-weight: 700;
  letter-spacing: .08em; text-transform: uppercase; color: #7b8494; margin-bottom: 8px; }

.rm-band { padding: 78px 26px; background: linear-gradient(170deg, #f4f6fb 0%, #eef2f9 60%, #f6f2ef 100%); }
.rm-band-ic { max-width: 1200px; margin: 0 auto; }
.rm-band-h { font-family: 'Newsreader', serif; font-weight: 600; font-size: clamp(1.7rem, 3vw, 2.3rem); color: #16233d; margin: 0 0 12px; }


/* yol haritası */
.rm-yol { position: relative; overflow: hidden;
  background: radial-gradient(120% 90% at 15% 0%, #ffffff 0%, #f6f8fc 45%, #f7f4f2 100%); padding-top: 64px; }
.rm-yol::before { content: ""; position: absolute; width: 460px; height: 460px; right: -140px; top: -180px;
  background: radial-gradient(circle, rgba(201,96,58,.10), transparent 65%); filter: blur(20px); pointer-events: none; }
.rm-yol-bas { display: grid; grid-template-columns: minmax(260px, .78fr) 1.22fr; gap: 18px 44px; align-items: end; margin-bottom: 34px; }
.rm-yol-alt { font-size: .95rem; line-height: 1.74; color: #4d5768; margin: 0; max-width: none; }

.rm-yol-akis { position: relative; display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.rm-yol-akis::before { content: ""; position: absolute; left: 8%; right: 8%; top: 40px; height: 2px; z-index: 0;
  background: linear-gradient(90deg, rgba(58,90,156,.5) 0%, rgba(201,96,58,.5) 50%, rgba(31,107,74,.5) 100%);
  transform: scaleX(0); transform-origin: left center;
  transition: transform 1.2s cubic-bezier(.22,1,.36,1) .15s;
  mask-image: linear-gradient(90deg, transparent, #000 12%, #000 88%, transparent);
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 12%, #000 88%, transparent); }
.rm-yol.gor .rm-yol-akis::before { transform: scaleX(1); }

.rm-as { position: relative; z-index: 1; border-radius: 22px; padding: 24px 20px 16px;
  background: linear-gradient(180deg, #ffffff, #fdfdff);
  border: 1px solid rgba(22,35,61,.08);
  box-shadow: 0 26px 50px -38px rgba(22,35,61,.6);
  opacity: 0; transform: translateY(22px);
  transition: transform .5s cubic-bezier(.22,1,.36,1), opacity .5s ease, box-shadow .35s ease, border-color .35s ease; }
.rm-yol.gor .rm-as { opacity: 1; transform: none; }
.rm-yol.gor .rm-as-2 { transition-delay: .1s; }
.rm-yol.gor .rm-as-3 { transition-delay: .2s; }
.rm-as:hover { transform: translateY(-5px); box-shadow: 0 40px 70px -40px rgba(22,35,61,.75); }
.rm-as::after { content: ""; position: absolute; inset: -1px -1px auto -1px; height: 4px; border-radius: 22px 22px 0 0; }
.rm-as-1::after { background: linear-gradient(90deg, #2f4f8f, #7fa2e0); }
.rm-as-2::after { background: linear-gradient(90deg, #b3502f, #e2a08f); }
.rm-as-3::after { background: linear-gradient(90deg, #1a5c40, #6cc39a); }
/* aşama rengiyle yumuşak hale */
.rm-as::before { content: ""; position: absolute; inset: -30px -20px auto -20px; height: 120px; z-index: -1;
  opacity: 0; filter: blur(28px); border-radius: 40px; transition: opacity .4s ease; }
.rm-as-1::before { background: rgba(58,90,156,.24); }
.rm-as-2::before { background: rgba(201,96,58,.22); }
.rm-as-3::before { background: rgba(31,107,74,.22); }
.rm-as:hover::before { opacity: 1; }

.rm-as-bas { display: grid; grid-template-columns: 46px 1fr; gap: 14px; align-items: start; }
.rm-as-rozet { position: relative; display: grid; place-items: center; width: 46px; height: 46px; border-radius: 15px;
  font-family: 'Space Grotesk', sans-serif; font-size: 1.1rem; font-weight: 700; color: #fff;
  transition: transform .35s cubic-bezier(.22,1,.36,1); }
.rm-as:hover .rm-as-rozet { transform: translateY(-2px) rotate(-3deg); }
.rm-as-rozet::after { content: ""; position: absolute; inset: -5px; border-radius: 19px; border: 1px solid currentColor;
  opacity: .22; transition: transform .4s ease, opacity .4s ease; }
.rm-as:hover .rm-as-rozet::after { transform: scale(1.08); opacity: .4; }
.rm-as-1 .rm-as-rozet { background: linear-gradient(140deg, #1d2a44, #3a5a9c); color: #fff; box-shadow: 0 14px 26px -14px rgba(58,90,156,1); }
.rm-as-2 .rm-as-rozet { background: linear-gradient(140deg, #a8452b, #e2a08f); box-shadow: 0 14px 26px -14px rgba(201,96,58,1); }
.rm-as-3 .rm-as-rozet { background: linear-gradient(140deg, #14503a, #4bbf87); box-shadow: 0 14px 26px -14px rgba(31,107,74,1); }
.rm-as-et { display: block; font-family: 'Inter', sans-serif; font-size: .7rem; font-weight: 700;
  letter-spacing: .12em; text-transform: uppercase; color: #97a0b0; margin-bottom: 3px; }
.rm-as-1 .rm-as-et { color: #4a6cb0; } .rm-as-2 .rm-as-et { color: #c9603a; } .rm-as-3 .rm-as-et { color: #2c7c5a; }
.rm-as-tx h3 { font-family: 'Newsreader', serif; font-weight: 600; font-size: 1.34rem; color: #16233d; margin: 0 0 5px; line-height: 1.2; }
.rm-as-tx p { font-size: .85rem; line-height: 1.55; color: #7b8494; margin: 0; }

/* aşama ilerlemesi */
.rm-as-ilerleme { display: flex; align-items: center; gap: 10px; margin: 16px 0 10px; padding-top: 14px;
  border-top: 1px solid rgba(22,35,61,.07); }
.rm-as-say { flex: none; font-family: 'Space Grotesk', sans-serif; font-size: .72rem; font-weight: 600; color: #97a0b0;
  transition: color .3s ease; }
.rm-as-cubuk { flex: 1; height: 4px; border-radius: 999px; background: rgba(22,35,61,.07); overflow: hidden; }
.rm-as-cubuk i { display: block; height: 100%; width: 0%; border-radius: 999px;
  transition: width .6s cubic-bezier(.22,1,.36,1); }
.rm-as-1 .rm-as-cubuk i { background: linear-gradient(90deg, #3a5a9c, #7fa2e0); }
.rm-as-2 .rm-as-cubuk i { background: linear-gradient(90deg, #c9603a, #e2a08f); }
.rm-as-3 .rm-as-cubuk i { background: linear-gradient(90deg, #1f6b4a, #6cc39a); }
.rm-as.tamam .rm-as-say { color: #1f6b4a; }

/* modül satırları */
.rm-as-l { list-style: none; margin: 0; padding: 0; display: grid; gap: 2px; }
.rm-as-l li { opacity: 0; transform: translateX(-8px); transition: opacity .45s ease, transform .45s cubic-bezier(.22,1,.36,1); }
.rm-yol.gor .rm-as-l li { opacity: 1; transform: none; }
.rm-yol.gor .rm-as-l li:nth-child(1) { transition-delay: .18s; }
.rm-yol.gor .rm-as-l li:nth-child(2) { transition-delay: .24s; }
.rm-yol.gor .rm-as-l li:nth-child(3) { transition-delay: .30s; }
.rm-yol.gor .rm-as-l li:nth-child(4) { transition-delay: .36s; }
.rm-yol.gor .rm-as-l li:nth-child(5) { transition-delay: .42s; }
.rm-as-l a { position: relative; display: grid; grid-template-columns: 32px 1fr 16px; align-items: center; gap: 12px;
  padding: 10px 10px 10px 8px; border-radius: 12px; overflow: hidden;
  transition: background .24s ease, transform .24s ease; }
.rm-as-l a::before { content: ""; position: absolute; left: 0; top: 8px; bottom: 8px; width: 3px; border-radius: 3px;
  transform: scaleY(0); transform-origin: center; transition: transform .32s cubic-bezier(.22,1,.36,1); }
.rm-as-1 .rm-as-l a::before { background: linear-gradient(180deg, #3a5a9c, #7fa2e0); }
.rm-as-2 .rm-as-l a::before { background: linear-gradient(180deg, #c9603a, #e2a08f); }
.rm-as-3 .rm-as-l a::before { background: linear-gradient(180deg, #1f6b4a, #6cc39a); }
.rm-as-l a:hover::before, .rm-as-l a.aktif::before { transform: scaleY(1); }
.rm-as-l a:hover { transform: translateX(4px); }
.rm-as-1 .rm-as-l a:hover, .rm-as-1 .rm-as-l a.aktif { background: rgba(58,90,156,.06); }
.rm-as-2 .rm-as-l a:hover, .rm-as-2 .rm-as-l a.aktif { background: rgba(201,96,58,.06); }
.rm-as-3 .rm-as-l a:hover, .rm-as-3 .rm-as-l a.aktif { background: rgba(31,107,74,.06); }
.rm-yn { display: grid; place-items: center; width: 32px; height: 32px; border-radius: 10px;
  font-family: 'Space Grotesk', sans-serif; font-size: .82rem; font-weight: 700; color: #6a7488;
  background: rgba(22,35,61,.05); border: 1px solid rgba(22,35,61,.08);
  transition: all .28s cubic-bezier(.22,1,.36,1); }
.rm-as-l a:hover .rm-yn { transform: scale(1.06); }
.rm-yi { display: flex; flex-direction: column; gap: 1px; min-width: 0; }
.rm-yi b { font-family: 'Inter', sans-serif; font-size: .93rem; font-weight: 600; color: #16233d; line-height: 1.3; }
.rm-yi i { font-style: normal; font-size: .78rem; color: #8b93a3; line-height: 1.35; }
.rm-yok { font-size: .9rem; color: #c3c9d4; opacity: 0; transform: translateX(-5px);
  transition: opacity .24s ease, transform .24s ease; }
.rm-as-l a:hover .rm-yok { opacity: 1; transform: none; }
.rm-as-1 .rm-as-l a:hover .rm-yn, .rm-as-1 .rm-as-l a.aktif .rm-yn { background: linear-gradient(135deg, #1d2a44, #3a5a9c); color: #fff; border-color: transparent; }
.rm-as-2 .rm-as-l a:hover .rm-yn, .rm-as-2 .rm-as-l a.aktif .rm-yn { background: linear-gradient(135deg, #a8452b, #e2a08f); color: #fff; border-color: transparent; }
.rm-as-3 .rm-as-l a:hover .rm-yn, .rm-as-3 .rm-as-l a.aktif .rm-yn { background: linear-gradient(135deg, #14503a, #4bbf87); color: #fff; border-color: transparent; }
.rm-as-l a.aktif .rm-yi b::after { content: "şu an"; margin-left: 8px; padding: 2px 7px; border-radius: 999px;
  font-family: 'Inter', sans-serif; font-size: .62rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase;
  color: #fff; background: #16233d; vertical-align: middle; animation: rmSuAn .4s cubic-bezier(.22,1,.36,1); }
@keyframes rmSuAn { from { opacity: 0; transform: translateX(-6px) scale(.9); } to { opacity: 1; transform: none; } }
/* okunmuş modüller */
.rm-as-l a.okundu .rm-yn { color: #1f6b4a; background: rgba(31,107,74,.1); border-color: rgba(31,107,74,.2); }
.rm-as-l a.okundu .rm-yi b { color: #4d5768; }

@media (max-width: 1020px) {
  .rm-yol-bas { grid-template-columns: 1fr; align-items: start; }
  .rm-yol-akis { grid-template-columns: 1fr; }
  .rm-yol-akis::before { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  .rm-as, .rm-as-l li, .rm-as-l a, .rm-yok, .rm-as-cubuk i, .rm-yol-akis::before { transition: none; opacity: 1; transform: none; }
}

/* neden bölümü */
.rm-neden { position: relative; overflow: hidden;
  background: radial-gradient(110% 80% at 85% 0%, #fbf7f5 0%, #f7f9fb 55%, #ffffff 100%); }
.rm-nd-bas { display: grid; grid-template-columns: minmax(280px, .82fr) 1.18fr; gap: 20px 48px; align-items: start; margin-bottom: 34px; }
.rm-nd-bas h2 { margin-bottom: 0; }
.rm-nd-lead { font-size: .98rem; line-height: 1.78; color: #4d5768; margin: 0; max-width: none; }
.rm-nd-lead b { color: #16233d; }

.rm-neden-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 18px; }
.rm-kart { position: relative; overflow: hidden; background: #fff; border: 1px solid rgba(22,35,61,.08);
  border-radius: 20px; padding: 26px 24px 24px;
  box-shadow: 0 24px 44px -34px rgba(22,35,61,.55);
  opacity: 0; transform: translateY(20px);
  transition: transform .5s cubic-bezier(.22,1,.36,1), opacity .5s ease, box-shadow .35s ease, border-color .35s ease; }
.rm-kart.gor { opacity: 1; transform: none; }
.rm-kart:nth-child(2).gor { transition-delay: .08s; }
.rm-kart:nth-child(3).gor { transition-delay: .16s; }
.rm-kart:hover { transform: translateY(-5px); border-color: rgba(201,96,58,.28);
  box-shadow: 0 40px 66px -38px rgba(22,35,61,.7); }
.rm-kart::before { content: ""; position: absolute; right: -60px; top: -60px; width: 170px; height: 170px;
  border-radius: 50%; background: radial-gradient(circle, rgba(201,96,58,.14), transparent 68%);
  opacity: 0; transition: opacity .45s ease, transform .6s cubic-bezier(.22,1,.36,1); transform: scale(.85); }
.rm-kart:hover::before { opacity: 1; transform: scale(1); }
.rm-kart-no { position: absolute; right: 18px; top: 10px;
  font-family: 'Newsreader', serif; font-size: 3.4rem; font-weight: 600; line-height: 1;
  color: rgba(22,35,61,.05); transition: color .35s ease, transform .45s cubic-bezier(.22,1,.36,1); }
.rm-kart:hover .rm-kart-no { color: rgba(201,96,58,.14); transform: translateY(-2px); }
.rm-kart-ik { position: relative; display: grid; place-items: center; width: 48px; height: 48px; border-radius: 14px;
  margin-bottom: 14px; color: #c9603a;
  background: linear-gradient(140deg, rgba(201,96,58,.12), rgba(226,160,143,.06));
  border: 1px solid rgba(201,96,58,.16);
  transition: transform .4s cubic-bezier(.22,1,.36,1), box-shadow .35s ease; }
.rm-kart-ik svg { width: 26px; height: 26px; }
.rm-kart:hover .rm-kart-ik { transform: translateY(-2px) scale(1.04); box-shadow: 0 14px 26px -16px rgba(201,96,58,.9); }
.rm-ik-egri { stroke-dasharray: 60; stroke-dashoffset: 0; }
.rm-kart:hover .rm-ik-egri { animation: rmIkCiz 1.1s cubic-bezier(.22,1,.36,1); }
@keyframes rmIkCiz { from { stroke-dashoffset: 60; } to { stroke-dashoffset: 0; } }
.rm-kart h3 { font-family: 'Inter', sans-serif; font-size: 1.02rem; font-weight: 700; color: #16233d; margin: 0 0 7px; }
.rm-kart p { font-size: .9rem; line-height: 1.68; color: #4d5768; margin: 0; }

@media (max-width: 1020px) { .rm-nd-bas { grid-template-columns: 1fr; } }
@media (prefers-reduced-motion: reduce) {
  .rm-kart { opacity: 1; transform: none; transition: none; }
  .rm-kart:hover .rm-ik-egri { animation: none; }
}

/* grafik ortak */
.rm-ax { font-family: 'Inter', sans-serif; font-size: 10px; fill: #7b8494; }
#rm-zn-grid line, #rm-sii-grid line, #rm-recd-grid line, #rm-hd-grid line { stroke: rgba(22,35,61,.12); stroke-width: 1; }
#rm-zn-svg, #rm-sii-svg, #rm-recd-svg, #rm-hd-svg { width: 100%; height: auto; display: block; }
.rm-c-reur, .rm-c-reor, .rm-c-rear, .rm-c-reig, .rm-c-recd, .rm-c-recd-y, .rm-c-nal, .rm-c-dsl, .rm-sii-esik {
  fill: none; stroke-linecap: round; stroke-linejoin: round; transition: opacity .3s ease, stroke-width .3s ease; }
.rm-c-reur { stroke: #7b8494; stroke-width: 2.4; stroke-dasharray: 6 4; }
.rm-c-reor { stroke: #5a7cc4; stroke-width: 2.4; }
.rm-c-rear { stroke: #1f6b4a; stroke-width: 2.8; }
.rm-c-reig { stroke: #c9603a; stroke-width: 3; }
.rm-c-reur.sonuk, .rm-c-reor.sonuk, .rm-c-rear.sonuk, .rm-c-reig.sonuk { opacity: .16; }
.rm-c-reur.vurgu, .rm-c-reor.vurgu, .rm-c-rear.vurgu, .rm-c-reig.vurgu { stroke-width: 3.6; }
.rm-c-recd { stroke: #c9603a; stroke-width: 3; }
.rm-c-recd-y { stroke: #7b8494; stroke-width: 2; stroke-dasharray: 5 4; }
.rm-c-nal { stroke: #1f6b4a; stroke-width: 3; }
.rm-c-dsl { stroke: #5a7cc4; stroke-width: 3; stroke-dasharray: 7 4; }
.rm-sii-esik { stroke: #16233d; stroke-width: 2.6; }
.rm-sii-banana { fill: rgba(123,132,148,.18); stroke: rgba(123,132,148,.5); stroke-width: 1; }
.rm-sii-banana2 { fill: rgba(31,107,74,.2); stroke: rgba(31,107,74,.65); stroke-width: 1.4; }

.rm-zn-leg, .rm-sii-leg, .rm-recd-leg, .rm-hd-leg { display: flex; gap: 14px; flex-wrap: wrap; margin-top: 10px;
  font-family: 'Inter', sans-serif; font-size: .76rem; color: #5c6577; }
.rm-zn-leg span, .rm-sii-leg span, .rm-recd-leg span, .rm-hd-leg span { display: inline-flex; align-items: center; gap: 6px; }
.rm-zn-leg span::before, .rm-sii-leg span::before, .rm-recd-leg span::before, .rm-hd-leg span::before {
  content: ""; width: 18px; height: 3px; border-radius: 2px; background: currentColor; }
.l-reur { color: #7b8494; } .l-reor { color: #5a7cc4; } .l-rear { color: #1f6b4a; } .l-reig { color: #c9603a; }
.l-b1 { color: #7b8494; } .l-b2 { color: #1f6b4a; } .l-esik { color: #16233d; }
.l-recd { color: #c9603a; } .l-recd-y { color: #7b8494; }
.l-nal { color: #1f6b4a; } .l-dsl { color: #5a7cc4; }

/* zincir */
.rm-zn-band .rm-band-ic { position: relative; }
.rm-zn-adimlar { position: relative; display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; margin-bottom: 20px; }
.rm-zn-adimlar::before { content: ""; position: absolute; left: 12%; right: 12%; top: 30px; height: 2px; z-index: 0;
  background: rgba(22,35,61,.1); }
.rm-zn-adimlar button { position: relative; z-index: 1; display: grid; grid-template-columns: 34px 1fr; gap: 12px;
  align-items: center; cursor: pointer; text-align: left;
  padding: 14px 16px; border-radius: 16px; border: 1px solid rgba(22,35,61,.09); background: #fff;
  box-shadow: 0 16px 30px -26px rgba(22,35,61,.5);
  transition: transform .28s cubic-bezier(.22,1,.36,1), box-shadow .28s ease, border-color .28s ease, background .3s ease; }
.rm-zn-ad-no { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 11px;
  font-family: 'Space Grotesk', sans-serif; font-size: .82rem; font-weight: 700; color: #6a7488;
  background: rgba(22,35,61,.05); border: 1px solid rgba(22,35,61,.08); transition: all .28s ease; }
.rm-zn-ad-tx { display: flex; flex-direction: column; gap: 1px; }
.rm-zn-ad-tx b { font-family: 'Space Grotesk', sans-serif; font-size: .98rem; color: #16233d; letter-spacing: .02em; }
.rm-zn-ad-tx i { font-style: normal; font-size: .78rem; color: #8b93a3; }
.rm-zn-adimlar button:hover { transform: translateY(-2px); border-color: rgba(90,124,196,.35);
  box-shadow: 0 22px 36px -24px rgba(22,35,61,.6); }
.rm-zn-adimlar button.aktif { border-color: transparent; background: linear-gradient(140deg, #1d2a44, #33508c);
  box-shadow: 0 20px 34px -20px rgba(29,42,68,.95); }
.rm-zn-adimlar button.aktif .rm-zn-ad-tx b { color: #fff; }
.rm-zn-adimlar button.aktif .rm-zn-ad-tx i { color: #b9c9e8; }
.rm-zn-adimlar button.aktif .rm-zn-ad-no { background: rgba(255,255,255,.16); border-color: rgba(255,255,255,.28); color: #fff; }

.rm-zn-govde { display: grid; grid-template-columns: 1.5fr 1fr; gap: 22px; align-items: start; }
.rm-zn-plot { background: #fff; border: 1px solid rgba(22,35,61,.08); border-radius: 22px; padding: 20px 20px 14px;
  box-shadow: 0 26px 50px -34px rgba(22,35,61,.6); }

/* eğriler */
.rm-c-reur, .rm-c-reor, .rm-c-rear, .rm-c-reig {
  fill: none; stroke-linecap: round; stroke-linejoin: round;
  transition: opacity .35s ease, stroke-width .3s ease; }
.rm-c-reur { stroke: #7b8494; stroke-width: 2.4; stroke-dasharray: 7 5; }
.rm-c-reor { stroke: #5a7cc4; stroke-width: 2.6; }
.rm-c-rear { stroke: #1f6b4a; stroke-width: 2.8; }
.rm-c-reig { stroke: #c9603a; stroke-width: 3; }
.rm-c-reur.sonuk, .rm-c-reor.sonuk, .rm-c-rear.sonuk, .rm-c-reig.sonuk { opacity: .12; }
.rm-c-reur.vurgu, .rm-c-reor.vurgu, .rm-c-rear.vurgu, .rm-c-reig.vurgu { stroke-width: 3.6;
  filter: drop-shadow(0 6px 12px rgba(22,35,61,.18)); }

/* taralı alan */
.rm-zn-alan { opacity: 0; transition: opacity .45s ease; }
.rm-zn-alan.gor { opacity: 1; }
.rm-zn-alan.dogal { fill: rgba(123,132,148,.14); stroke: none; }
.rm-zn-alan.kayip { fill: rgba(201,96,58,.14); stroke: none; }
.rm-zn-alan.kazanc { fill: rgba(31,107,74,.14); stroke: none; }
.rm-zn-alan.net { fill: rgba(201,96,58,.16); stroke: none; }
.rm-zn-alan-et { font-family: 'Inter', sans-serif; font-size: 10.5px; font-weight: 600; fill: #6a7488;
  paint-order: stroke; stroke: #fff; stroke-width: 3px; }
.rm-zn-im { fill: #16233d; stroke: #fff; stroke-width: 2;
  transition: cx .5s cubic-bezier(.22,1,.36,1), cy .5s cubic-bezier(.22,1,.36,1);
  animation: rmImNabiz 2.4s ease-out infinite; }
.rm-zn-im.reor { fill: #5a7cc4; } .rm-zn-im.rear { fill: #1f6b4a; } .rm-zn-im.reig { fill: #c9603a; }
@keyframes rmImNabiz { 0% { r: 5; opacity: 1; } 70% { r: 9; opacity: .25; } 100% { r: 5; opacity: 1; } }

.rm-zn-leg { display: flex; gap: 16px; flex-wrap: wrap; margin-top: 12px;
  font-family: 'Inter', sans-serif; font-size: .78rem; color: #5c6577; }
.rm-zn-leg span { display: inline-flex; align-items: center; gap: 7px; transition: opacity .3s ease, font-weight .2s ease; }
.rm-zn-leg span::before { content: ""; width: 18px; height: 3px; border-radius: 2px; background: currentColor; }
.rm-zn-leg span.sonuk { opacity: .3; }
.rm-zn-leg span.vurgu { font-weight: 700; }
.l-reur { color: #7b8494; } .l-reor { color: #5a7cc4; } .l-rear { color: #1f6b4a; } .l-reig { color: #c9603a; }

/* açıklama kartı */
.rm-zn-kart { position: relative; overflow: hidden; background: #fff; border: 1px solid rgba(22,35,61,.08);
  border-radius: 20px; padding: 22px 22px 18px; box-shadow: 0 22px 40px -32px rgba(22,35,61,.55); }
.rm-zn-kart::before { content: ""; position: absolute; inset: 0 0 auto 0; height: 3px;
  background: #7b8494; transition: background .35s ease; }
.rm-zn-kart[data-adim="reor"]::before { background: #5a7cc4; }
.rm-zn-kart[data-adim="rear"]::before { background: #1f6b4a; }
.rm-zn-kart[data-adim="reig"]::before { background: #c9603a; }
.rm-zn-kart.gec { animation: rmKartGir .45s cubic-bezier(.22,1,.36,1); }
@keyframes rmKartGir { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
.rm-zn-kart-et { display: inline-block; font-family: 'Inter', sans-serif; font-size: .68rem; font-weight: 700;
  letter-spacing: .1em; text-transform: uppercase; color: #97a0b0; margin-bottom: 8px; }
.rm-zn-kart h3 { font-family: 'Inter', sans-serif; font-size: 1rem; font-weight: 700; color: #16233d; margin: 0 0 8px; }
.rm-zn-kart p { font-size: .89rem; line-height: 1.68; color: #4d5768; margin: 0; }
.rm-zn-form { margin-top: 14px; padding: 11px 13px; border-radius: 11px; background: rgba(90,124,196,.07);
  border: 1px solid rgba(90,124,196,.14); font-family: 'Space Grotesk', sans-serif; font-size: .83rem; color: #33405c; }
.rm-zn-deger { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; margin-top: 12px;
  padding-top: 12px; border-top: 1px dashed rgba(22,35,61,.1); }
.rm-zn-dl { font-family: 'Inter', sans-serif; font-size: .78rem; color: #8b93a3; }
.rm-zn-deger b { font-family: 'Space Grotesk', sans-serif; font-size: 1.35rem; color: #16233d; }
.rm-zn-kuplaj { margin-top: 16px; background: #fff; border: 1px solid rgba(22,35,61,.08); border-radius: 20px; padding: 20px;
  box-shadow: 0 22px 40px -34px rgba(22,35,61,.5); }
.rm-zn-not { font-size: .85rem; line-height: 1.65; color: #4d5768; margin: 12px 0 0; }

@media (max-width: 960px) {
  .rm-zn-govde { grid-template-columns: 1fr; }
  .rm-zn-adimlar { grid-template-columns: repeat(2, 1fr); }
  .rm-zn-adimlar::before { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  .rm-zn-im { animation: none; }
  .rm-zn-kart.gec { animation: none; }
}

/* SII */
.rm-sii-yan, .rm-recd-yan, .rm-hedef-yan { display: flex; flex-direction: column; gap: 16px; }
.rm-sii-blok { background: #fff; border: 1px solid rgba(22,35,61,.08); border-radius: 16px; padding: 16px; }
.rm-sii-sl { background: #fff; border: 1px solid rgba(22,35,61,.08); border-radius: 16px; padding: 16px; }
.rm-sii-sl label { display: flex; justify-content: space-between; align-items: center; font-family: 'Inter', sans-serif;
  font-size: .86rem; font-weight: 600; color: #33405c; margin-bottom: 8px; }
.rm-sii-sl output { font-family: 'Space Grotesk', sans-serif; color: #c9603a; }
.rm-sii-sl input[type=range] { width: 100%; accent-color: #c9603a; }
.rm-sii-metre { background: linear-gradient(140deg, #16233d, #24365c); color: #fff; border-radius: 18px; padding: 18px 20px; }
.rm-sii-bar { height: 10px; border-radius: 999px; background: rgba(255,255,255,.14); overflow: hidden; }
.rm-sii-bar i { display: block; height: 100%; width: 0%; border-radius: 999px;
  background: linear-gradient(90deg, #e2a08f, #4bbf87); transition: width .45s cubic-bezier(.22,1,.36,1); }
.rm-sii-deg { display: flex; align-items: baseline; gap: 8px; margin-top: 12px; }
.rm-sii-deg b { font-family: 'Space Grotesk', sans-serif; font-size: 1.8rem; }
.rm-sii-deg span { font-size: .78rem; color: #b8c6dd; letter-spacing: .06em; text-transform: uppercase; }
.rm-sii-yorum { font-size: .86rem; line-height: 1.6; color: #cdd8ea; margin: 10px 0 0; }

/* RECD */
.rm-recd-kutu { background: #fff; border: 1px solid rgba(22,35,61,.08); border-radius: 16px; padding: 16px; }
.rm-recd-satir { display: flex; justify-content: space-between; align-items: center; padding: 8px 0;
  border-bottom: 1px dashed rgba(22,35,61,.1); font-size: .88rem; color: #4d5768; }
.rm-recd-satir:last-of-type { border-bottom: 0; }
.rm-recd-satir b { font-family: 'Space Grotesk', sans-serif; color: #c9603a; }
.rm-recd-kutu p { font-size: .86rem; line-height: 1.62; color: #4d5768; margin: 10px 0 0; }
.rm-liste { list-style: none; padding: 0; margin: 0; display: grid; gap: 8px; }
.rm-liste li { position: relative; padding-left: 18px; font-size: .88rem; line-height: 1.6; color: #4d5768; }
.rm-liste li::before { content: ""; position: absolute; left: 0; top: 9px; width: 7px; height: 7px; border-radius: 50%;
  background: linear-gradient(135deg, #c9603a, #5a7cc4); }
.rm-liste b { color: #16233d; }

/* hedef tablosu */
.rm-hd-tablo { background: #fff; border: 1px solid rgba(22,35,61,.08); border-radius: 16px; overflow: hidden; }
.rm-hd-sat { display: grid; grid-template-columns: 1fr 1fr 1fr 1fr; align-items: center; padding: 9px 14px;
  font-family: 'Space Grotesk', sans-serif; font-size: .84rem; color: #33405c; border-bottom: 1px solid rgba(22,35,61,.06); }
.rm-hd-sat:last-child { border-bottom: 0; }
.rm-hd-bas { background: rgba(22,35,61,.04); font-size: .74rem; letter-spacing: .06em; text-transform: uppercase; color: #7b8494; }
.rm-hd-sat b.f { color: #c9603a; }

/* hata kartları */
.rm-hata-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(340px, 1fr)); gap: 12px; }
.rm-hkart { position: relative; overflow: hidden; background: #fff; border: 1px solid rgba(22,35,61,.08);
  border-radius: 14px; box-shadow: 0 18px 34px -30px rgba(22,35,61,.5);
  transition: border-color .28s ease, box-shadow .28s ease, transform .28s cubic-bezier(.22,1,.36,1); }
.rm-hkart::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 3px;
  background: linear-gradient(180deg, #c9603a, #e2a08f); opacity: .55; transition: opacity .28s ease; }
.rm-hkart:hover { border-color: rgba(201,96,58,.3); box-shadow: 0 24px 44px -30px rgba(22,35,61,.6);
  transform: translateY(-2px); }
.rm-hkart.acik { border-color: rgba(201,96,58,.35); box-shadow: 0 26px 48px -30px rgba(22,35,61,.65); }
.rm-hkart.acik::before { opacity: 1; }

.rm-hk-bas { display: flex; align-items: flex-start; gap: 13px; width: 100%; cursor: pointer;
  padding: 16px 18px 16px 20px; border: 0; background: none; text-align: left; }
.rm-hk-bas:focus-visible { outline: 2px solid #c9603a; outline-offset: -3px; border-radius: 12px; }
.rm-hn { flex: none; display: grid; place-items: center; width: 26px; height: 26px; border-radius: 8px;
  font-family: 'Space Grotesk', sans-serif; font-size: .78rem; font-weight: 700; color: #b3603f;
  background: rgba(201,96,58,.1); border: 1px solid rgba(201,96,58,.18);
  transition: color .28s ease, background .28s ease; }
.rm-hkart.acik .rm-hn { color: #fff; background: linear-gradient(135deg, #c9603a, #e2a08f); border-color: transparent; }
.rm-hk-tx { flex: 1; min-width: 0; }
.rm-hk-tx b { display: block; font-family: 'Inter', sans-serif; font-size: .94rem; font-weight: 700; color: #16233d;
  margin-bottom: 4px; }
.rm-hk-tx i { display: block; font-style: normal; font-size: .87rem; line-height: 1.55; color: #6a7488; }
.rm-hk-ok { flex: none; display: grid; place-items: center; width: 26px; height: 26px; border-radius: 8px;
  color: #97a0b0; background: rgba(22,35,61,.04);
  transition: transform .3s cubic-bezier(.22,1,.36,1), color .28s ease, background .28s ease; }
.rm-hk-ok svg { width: 15px; height: 15px; }
.rm-hkart.acik .rm-hk-ok { transform: rotate(180deg); color: #b3603f; background: rgba(201,96,58,.1); }

.rm-hk-ic { max-height: 0; overflow: hidden; transition: max-height .45s cubic-bezier(.22,1,.36,1); }
.rm-hk-ic p { margin: 0; padding: 0 18px 18px 59px; font-size: .89rem; line-height: 1.72; color: #4d5768;
  border-top: 1px dashed rgba(22,35,61,.1); padding-top: 14px; }
.rm-hkart.acik .rm-hk-ic p { animation: rmHkGir .45s ease; }
@keyframes rmHkGir { from { opacity: 0; transform: translateY(-4px); } to { opacity: 1; transform: none; } }
@media (max-width: 560px) { .rm-hk-ic p { padding-left: 20px; } }

/* SSS */
.rm-sss { display: grid; gap: 10px; }
.rm-sss-oge { background: #fff; border: 1px solid rgba(22,35,61,.09); border-radius: 14px; overflow: hidden; }
.rm-sss-s { width: 100%; display: flex; justify-content: space-between; align-items: center; gap: 12px; cursor: pointer;
  border: 0; background: none; text-align: left; padding: 16px 18px;
  font-family: 'Inter', sans-serif; font-size: .95rem; font-weight: 600; color: #16233d; }
.rm-sss-ok { flex: none; width: 12px; height: 12px; border-right: 2px solid #7b8494; border-bottom: 2px solid #7b8494;
  transform: rotate(45deg); transition: transform .25s ease; margin-top: -4px; }
.rm-sss-oge.acik .rm-sss-ok { transform: rotate(-135deg); margin-top: 3px; }
.rm-sss-i { max-height: 0; overflow: hidden; transition: max-height .35s cubic-bezier(.22,1,.36,1); }
.rm-sss-oge.acik .rm-sss-i { max-height: 400px; }
.rm-sss-i p { padding: 0 18px 16px; font-size: .9rem; line-height: 1.68; color: #4d5768; margin: 0; }

/* kaynaklar + ilgili */
.rm-kaynak-l { list-style: none; padding: 0; margin: 0; display: grid; gap: 9px; }
.rm-kaynak-l li { position: relative; padding-left: 20px; font-size: .88rem; line-height: 1.62; color: #4d5768; }
.rm-kaynak-l li::before { content: "▸"; position: absolute; left: 0; color: #c9603a; }
.rm-ilgili-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 14px; }
.rm-ikart { display: flex; flex-direction: column; gap: 6px; padding: 20px; border-radius: 16px;
  border: 1px solid rgba(22,35,61,.08); background: #fff; transition: transform .25s ease, box-shadow .25s ease; }
.rm-ikart:hover { transform: translateY(-3px); box-shadow: 0 24px 40px -28px rgba(22,35,61,.6); }
.rm-ik-ik { font-size: 1.3rem; }
.rm-ik-t { font-family: 'Inter', sans-serif; font-weight: 700; font-size: .96rem; color: #16233d; }
.rm-ik-a { font-size: .85rem; line-height: 1.55; color: #7b8494; }

@media (max-width: 960px) {
  .rm-zn-govde, .rm-sii, .rm-recd, .rm-hedef { grid-template-columns: 1fr; }
  .rm-zn-adimlar { grid-template-columns: repeat(2, 1fr); }
}
@media (prefers-reduced-motion: reduce) {
  .rm-kart, .rm-ikart, .rm-sii-bar i { transition: none; }
}

/* bölüm ayraçları (atölye) */
.rm-sayfa .fa-ayrac { max-width: 1200px; margin: 26px auto; padding: 0 26px; }
@media (max-width: 720px) { .rm-sayfa .fa-ayrac { padding: 0 20px; margin: 18px auto; } }

/* ---- sağ kenar modül rayı ---- */
.rm-ray { position: fixed; right: 20px; top: 50%; transform: translateY(-50%) translateX(14px);
  z-index: 60; display: flex; flex-direction: column; align-items: flex-end; gap: 3px;
  padding: 12px 10px; border-radius: 26px;
  background: rgba(255,255,255,.86); -webkit-backdrop-filter: blur(16px) saturate(1.6); backdrop-filter: blur(16px) saturate(1.6);
  border: 1px solid rgba(22,35,61,.08); box-shadow: 0 24px 50px -28px rgba(22,35,61,.5);
  opacity: 0; pointer-events: none;
  transition: opacity .4s ease, transform .4s cubic-bezier(.22,1,.36,1), box-shadow .4s ease; }
.rm-ray.gor { opacity: 1; pointer-events: auto; transform: translateY(-50%) translateX(0); }
.rm-ray:hover { box-shadow: 0 32px 60px -28px rgba(22,35,61,.6); }
.rm-ray-ayrac { width: 20px; height: 1px; margin: 5px 7px; background: rgba(22,35,61,.12); align-self: flex-end; }

.rm-ray-a { position: relative; display: flex; align-items: center; justify-content: flex-end; gap: 0;
  width: 100%; height: 40px; border-radius: 999px; overflow: visible;
  transition: background .28s ease; }
.rm-ray-n { flex: none; display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50%;
  font-family: 'Space Grotesk', sans-serif; font-size: .8rem; font-weight: 700; color: #6a7488;
  background: rgba(22,35,61,.05); border: 1px solid rgba(22,35,61,.08);
  transition: color .25s ease, background .25s ease, border-color .25s ease,
              transform .3s cubic-bezier(.22,1,.36,1), box-shadow .25s ease; }
.rm-ray-t { max-width: 0; opacity: 0; white-space: nowrap; overflow: hidden; text-align: right;
  font-family: 'Inter', sans-serif; font-size: .76rem; font-weight: 500; color: #8b93a3; letter-spacing: 0;
  transition: max-width .42s cubic-bezier(.22,1,.36,1), opacity .3s ease, padding .35s ease,
              font-size .28s ease, font-weight .2s ease, color .28s ease; }

/* rayın üzerine gelince tüm adlar açılır (JS ile .acik) */
.rm-ray.acik .rm-ray-t { max-width: 240px; opacity: .9; padding: 0 12px 0 14px; }
/* imlecin üzerinde olduğu madde büyür ve kalınlaşır */
.rm-ray-a:hover .rm-ray-t, .rm-ray-a:focus-visible .rm-ray-t { font-size: .92rem; font-weight: 700; color: #16233d; opacity: 1; }
.rm-ray-a:hover .rm-ray-n { transform: scale(1.1); }
.rm-ray-a:hover { background: rgba(22,35,61,.05); }
/* site geneli nav a.aktif::after alt çizgisini bu rayda kapat */
.rm-ray a.aktif::after, .rm-ray a::after { content: none !important; display: none !important; }

/* okunan modül: hafif vurgulu */
.rm-ray-a.aktif .rm-ray-t { font-weight: 600; color: #33405c; }
.rm-ray-a.aktif .rm-ray-n { box-shadow: 0 0 0 4px rgba(22,35,61,.07); }
.rm-ray-a.r1:hover .rm-ray-n, .rm-ray-a.r1.aktif .rm-ray-n { background: linear-gradient(135deg, #1d2a44, #3a5a9c); color: #fff; border-color: transparent; }
.rm-ray-a.r2:hover .rm-ray-n, .rm-ray-a.r2.aktif .rm-ray-n { background: linear-gradient(135deg, #a8452b, #e2a08f); color: #fff; border-color: transparent; }
.rm-ray-a.r3:hover .rm-ray-n, .rm-ray-a.r3.aktif .rm-ray-n { background: linear-gradient(135deg, #14503a, #4bbf87); color: #fff; border-color: transparent; }

@media (max-width: 1240px) { .rm-ray { display: none; } }
@media print { .rm-ray { display: none; } }
@media (prefers-reduced-motion: reduce) { .rm-ray, .rm-ray-t, .rm-ray-n { transition: none; } }

/* çapa hedefleri: yapışkan başlığın altında kalmasın */
.rm-sayfa section[id] { scroll-margin-top: 118px; }
.rm-sayfa #yol { scroll-margin-top: 96px; }
@media (max-width: 900px) { .rm-sayfa section[id] { scroll-margin-top: 84px; } }

/* ---- ara bilgi notları ---- */
.rm-not { display: grid; grid-template-columns: 40px 1fr; gap: 14px; align-items: start;
  margin: 22px 0 4px; padding: 18px 20px; border-radius: 18px;
  background: linear-gradient(140deg, rgba(90,124,196,.07), rgba(90,124,196,.02));
  border: 1px solid rgba(90,124,196,.18);
  opacity: 0; transform: translateY(14px);
  transition: opacity .5s ease, transform .5s cubic-bezier(.22,1,.36,1), box-shadow .3s ease; }
.rm-not.gor { opacity: 1; transform: none; }
.rm-not:hover { box-shadow: 0 22px 40px -30px rgba(22,35,61,.55); }
.rm-not-ik { position: relative; width: 40px; height: 40px; border-radius: 12px; display: grid; place-items: center;
  background: rgba(90,124,196,.14); }
.rm-not-ik::before { content: "i"; font-family: 'Newsreader', serif; font-style: italic; font-size: 1.15rem;
  font-weight: 600; color: #3f5fa6; }
.rm-not-ic > b { display: block; font-family: 'Inter', sans-serif; font-size: .95rem; font-weight: 700; color: #16233d; margin-bottom: 4px; }
.rm-not-ic p b, .rm-not-ic p strong { display: inline; font-family: inherit; font-size: inherit; font-weight: 700; color: #16233d; margin: 0; }
.rm-not-ic p { font-size: .89rem; line-height: 1.68; color: #4d5768; margin: 0; }
.rm-not.uyari { background: linear-gradient(140deg, rgba(201,96,58,.08), rgba(201,96,58,.02)); border-color: rgba(201,96,58,.2); }
.rm-not.uyari .rm-not-ik { background: rgba(201,96,58,.14); }
.rm-not.uyari .rm-not-ik::before { content: "!"; color: #b3502f; font-style: normal; font-weight: 700; }
.rm-not.ipucu { background: linear-gradient(140deg, rgba(31,107,74,.08), rgba(31,107,74,.02)); border-color: rgba(31,107,74,.2); }
.rm-not.ipucu .rm-not-ik { background: rgba(31,107,74,.14); }
.rm-not.ipucu .rm-not-ik::before { content: "✓"; color: #1f6b4a; font-style: normal; font-size: 1rem; }

/* ---- terim baloncukları ---- */
.rm-ip { position: relative; cursor: help; font-weight: 600; color: #16233d;
  border-bottom: 1px dashed rgba(90,124,196,.6); }
.rm-ip::after { content: attr(data-ip); position: absolute; left: 50%; bottom: calc(100% + 12px);
  width: min(320px, 78vw); transform: translateX(-50%) translateY(6px) scale(.97);
  padding: 12px 14px; border-radius: 14px; z-index: 30;
  background: #16233d; color: #e6ecf7; font-family: 'Inter', sans-serif; font-size: .82rem; font-weight: 400;
  line-height: 1.6; text-align: left; letter-spacing: 0;
  box-shadow: 0 22px 44px -22px rgba(22,35,61,.9);
  opacity: 0; pointer-events: none;
  transition: opacity .22s ease, transform .28s cubic-bezier(.22,1,.36,1); }
.rm-ip::before { content: ""; position: absolute; left: 50%; bottom: calc(100% + 6px); z-index: 31;
  width: 10px; height: 10px; transform: translateX(-50%) rotate(45deg) translateY(4px);
  background: #16233d; opacity: 0; transition: opacity .22s ease, transform .28s ease; }
.rm-ip:hover::after, .rm-ip:focus::after, .rm-ip:focus-visible::after {
  opacity: 1; transform: translateX(-50%) translateY(0) scale(1); }
.rm-ip:hover::before, .rm-ip:focus::before, .rm-ip:focus-visible::before {
  opacity: 1; transform: translateX(-50%) rotate(45deg) translateY(0); }
.rm-ip:focus-visible { outline: 2px solid #c9603a; outline-offset: 3px; border-radius: 4px; }
@media (prefers-reduced-motion: reduce) { .rm-not, .rm-ip::after, .rm-ip::before { transition: none; } }

/* ---- bölümler arası köprü cümlesi ---- */
.rm-kopru { display: flex; align-items: center; gap: 24px; max-width: 1020px; margin: 26px auto; padding: 0 26px; }
.rm-kopru > span { flex: 1; height: 1px; min-width: 20px;
  background: linear-gradient(90deg, transparent, rgba(22,35,61,.14)); }
.rm-kopru > span:last-child { background: linear-gradient(90deg, rgba(22,35,61,.14), transparent); }

/* cam kart + ambilight */
.rm-kp-sar { position: relative; flex: 0 1 auto; isolation: isolate;
  opacity: 0; transform: translateY(16px) scale(.985);
  transition: opacity .7s ease, transform .7s cubic-bezier(.22,1,.36,1); }
.rm-kopru.gor .rm-kp-sar { opacity: 1; transform: none; }

.rm-kp-isik { position: absolute; inset: -16px -30px; border-radius: 44px; z-index: 0; pointer-events: none;
  background: linear-gradient(90deg,
    rgba(201,96,58,.55) 0%, rgba(179,135,47,.45) 22%, rgba(31,107,74,.42) 46%,
    rgba(90,124,196,.55) 70%, rgba(201,96,58,.55) 100%);
  background-size: 320% 100%;
  filter: blur(30px); opacity: .42;
  animation: rmAmbi 18s linear infinite;
  transition: opacity .45s ease, filter .45s ease; }
.rm-kp-isik::after { content: ""; position: absolute; inset: 18px 26px; border-radius: 30px;
  background: rgba(255,255,255,.55); filter: blur(14px); }
@keyframes rmAmbi { to { background-position: 320% 0; } }

.rm-kp-kart { position: relative; z-index: 1; display: flex; align-items: center; gap: 16px;
  padding: 16px 26px 16px 18px; border-radius: 22px;
  background: linear-gradient(150deg, rgba(255,255,255,.58), rgba(255,255,255,.34));
  -webkit-backdrop-filter: blur(18px) saturate(165%); backdrop-filter: blur(18px) saturate(165%);
  border: 1px solid rgba(255,255,255,.7);
  box-shadow: 0 26px 50px -34px rgba(22,35,61,.5), inset 0 1px 0 rgba(255,255,255,.85),
              inset 0 -1px 0 rgba(22,35,61,.04);
  transition: transform .4s cubic-bezier(.22,1,.36,1), box-shadow .4s ease; }
.rm-kp-sar:hover .rm-kp-kart { transform: translateY(-2px);
  box-shadow: 0 34px 60px -34px rgba(22,35,61,.6), inset 0 1px 0 rgba(255,255,255,.9); }
.rm-kp-sar:hover .rm-kp-isik { opacity: .62; filter: blur(26px); }

.rm-kp-ik { flex: none; display: grid; place-items: center; width: 38px; height: 38px; border-radius: 13px;
  color: #b3603f; background: linear-gradient(140deg, rgba(255,255,255,.75), rgba(201,96,58,.12));
  border: 1px solid rgba(255,255,255,.8);
  box-shadow: 0 6px 14px -8px rgba(201,96,58,.5), inset 0 1px 0 rgba(255,255,255,.9); }
.rm-kp-ik svg { width: 17px; height: 17px; animation: rmKpOk 2.8s ease-in-out infinite; }
@keyframes rmKpOk { 0%, 100% { transform: translateY(-1px); } 50% { transform: translateY(2px); } }

.rm-kp-tx { min-width: 0; }
.rm-kp-et { display: block; font-family: 'Inter', sans-serif; font-size: .64rem; font-weight: 700;
  letter-spacing: .14em; text-transform: uppercase; color: #b3603f; margin-bottom: 3px; }
.rm-kopru p { margin: 0; font-family: 'Newsreader', serif; font-size: 1.08rem; line-height: 1.5; color: #2b3856; }

@media (max-width: 860px) {
  .rm-kopru { gap: 0; margin: 30px auto; }
  .rm-kopru > span { display: none; }
  .rm-kp-sar { flex: 1 1 auto; }
  .rm-kp-kart { align-items: flex-start; }
  .rm-kopru p { font-size: 1rem; }
}
@media (prefers-reduced-motion: reduce) {
  .rm-kp-sar { opacity: 1; transform: none; transition: none; }
  .rm-kp-isik, .rm-kp-ik svg { animation: none; }
}

/* ---- ölçüm zinciri: gezinme, imleç, fark rozeti ---- */
.rm-zn-adimlar button.tamam .rm-zn-ad-no { color: #1f6b4a; background: rgba(31,107,74,.1);
  border-color: rgba(31,107,74,.24); font-size: 0; }
.rm-zn-adimlar button.tamam .rm-zn-ad-no::after { content: "\2713"; font-size: .78rem; }
.rm-zn-plot { position: relative; }
.rm-zn-cx { stroke: rgba(22,35,61,.22); stroke-width: 1.2; stroke-dasharray: 4 3; }
circle.rm-zn-cxn { stroke: #fff; stroke-width: 1.6; }
circle.rm-zn-cxn.reur { fill: #4a5a75; } circle.rm-zn-cxn.reor { fill: #8fa6cf; }
circle.rm-zn-cxn.rear { fill: #1f6b4a; } circle.rm-zn-cxn.reig { fill: #c9603a; }

.rm-zn-ip { position: absolute; top: 12px; transform: translateX(-50%); pointer-events: none;
  display: flex; flex-direction: column; gap: 3px; padding: 10px 12px; border-radius: 12px;
  background: rgba(255,255,255,.9); border: 1px solid rgba(22,35,61,.08);
  -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px);
  box-shadow: 0 18px 34px -24px rgba(22,35,61,.6);
  opacity: 0; visibility: hidden; transition: opacity .18s ease, visibility .18s; }
.rm-zn-ip.acik { opacity: 1; visibility: visible; }
.rm-zn-ip b { font-family: 'Space Grotesk', sans-serif; font-size: .78rem; color: #16233d; }
.rm-zn-ip span { display: flex; align-items: center; justify-content: space-between; gap: 14px;
  font-family: 'Inter', sans-serif; font-size: .74rem; font-weight: 600; color: #6a7488; }
.rm-zn-ip span i { font-style: normal; font-family: 'Space Grotesk', sans-serif; font-weight: 700; }
.rm-zn-ip span.reur i { color: #4a5a75; } .rm-zn-ip span.reor i { color: #7f96c0; }
.rm-zn-ip span.rear i { color: #1f6b4a; } .rm-zn-ip span.reig i { color: #c9603a; }

.rm-zn-fark { display: inline-flex; align-items: center; gap: 6px; margin-top: 10px; padding: 6px 12px;
  border-radius: 999px; font-family: 'Inter', sans-serif; font-size: .78rem; font-weight: 700;
  animation: znFark .5s cubic-bezier(.22,1,.36,1); }
.rm-zn-fark.notr { color: #6a7488; background: rgba(22,35,61,.05); }
.rm-zn-fark.kayip { color: #a8452b; background: rgba(201,96,58,.1); }
.rm-zn-fark.kazanc { color: #1a5c40; background: rgba(31,107,74,.1); }
@keyframes znFark { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }

/* ---- sayfa zemini: bölümler ile geçiş şeritleri aynı beyaz üzerinde ---- */
.rm-sayfa { background: #ffffff; }

/* ---- kompakt iki sütunlu modüller (SII, hedef, RECD) ---- */
.rm-sii, .rm-hedef, .rm-recd {
  display: grid; grid-template-columns: minmax(0, 1.32fr) minmax(280px, 1fr); gap: 20px; align-items: start; }
.rm-sii-plot, .rm-hedef-plot, .rm-recd-plot {
  background: #fff; border: 1px solid rgba(22,35,61,.08); border-radius: 20px; padding: 16px 18px 10px;
  box-shadow: 0 22px 44px -34px rgba(22,35,61,.5);
  transition: box-shadow .3s ease, transform .3s cubic-bezier(.22,1,.36,1); }
.rm-sii-plot:hover, .rm-hedef-plot:hover, .rm-recd-plot:hover {
  box-shadow: 0 30px 54px -34px rgba(22,35,61,.6); transform: translateY(-2px); }
#rm-sii-svg, #rm-hd-svg, #rm-recd-svg { max-height: 290px; }
#rm-zn-svg { max-height: 320px; }
@media (max-width: 1040px) { .rm-sii, .rm-hedef, .rm-recd { grid-template-columns: 1fr; }
  #rm-sii-svg, #rm-hd-svg, #rm-recd-svg, #rm-zn-svg { max-height: none; } }

/* ---- kaydırıcı etiketleri (sözlük terimi düzeni bozuyordu) ---- */
.rm-sii-sl label { display: block; position: relative; padding-right: 84px; }
.rm-sii-sl output { position: absolute; right: 0; top: 0; }

/* ---- hedef tablosu: satır vurgusu + canlı özet ---- */
.rm-hd-sat { transition: background .22s ease; }
.rm-hd-sat:not(.bas):hover { background: rgba(90,124,196,.06); }

/* ---- SSS → Kaynaklar arası boşluk ve kaynak kartları ---- */
.rm-sayfa #sss { padding-bottom: 34px; }
.rm-sayfa #kaynaklar { padding-top: 30px; padding-bottom: 56px; }
.rm-sec-ic.dar { max-width: 980px; }

/* ---- ilgili içerikler: kart tasarımı ---- */
.rm-sayfa #ilgili { padding-top: 30px; padding-bottom: 20px; }
.rm-ilgili-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 14px; margin-top: 18px; }
.rm-ikart { position: relative; overflow: hidden; display: flex; flex-direction: column; gap: 6px;
  padding: 22px 20px 20px; border-radius: 18px; text-decoration: none;
  background: linear-gradient(160deg, #fff, #f8fafd);
  border: 1px solid rgba(22,35,61,.08);
  box-shadow: 0 20px 40px -32px rgba(22,35,61,.55);
  transition: transform .3s cubic-bezier(.22,1,.36,1), box-shadow .3s ease, border-color .3s ease; }
.rm-ikart::before { content: ""; position: absolute; inset: 0 0 auto 0; height: 3px;
  background: linear-gradient(90deg, #3a5a9c, #c9603a); transform: scaleX(0); transform-origin: left;
  transition: transform .4s cubic-bezier(.22,1,.36,1); }
.rm-ikart:hover { transform: translateY(-4px); border-color: rgba(90,124,196,.3);
  box-shadow: 0 34px 58px -32px rgba(22,35,61,.65); }
.rm-ikart:hover::before { transform: scaleX(1); }
.rm-ik-ik { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 13px; margin-bottom: 8px;
  color: #3f5fa6; background: linear-gradient(140deg, rgba(90,124,196,.14), rgba(90,124,196,.05));
  border: 1px solid rgba(90,124,196,.18);
  transition: transform .3s cubic-bezier(.22,1,.36,1), color .3s ease, background .3s ease; }
.rm-ik-ik svg { width: 20px; height: 20px; }
.rm-ikart:hover .rm-ik-ik { transform: scale(1.08) rotate(-4deg); color: #b3603f;
  background: linear-gradient(140deg, rgba(201,96,58,.16), rgba(201,96,58,.05)); border-color: rgba(201,96,58,.22); }
.rm-ik-t { font-family: 'Inter', sans-serif; font-size: 1rem; font-weight: 700; color: #16233d; }
.rm-ik-a { font-size: .87rem; line-height: 1.6; color: #6a7488; }
.rm-ik-ok { display: inline-flex; align-items: center; margin-top: 10px; color: #b3603f;
  transition: transform .3s cubic-bezier(.22,1,.36,1); }
.rm-ik-ok svg { width: 18px; height: 18px; }
.rm-ikart:hover .rm-ik-ok { transform: translateX(5px); }

/* ---- hedef modülü: NAL ↔ DSL canlı özeti ---- */
.rm-hd-ozet { display: grid; grid-template-columns: 34px 1fr; gap: 12px; align-items: start;
  margin-top: 12px; padding: 14px 16px; border-radius: 16px;
  background: linear-gradient(150deg, rgba(201,96,58,.07), rgba(201,96,58,.02));
  border: 1px solid rgba(201,96,58,.16); }
.rm-hd-ozet.gec { animation: hdOzet .5s cubic-bezier(.22,1,.36,1); }
@keyframes hdOzet { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
.rm-hd-oz-ik { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 11px;
  font-family: 'Space Grotesk', sans-serif; font-size: .95rem; font-weight: 700; color: #b3603f;
  background: rgba(255,255,255,.75); border: 1px solid rgba(201,96,58,.2); }
.rm-hd-oz-tx b { display: block; font-family: 'Inter', sans-serif; font-size: .89rem; font-weight: 700;
  color: #16233d; line-height: 1.45; }
.rm-hd-oz-ist { display: flex; flex-wrap: wrap; gap: 8px; margin: 10px 0 8px; }
.rm-hd-oz-p { display: inline-flex; flex-direction: column; gap: 1px; padding: 7px 12px; border-radius: 10px;
  background: rgba(255,255,255,.85); border: 1px solid rgba(22,35,61,.07); }
.rm-hd-oz-p i { font-style: normal; font-family: 'Inter', sans-serif; font-size: .62rem; font-weight: 700;
  letter-spacing: .1em; text-transform: uppercase; color: #a2aab8; }
.rm-hd-oz-p em { font-style: normal; font-family: 'Space Grotesk', sans-serif; font-size: .95rem; font-weight: 700;
  color: #a8452b; font-variant-numeric: tabular-nums; }
.rm-hd-oz-tx p { margin: 0; font-size: .83rem; line-height: 1.6; color: #6a7488; }

/* ---- kaynaklar: numaralı, sade liste (animasyonsuz) ---- */
.rm-kaynak-l { counter-reset: kyn; list-style: none; margin: 18px 0 0; padding: 0; }
.rm-kaynak-l li { counter-increment: kyn; position: relative; display: block;
  padding: 9px 0 9px 40px; font-size: .87rem; line-height: 1.7; color: #4d5768; }
.rm-kaynak-l li + li { border-top: 1px solid rgba(22,35,61,.06); }
.rm-kaynak-l li::before { content: counter(kyn) "."; position: absolute; left: 0; top: 9px; width: 26px;
  text-align: right; font-family: 'Space Grotesk', sans-serif; font-size: .8rem; font-weight: 700;
  color: #b3603f; font-variant-numeric: tabular-nums; }
.rm-kaynak-l i { color: #16233d; font-style: italic; }

/* ---- Cihaz Teknoloji Atölyesi: canlı hero panosu ---- */
.tk-alan { opacity: 0; animation: rmFade .9s ease .5s forwards; }
.tk-kilavuz { stroke: rgba(22,35,61,.18); stroke-width: 1; stroke-dasharray: 3 3; }
.tk-iz { fill: rgba(31,107,74,.16); }
.tk-tk { fill: #c8503f; }
.rm-hg-nokta { fill: #16233d; stroke: #fff; stroke-width: 2;
  transition: fill .3s ease, r .3s cubic-bezier(.22,1,.36,1); }
.rm-hg-nokta.sik { fill: #1f6b4a; }
.tk-metre { display: grid; gap: 8px; padding: 4px 18px 2px; }
.tk-m { display: grid; grid-template-columns: 44px 1fr 58px; align-items: center; gap: 10px; }
.tk-m-l { font-family: 'Inter', sans-serif; font-size: .66rem; font-weight: 700; letter-spacing: .1em;
  text-transform: uppercase; color: #97a0b0; }
.tk-m-bar { height: 6px; border-radius: 999px; background: rgba(22,35,61,.07); overflow: hidden; }
.tk-m-bar i { display: block; height: 100%; width: 0; border-radius: 999px;
  background: linear-gradient(90deg, #7fa2e0, #3a5a9c); transition: width .1s linear; }
.tk-m-bar.cik i { background: linear-gradient(90deg, #6cc39a, #1f6b4a); }
.tk-m b { font-family: 'Space Grotesk', sans-serif; font-size: .8rem; color: #16233d; text-align: right;
  font-variant-numeric: tabular-nums; }
.rm-ad { transition: color .3s ease, background .3s ease, transform .3s cubic-bezier(.22,1,.36,1); }
.rm-ad.on { transform: translateY(-1px); }
@media (prefers-reduced-motion: reduce) { .tk-metre { display: none; }
  .tk-ses-cumle.okunuyor, .tk-ses-durum.aktif .nokta { animation: none; } }

/* ================== Cihaz Teknoloji Atölyesi — yeni modüller ================== */
.tk-yon, .tk-fb, .tk-kn { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(280px, 1fr);
  gap: 20px; align-items: stretch; }
.tk-yon-plot, .tk-fb-sahne, .tk-kn-plot { background: #fff; border: 1px solid rgba(22,35,61,.08);
  border-radius: 20px; padding: 14px 16px 10px; box-shadow: 0 22px 44px -34px rgba(22,35,61,.5); }
.tk-yon-plot { display: flex; align-items: center; justify-content: center; padding: 18px; }
.tk-yon-plot svg, .tk-fb-sahne svg, .tk-kn-plot svg { display: block; width: 100%; height: auto; max-height: 300px; }
.tk-yon-plot #tk-yon-svg { max-height: 460px; }
.tk-yon-yan, .tk-fb-yan, .tk-kn-yan { display: flex; flex-direction: column; gap: 14px; }
.tk-yon-blok { background: #fff; border: 1px solid rgba(22,35,61,.08); border-radius: 16px; padding: 14px 16px; }
.tk-sl { display: block; position: relative; padding-right: 84px; font-family: 'Inter', sans-serif;
  font-size: .88rem; font-weight: 600; color: #33405c; margin-bottom: 8px; }
.tk-sl output { position: absolute; right: 0; top: 0; font-family: 'Space Grotesk', sans-serif; color: #c9603a; }
.tk-yon-blok input[type=range] { width: 100%; accent-color: #c9603a; }

.tk-sonuc { background: #fff; border: 1px solid rgba(22,35,61,.08); border-radius: 16px; padding: 14px 16px; }
.tk-sonuc-sat { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 7px 0;
  border-bottom: 1px dashed rgba(22,35,61,.1); font-size: .87rem; color: #4d5768; }
.tk-sonuc-sat:last-of-type { border-bottom: 0; }
.tk-sonuc-sat b { font-family: 'Space Grotesk', sans-serif; color: #16233d; font-variant-numeric: tabular-nums; }
.tk-sonuc-not { margin: 10px 0 0; font-size: .84rem; line-height: 1.6; color: #6a7488; }

/* polar örüntü */
.tk-yon-zemin { fill: url(#yon-zemin); stroke: rgba(22,35,61,.06); }
.tk-yon-grid circle { fill: none; stroke: rgba(22,35,61,.08); }
.tk-yon-grid line.isin { stroke: rgba(22,35,61,.06); }
.tk-yon-ax { font-family: 'Inter', sans-serif; font-size: 10px; fill: #9aa3b2; }
.tk-yon-db { font-family: 'Inter', sans-serif; font-size: 8.5px; fill: rgba(22,35,61,.3);
  paint-order: stroke; stroke: #fff; stroke-width: 3; stroke-linejoin: round; }
.tk-yon-ip { font-family: 'Inter', sans-serif; font-size: 9.5px; fill: #aab2c0; }

.tk-yon-omni { fill: none; stroke: rgba(22,35,61,.16); stroke-width: 1.2; stroke-dasharray: 3 4; }
.tk-yon-oru { fill: url(#yon-dolgu); stroke: #1f6b4a; stroke-width: 2.4; stroke-linejoin: round;
  filter: drop-shadow(0 0 6px rgba(31,107,74,.22)); transition: d .4s cubic-bezier(.22,1,.36,1); }
.tk-yon-kama { fill: rgba(200,80,63,.16); stroke: rgba(200,80,63,.3); stroke-width: .8;
  transition: d .3s cubic-bezier(.22,1,.36,1); }
.tk-yon-null line { stroke: rgba(90,124,196,.5); stroke-width: 1.2; stroke-dasharray: 3 3; }
.tk-yon-null text { font-family: 'Inter', sans-serif; font-size: 9px; font-weight: 600; fill: #5a7cc4;
  paint-order: stroke; stroke: #fff; stroke-width: 3; stroke-linejoin: round; }

.tk-yon-hat { stroke: rgba(58,90,156,.45); stroke-width: 1.6; stroke-dasharray: 4 3; }
.tk-yon-ghat { stroke: rgba(200,80,63,.4); stroke-width: 1.4; stroke-dasharray: 4 3;
  transition: all .3s cubic-bezier(.22,1,.36,1); }
.tk-yon-hoparlor { fill: #3a5a9c; stroke: #fff; stroke-width: 2; }
.tk-yon-mik { fill: #16233d; stroke: #fff; stroke-width: 2.5; }
.tk-yon-duyar { fill: #fff; stroke: #c8503f; stroke-width: 2.4;
  transition: cx .3s cubic-bezier(.22,1,.36,1), cy .3s cubic-bezier(.22,1,.36,1); }

.tk-yon-gg { cursor: grab; transition: transform .3s cubic-bezier(.22,1,.36,1); }
#tk-yon-svg.suruk .tk-yon-gg { cursor: grabbing; transition: none; }
.tk-yon-gtut { fill: rgba(200,80,63,.1); opacity: 0; transition: opacity .2s ease; }
.tk-yon-gg:hover .tk-yon-gtut, #tk-yon-svg.suruk .tk-yon-gtut { opacity: 1; }
.tk-yon-gnok { fill: #c8503f; stroke: #fff; stroke-width: 2; transform-origin: center; transform-box: fill-box;
  animation: tkGur 1.8s ease-in-out infinite; }
@keyframes tkGur { 0%, 100% { opacity: .78; transform: scale(.94); } 50% { opacity: 1; transform: scale(1.12); } }
.tk-yon-et { font-family: 'Inter', sans-serif; font-size: 10.5px; font-weight: 600; fill: #33405c; }
.tk-yon-et2 { font-family: 'Inter', sans-serif; font-size: 10px; fill: #a8452b; font-weight: 600;
  paint-order: stroke; stroke: #fff; stroke-width: 3; stroke-linejoin: round; }
.tk-yon-acik { margin: 10px 0 0; font-size: .8rem; line-height: 1.55; color: #7b8494; min-height: 2.4em; }

.tk-yon-metre { padding-bottom: 10px; margin-bottom: 4px; border-bottom: 1px dashed rgba(22,35,61,.1);
  display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 4px 10px; }
.tk-yon-metre .rm-lbl { grid-column: 1 / -1; }
.tk-yon-bar { height: 8px; border-radius: 999px; background: rgba(22,35,61,.07); overflow: hidden; }
.tk-yon-bar i { display: block; height: 100%; width: 0%; border-radius: 999px; background: #1f6b4a;
  transition: width .4s cubic-bezier(.22,1,.36,1), background .3s ease; }
.tk-yon-bar i.az { background: #c8503f; }
.tk-yon-bar i.orta { background: #b3872f; }
.tk-yon-bar i.cok { background: #1f6b4a; }
.tk-yon-metre b { font-family: 'Space Grotesk', sans-serif; font-size: 1.05rem; color: #16233d;
  font-variant-numeric: tabular-nums; }
@media (prefers-reduced-motion: reduce) { .tk-yon-gnok, .tk-yon-oru, .tk-yon-kama { animation: none; transition: none; } }

/* feedback sahnesi — 2.5D kesit */
.tk-fb-sahne { position: relative; overflow: hidden; perspective: 1100px; perspective-origin: 55% 45%; }
.tk-fb-sahne::after { content: ""; position: absolute; inset: 0; pointer-events: none; opacity: 0;
  border-radius: inherit; box-shadow: inset 0 0 0 2px rgba(200,80,63,.32), inset 0 0 46px rgba(200,80,63,.2);
  transition: opacity .3s ease; z-index: 2; }
.tk-fb-sahne:has(#tk-fb-svg.cinliyor)::after { opacity: 1; animation: tkFbAmb 1.1s ease-in-out infinite; }
@keyframes tkFbAmb { 0%, 100% { opacity: .45; } 50% { opacity: 1; } }
.tk-fb-3d { transform-style: preserve-3d; will-change: transform;
  transition: transform .5s cubic-bezier(.22,1,.36,1); }
#tk-fb-svg { display: block; width: 100%; height: auto; max-height: 320px; overflow: visible; }
#tk-fb-svg.cinliyor { animation: tkFbSars .09s linear infinite; }
@keyframes tkFbSars { 0%, 100% { transform: translate(0,0); } 25% { transform: translate(.8px,-.5px); }
  75% { transform: translate(-.8px,.5px); } }
.fb-kat { transition: transform .12s linear; }

/* kulak */
.fb-pinna { fill: url(#fb-deri); stroke: rgba(160,105,80,.28); stroke-width: 1.2; }
.fb-konka { fill: url(#fb-konka); opacity: .95; }
.fb-konka-ic { fill: none; stroke: rgba(140,90,70,.22); stroke-width: 5; stroke-linecap: round; }
.fb-heliks { fill: none; stroke: rgba(255,255,255,.5); stroke-width: 4; stroke-linecap: round; }
.fb-antiheliks { fill: none; stroke: rgba(160,105,80,.3); stroke-width: 3.4; stroke-linecap: round; }
.fb-tragus { fill: url(#fb-deri); stroke: rgba(160,105,80,.25); stroke-width: 1; }
.fb-isik { fill: rgba(255,255,255,.42); }

/* kanal kesiti */
.fb-kanal { fill: url(#fb-kanal); }
.fb-kanal-ust { fill: none; stroke: rgba(255,255,255,.6); stroke-width: 2.4; stroke-linecap: round; }
.fb-kanal-alt { fill: none; stroke: rgba(150,95,72,.35); stroke-width: 2.4; stroke-linecap: round; }
.fb-kanal-ic { fill: none; stroke: rgba(160,105,80,.13); stroke-width: 2; stroke-linecap: round; }
.fb-zar { fill: url(#fb-zar); stroke: rgba(120,132,150,.7); stroke-width: 1.2; }
.fb-zar-p { fill: rgba(255,255,255,.55); }

/* cihaz */
.fb-tel { fill: none; stroke: #c3cbd8; stroke-width: 4.6; stroke-linecap: round; }
.fb-cihaz { fill: url(#fb-cihaz); }
.fb-cihaz-isik { fill: none; stroke: rgba(255,255,255,.22); stroke-width: 3; stroke-linecap: round; }
.fb-dome { fill: url(#fb-dome); stroke: rgba(90,105,130,.35); stroke-width: 1; }
.tk-fb-mik { fill: #7fa2e0; }
.tk-fb-mikh { fill: none; stroke: #7fa2e0; stroke-width: 1.6; opacity: 0; transform-origin: center;
  transform-box: fill-box; }
#tk-fb-svg.cinliyor .tk-fb-mikh, #tk-fb-svg.sinirda .tk-fb-mikh { animation: tkFbNb 1.4s ease-out infinite; }
@keyframes tkFbNb { 0% { opacity: .75; transform: scale(1); } 100% { opacity: 0; transform: scale(3.4); } }
.tk-fb-vent { fill: #f7ddcd; stroke: rgba(150,95,72,.3); stroke-width: .8;
  transition: y .45s cubic-bezier(.22,1,.36,1), height .45s cubic-bezier(.22,1,.36,1), opacity .3s ease; }
.tk-fb-et { font-family: 'Inter', sans-serif; font-size: 11px; font-weight: 600; fill: #33405c; }
.tk-fb-et2 { font-family: 'Inter', sans-serif; font-size: 10px; fill: #8b93a3; transition: opacity .3s ease; }

/* akış */
.tk-fb-akis { fill: none; stroke: #1f6b4a; stroke-width: 3.2; stroke-linecap: round;
  stroke-dasharray: 7 9; animation: tkAkis 1.3s linear infinite; filter: drop-shadow(0 0 3px rgba(31,107,74,.3)); }
@keyframes tkAkis { to { stroke-dashoffset: -32; } }
.tk-fb-kacak { fill: none; stroke: #c8503f; stroke-width: 2.2; stroke-linecap: round; stroke-dasharray: 4 8;
  animation: tkAkis2 .9s linear infinite; transition: opacity .35s ease, stroke-width .35s ease; }
@keyframes tkAkis2 { to { stroke-dashoffset: -24; } }
#tk-fb-svg.cinliyor .tk-fb-kacak { animation-duration: .35s; filter: drop-shadow(0 0 4px rgba(200,80,63,.5)); }
.tk-fb-cinlama path { fill: none; stroke: #c8503f; stroke-width: 2.2; stroke-linecap: round; opacity: 0; }
#tk-fb-svg.cinliyor .tk-fb-cinlama path { animation: tkCin .7s ease-out infinite; }
#tk-fb-svg.cinliyor .tk-fb-cinlama path:nth-child(2) { animation-delay: .15s; }
#tk-fb-svg.cinliyor .tk-fb-cinlama path:nth-child(3) { animation-delay: .3s; }
@keyframes tkCin { 0% { opacity: 0; } 40% { opacity: .9; } 100% { opacity: 0; } }

/* kazanç payı göstergesi */
.tk-fb-iz { fill: rgba(22,35,61,.05); stroke: rgba(22,35,61,.08); }
.tk-fb-dol { transition: y .35s cubic-bezier(.22,1,.36,1), height .35s cubic-bezier(.22,1,.36,1), fill .3s ease; }
.tk-fb-dol.iyi { fill: url(#fb-dolgu); }
.tk-fb-dol.sinir { fill: #d1a03f; }
.tk-fb-dol.kotu { fill: #c8503f; animation: tkFbYan .8s ease-in-out infinite; }
@keyframes tkFbYan { 0%, 100% { opacity: 1; } 50% { opacity: .55; } }
.tk-fb-msgc { stroke: #16233d; stroke-width: 1.6; stroke-dasharray: 4 3;
  transition: y1 .35s cubic-bezier(.22,1,.36,1), y2 .35s cubic-bezier(.22,1,.36,1); }
.tk-fb-msge { font-family: 'Space Grotesk', sans-serif; font-size: 10px; font-weight: 700; fill: #16233d;
  transition: y .35s cubic-bezier(.22,1,.36,1); }
.tk-fb-kup { margin: 8px 0 0; font-size: .8rem; line-height: 1.55; color: #7b8494; min-height: 2.4em; }

.tk-durum { margin-top: 10px; padding: 10px 12px; border-radius: 11px; font-size: .84rem; line-height: 1.6; }
.tk-durum.iyi { color: #1a5c40; background: rgba(31,107,74,.08); border-left: 3px solid #1f6b4a; }
.tk-durum.sinir { color: #8a6a1f; background: rgba(179,135,47,.1); border-left: 3px solid #b3872f; }
.tk-durum.kotu { color: #a8452b; background: rgba(200,80,63,.08); border-left: 3px solid #c8503f; }

/* kanal modülü */
.tk-kn-g { stroke: rgba(22,35,61,.08); }
.tk-kn-ax { font-family: 'Inter', sans-serif; font-size: 10px; fill: #97a0b0; }
.tk-kn-hedef { fill: none; stroke: #b3872f; stroke-width: 2.4; stroke-dasharray: 6 4; }
.tk-kn-basamak { fill: none; stroke: #1f6b4a; stroke-width: 2.8; stroke-linejoin: round;
  transition: d .4s cubic-bezier(.22,1,.36,1); }

/* uzaktan mikrofon */
.tk-rm { display: grid; grid-template-columns: minmax(280px, .9fr) 1.1fr; gap: 20px; align-items: stretch; }
.tk-rm-yan { display: flex; flex-direction: column; background: #fff; border: 1px solid rgba(22,35,61,.08);
  border-radius: 18px; padding: 16px 18px; box-shadow: 0 20px 40px -34px rgba(22,35,61,.5); }
.tk-rm-sag { display: flex; flex-direction: column; justify-content: center; }
.tk-rm-aciklama { margin: 12px 0 0; font-size: .87rem; line-height: 1.68; color: #4d5768; }

/* ortam şeması */
.tk-rm-sahne { position: relative; margin-top: 14px; border-radius: 14px; overflow: hidden;
  background: linear-gradient(150deg, #f7f8fb, #eef1f7); border: 1px solid rgba(22,35,61,.06); }
.tk-rm-sahne svg { display: block; width: 100%; height: auto; }
.tk-rm-s { opacity: 0; visibility: hidden; transition: opacity .45s ease; }
.tk-rm-s.gor { opacity: 1; visibility: visible; }
.tk-rm-s .oda { fill: #fff; stroke: rgba(22,35,61,.08); }
.tk-rm-s .masa { fill: rgba(22,35,61,.05); stroke: rgba(22,35,61,.08); }
.tk-rm-s .masa.buyuk { fill: rgba(31,107,74,.05); stroke: rgba(31,107,74,.18); }
.tk-rm-s .tahta { fill: rgba(22,35,61,.1); }
.tk-rm-s .sira, .tk-rm-s .sira rect { fill: rgba(22,35,61,.08); }
.tk-rm-s .araba { fill: #fff; stroke: rgba(22,35,61,.12); stroke-width: 1.4; }
.tk-rm-s .cam { fill: rgba(90,124,196,.1); }
.tk-rm-s .kisi { fill: #16233d; }
.tk-rm-s .kisi.gur { fill: #d4705c; }
.tk-rm-s .kisi.konus { fill: #1f6b4a; }
.tk-rm-s .kisi.ben { fill: #24365c; stroke: #fff; stroke-width: 2; }
.tk-rm-s .ok { fill: none; stroke: #1f6b4a; stroke-width: 2; stroke-dasharray: 5 4; stroke-linecap: round;
  animation: tkRmAk 1.4s linear infinite; }
@keyframes tkRmAk { to { stroke-dashoffset: -18; } }
.tk-rm-s .dalga circle { fill: none; stroke: #d4705c; stroke-width: 1.4; opacity: 0;
  transform-origin: center; transform-box: fill-box; animation: tkRmNb 2.6s ease-out infinite; }
.tk-rm-s .dalga circle:nth-child(2) { animation-delay: .5s; }
.tk-rm-s .dalga.g2 circle { animation-delay: .8s; }
.tk-rm-s .dalga.g3 circle { animation-delay: 1.4s; }
.tk-rm-s .dalga.alt circle { stroke: #b3872f; }
@keyframes tkRmNb { 0% { opacity: .5; transform: scale(.7); } 100% { opacity: 0; transform: scale(1.25); } }
.tk-rm-s .et { font-family: 'Inter', sans-serif; font-size: 9.5px; fill: #8b93a3; }

.tk-rm-cip { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 12px; }
.tk-rm-cip span { display: inline-flex; align-items: baseline; gap: 5px; padding: 5px 10px; border-radius: 999px;
  background: rgba(22,35,61,.04); border: 1px solid rgba(22,35,61,.06); font-family: 'Space Grotesk', sans-serif;
  font-size: .74rem; font-weight: 600; color: #33405c;
  animation: tkRmCip .35s cubic-bezier(.22,1,.36,1) backwards; }
@keyframes tkRmCip { from { opacity: 0; transform: translateY(5px); } to { opacity: 1; transform: none; } }
.tk-rm-cip em { font-style: normal; font-family: 'Inter', sans-serif; font-weight: 500; font-size: .68rem;
  color: #97a0b0; }

/* kazanç kartları */
.tk-rm-grid { display: grid; gap: 12px; }
.tk-rm-kart { position: relative; overflow: hidden; display: grid; grid-template-columns: 1fr 96px;
  grid-template-rows: auto auto auto; align-items: center; gap: 6px 14px; padding: 16px 18px;
  border-radius: 16px; background: #fff; border: 1px solid rgba(22,35,61,.08);
  box-shadow: 0 18px 34px -30px rgba(22,35,61,.5);
  transition: border-color .35s ease, box-shadow .35s ease, transform .3s cubic-bezier(.22,1,.36,1),
    opacity .35s ease; }
.tk-rm-kart::before { content: ""; position: absolute; inset: 0; pointer-events: none; opacity: 0;
  background: radial-gradient(120% 100% at 100% 0%, rgba(31,107,74,.1), transparent 60%);
  transition: opacity .4s ease; }
.tk-rm-kart.vurgu { border-color: rgba(31,107,74,.35); box-shadow: 0 26px 46px -30px rgba(31,107,74,.55); }
.tk-rm-kart.vurgu::before { opacity: 1; }
.tk-rm-kart.sonuk { opacity: .72; }
.tk-rm-kart:hover { transform: translateY(-2px); }
.tk-rm-t { grid-column: 1; font-family: 'Inter', sans-serif; font-size: .95rem; font-weight: 700; color: #16233d; }
.tk-rm-rozet { grid-column: 1; justify-self: start; font-family: 'Inter', sans-serif; font-size: .66rem;
  font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: transparent;
  padding: 0; border-radius: 999px; transition: color .3s ease, background .3s ease, padding .3s ease; }
.tk-rm-rozet.var { color: #1a5c40; background: rgba(31,107,74,.1); padding: 3px 9px;
  animation: tkRmRoz .4s cubic-bezier(.22,1,.36,1); }
.tk-rm-rozet.notr { color: #8b93a3; background: rgba(22,35,61,.05); padding: 3px 9px; }
@keyframes tkRmRoz { from { opacity: 0; transform: scale(.86); } to { opacity: 1; transform: none; } }
.tk-rm-v { grid-column: 2; grid-row: 1 / 4; justify-self: end; align-self: center;
  font-family: 'Space Grotesk', sans-serif; font-size: 1.3rem; font-weight: 700; color: #1f6b4a;
  font-variant-numeric: tabular-nums; }
.tk-rm-kart.sonuk .tk-rm-v { color: #97a0b0; }
.tk-rm-bar { grid-column: 1; position: relative; height: 9px; border-radius: 999px;
  background: rgba(22,35,61,.06); overflow: hidden;
  background-image: repeating-linear-gradient(90deg, rgba(22,35,61,.1) 0 1px, transparent 1px 33.33%); }
.tk-rm-bar i { display: block; height: 100%; width: 0; border-radius: 999px;
  background: linear-gradient(90deg, #6cc39a, #1f6b4a);
  transition: width .7s cubic-bezier(.22,1,.36,1), background .3s ease; }
.tk-rm-bar i.az { background: rgba(22,35,61,.18); }
.tk-rm-bar i.orta { background: linear-gradient(90deg, #9ed3b8, #3f9a72); }
.tk-rm-kart p { grid-column: 1 / -1; margin: 2px 0 0; font-size: .84rem; line-height: 1.6; color: #6a7488; }
.tk-rm-eksen { display: grid; grid-template-columns: repeat(4, 1fr); margin: 10px 18px 0;
  font-family: 'Inter', sans-serif; font-size: .68rem; color: #a3abb8; }
.tk-rm-eksen span:last-child { text-align: right; }

.tk-baglanti { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 12px; margin-top: 16px; }
.tk-bg-kart { display: grid; grid-template-columns: 34px 1fr; grid-template-rows: auto auto; gap: 2px 12px;
  padding: 14px 16px; border-radius: 14px; background: rgba(22,35,61,.03);
  border: 1px solid rgba(22,35,61,.07);
  transition: transform .3s cubic-bezier(.22,1,.36,1), background .3s ease, border-color .3s ease; }
.tk-bg-kart:hover { transform: translateY(-2px); background: #fff; border-color: rgba(90,124,196,.25); }
.tk-bg-kart em { grid-row: 1 / 3; align-self: center; display: grid; place-items: center; width: 34px; height: 34px;
  border-radius: 10px; font-style: normal; font-family: 'Space Grotesk', sans-serif; font-size: .95rem;
  font-weight: 700; color: #3a5a9c; background: rgba(90,124,196,.12); }
.tk-bg-kart b { display: block; font-family: 'Inter', sans-serif; font-size: .89rem; color: #16233d; margin-bottom: 3px; }
.tk-bg-kart i { font-style: normal; font-size: .83rem; line-height: 1.55; color: #6a7488; }
@media (prefers-reduced-motion: reduce) {
  .tk-rm-s .ok, .tk-rm-s .dalga circle, .tk-rm-cip span, .tk-rm-rozet.var { animation: none; }
}

/* ---- binaural: baş gölgesi / ITD / ILD / CROS ---- */
.tk-bin { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(300px, 1fr); gap: 20px;
  align-items: stretch; margin-bottom: 18px; }
.tk-bin-sahne { display: flex; align-items: center; justify-content: center; background: #fff;
  border: 1px solid rgba(22,35,61,.08); border-radius: 20px; padding: 12px;
  box-shadow: 0 22px 44px -34px rgba(22,35,61,.5); }
#tk-bin-svg { display: block; width: 100%; height: auto; max-height: 400px; }
.tk-bin-yan { display: flex; flex-direction: column; gap: 12px; }

.tk-bin-oda { fill: url(#bin-arka); stroke: rgba(22,35,61,.07); stroke-dasharray: 3 5; }
.tk-bin-ax text { font-family: 'Inter', sans-serif; font-size: 9.5px; fill: #a3abb8; }
.tk-bin-kafa { fill: url(#bin-bas); stroke: rgba(160,105,80,.3); stroke-width: 1.2; }
.tk-bin-burun { fill: #e8c3ab; stroke: rgba(160,105,80,.3); stroke-width: 1; }
.tk-bin-kulak { fill: #e0b79e; stroke: rgba(160,105,80,.35); stroke-width: 1; }
.tk-bin-et { font-family: 'Inter', sans-serif; font-size: 10px; fill: #8b93a3; }

.tk-bin-golge { fill: none; stroke: #16233d; stroke-width: 20; stroke-linecap: round;
  stroke-dasharray: 155 470; filter: blur(6px); opacity: 0;
  transition: opacity .35s ease, transform .35s cubic-bezier(.22,1,.36,1); }

.tk-bin-isin { stroke: #1f6b4a; stroke-linecap: round; stroke-dasharray: 6 7;
  animation: binAk 1.2s linear infinite; transition: opacity .3s ease, stroke-width .3s ease; }
@keyframes binAk { to { stroke-dashoffset: -26; } }
.tk-bin-isin.pasif { stroke: #b9c0cc; stroke-dasharray: 2 6; }
.tk-bin-cros { fill: none; stroke: #b3872f; stroke-width: 2.6; stroke-dasharray: 7 6; stroke-linecap: round;
  transition: opacity .35s ease; animation: binAk2 1s linear infinite; }
@keyframes binAk2 { to { stroke-dashoffset: -26; } }

.tk-bin-cihaz { stroke: #fff; stroke-width: 2; transition: fill .3s ease; }
.tk-bin-cihaz.aktif { fill: #3a5a9c; }
.tk-bin-cihaz.mik { fill: #b3872f; }
.tk-bin-cihaz.yok { fill: #cfd5df; }

.tk-bin-kay { cursor: grab; transition: transform .3s cubic-bezier(.22,1,.36,1); }
#tk-bin-svg.suruk .tk-bin-kay { cursor: grabbing; transition: none; }
.tk-bin-ktut { fill: rgba(200,80,63,.08); opacity: 0; transition: opacity .2s ease; }
.tk-bin-kay:hover .tk-bin-ktut, #tk-bin-svg.suruk .tk-bin-ktut { opacity: 1; }
.tk-bin-dalga { fill: none; stroke: #c8503f; stroke-width: 1.6; opacity: 0; transform-origin: center;
  transform-box: fill-box; animation: binNb 1.9s ease-out infinite; }
@keyframes binNb { 0% { opacity: .55; transform: scale(.8); } 100% { opacity: 0; transform: scale(2); } }
.tk-bin-knok { fill: #c8503f; stroke: #fff; stroke-width: 2; }
.tk-bin-ip { font-family: 'Inter', sans-serif; font-size: 9.5px; fill: #aab2c0; }
.tk-bin-acik { margin: 10px 0 0; font-size: .8rem; line-height: 1.55; color: #7b8494; min-height: 3.2em; }

.tk-bin-kulaklar { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-bottom: 10px; }
.tk-bin-kk { padding: 10px 12px; border-radius: 12px; background: rgba(22,35,61,.03);
  border: 1px solid rgba(22,35,61,.06); transition: opacity .3s ease, background .3s ease; }
.tk-bin-kk span { display: block; font-family: 'Inter', sans-serif; font-size: .72rem; color: #8b93a3; }
.tk-bin-kk b { display: block; font-family: 'Space Grotesk', sans-serif; font-size: 1.05rem; color: #16233d;
  font-variant-numeric: tabular-nums; margin: 1px 0 6px; }
.tk-bin-kk i { display: block; height: 6px; border-radius: 999px; background: #1f6b4a; width: 100%;
  transition: width .4s cubic-bezier(.22,1,.36,1), background .3s ease; }
.tk-bin-kk.kisik i { background: #c8503f; }
.tk-bin-kk.kapali { opacity: .45; }
.tk-bin-kk.kapali i { background: #cfd5df; }
.tk-sonuc-sat b.sonuk { color: #a3abb8; }
.tk-sonuc-sat b.iyi { color: #1a5c40; }
.tk-sonuc-sat b.kotu { color: #a8452b; }
.tk-bin-hkm { margin-top: 10px; padding: 10px 12px; border-radius: 11px; font-size: .84rem; line-height: 1.55;
  transition: background .3s ease, color .3s ease; }
.tk-bin-hkm.iyi { color: #1a5c40; background: rgba(31,107,74,.08); border-left: 3px solid #1f6b4a; }
.tk-bin-hkm.kotu { color: #a8452b; background: rgba(200,80,63,.08); border-left: 3px solid #c8503f; }
@media (max-width: 900px) { .tk-bin { grid-template-columns: 1fr; } }
@media (prefers-reduced-motion: reduce) {
  .tk-bin-isin, .tk-bin-cros, .tk-bin-dalga { animation: none; }
}

/* ---- kanıt terazisi: neyin ne kadar önemi var ---- */
.tk-kt { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(280px, .95fr); gap: 18px;
  align-items: stretch; margin-bottom: 18px; }
.tk-kt-sol, .tk-kt-sag { background: #fff; border: 1px solid rgba(22,35,61,.08); border-radius: 20px;
  padding: 18px 20px; box-shadow: 0 22px 44px -34px rgba(22,35,61,.5); }
.tk-kt-sag { display: flex; flex-direction: column; }
.tk-kt-alt { margin: 6px 0 12px; font-size: .82rem; line-height: 1.6; color: #7b8494; }

.tk-kt-liste { display: flex; flex-direction: column; gap: 8px; }
.tk-kt-sat { position: relative; display: grid; grid-template-columns: 22px 1fr; gap: 2px 12px;
  padding: 11px 13px; border-radius: 13px; cursor: pointer;
  background: rgba(22,35,61,.025); border: 1px solid rgba(22,35,61,.06);
  transition: background .28s ease, border-color .28s ease, transform .28s cubic-bezier(.22,1,.36,1); }
.tk-kt-sat:hover { transform: translateX(2px); }
.tk-kt-sat input { position: absolute; opacity: 0; width: 0; height: 0; }
.tk-kt-sat .kutu { grid-row: 1 / 3; align-self: center; width: 22px; height: 22px; border-radius: 7px;
  background: #fff; border: 1.6px solid rgba(22,35,61,.16); position: relative;
  transition: background .25s ease, border-color .25s ease; }
.tk-kt-sat .kutu::after { content: ""; position: absolute; left: 7px; top: 3px; width: 5px; height: 10px;
  border: solid #fff; border-width: 0 2.2px 2.2px 0; transform: rotate(45deg) scale(0);
  transition: transform .25s cubic-bezier(.22,1,.36,1); }
.tk-kt-sat input:checked ~ .kutu { background: #1f6b4a; border-color: #1f6b4a; }
.tk-kt-sat input:checked ~ .kutu::after { transform: rotate(45deg) scale(1); }
.tk-kt-sat input:focus-visible ~ .kutu { outline: 2px solid #c9603a; outline-offset: 2px; }
.tk-kt-sat input:checked ~ b { color: #16233d; }
.tk-kt-sat b { font-family: 'Inter', sans-serif; font-size: .88rem; font-weight: 700; color: #5c6577; }
.tk-kt-sat i { font-style: normal; font-size: .76rem; line-height: 1.45; color: #97a0b0; }
.tk-kt-sat.paket { background: rgba(201,96,58,.04); border-color: rgba(201,96,58,.16); }
.tk-kt-sat.paket input:checked ~ .kutu { background: #c9603a; border-color: #c9603a; }

.tk-kt-hazir { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.tk-kt-hazir button { cursor: pointer; padding: 8px 12px; border-radius: 999px; font-family: 'Inter', sans-serif;
  font-size: .78rem; font-weight: 600; color: #33405c; background: #fff;
  border: 1px solid rgba(22,35,61,.12);
  transition: transform .26s cubic-bezier(.22,1,.36,1), border-color .26s ease, box-shadow .26s ease; }
.tk-kt-hazir button:hover { transform: translateY(-1px); border-color: rgba(90,124,196,.45);
  box-shadow: 0 12px 22px -18px rgba(22,35,61,.7); }

.tk-kt-metre { display: flex; flex-direction: column; align-items: center; gap: 6px; }
.tk-kt-halka { position: relative; width: 132px; }
.tk-kt-halka svg { display: block; width: 100%; height: auto; transform: rotate(-90deg); }
.tk-kt-halka .iz { fill: none; stroke: rgba(22,35,61,.07); stroke-width: 10; }
.tk-kt-halka .dolu { fill: none; stroke-width: 10; stroke-linecap: round;
  transition: stroke-dashoffset .7s cubic-bezier(.22,1,.36,1), stroke .35s ease; }
.tk-kt-halka .dolu.iyi { stroke: #1f6b4a; }
.tk-kt-halka .dolu.orta { stroke: #b3872f; }
.tk-kt-halka .dolu.kotu { stroke: #c8503f; }
.tk-kt-halka b { position: absolute; inset: 0; display: grid; place-items: center;
  font-family: 'Space Grotesk', sans-serif; font-size: 1.9rem; font-weight: 700; color: #16233d;
  font-variant-numeric: tabular-nums; }

.tk-kt-bar { display: flex; flex-direction: column; gap: 7px; margin-top: 14px; }
.tk-kt-cb { display: grid; grid-template-columns: 1fr 74px 30px; align-items: center; gap: 10px;
  font-family: 'Inter', sans-serif; font-size: .78rem; color: #97a0b0;
  animation: ktGir .3s cubic-bezier(.22,1,.36,1) backwards; }
@keyframes ktGir { from { opacity: 0; transform: translateY(3px); } to { opacity: 1; transform: none; } }
.tk-kt-cb.ac { color: #33405c; }
.tk-kt-cb u { display: block; height: 7px; border-radius: 999px; background: rgba(22,35,61,.06);
  text-decoration: none; overflow: hidden; }
.tk-kt-cb u i { display: block; height: 100%; border-radius: 999px; background: #1f6b4a; width: 0;
  transition: width .5s cubic-bezier(.22,1,.36,1); }
.tk-kt-cb.pkt u i { background: #c9603a; }
.tk-kt-cb b { font-family: 'Space Grotesk', sans-serif; font-size: .82rem; text-align: right;
  color: #b3bac6; font-variant-numeric: tabular-nums; }
.tk-kt-cb.ac b { color: #16233d; }

.tk-kt-hkm { margin: 14px 0 0; padding: 11px 13px; border-radius: 12px; font-size: .84rem; line-height: 1.6;
  color: #4d5768; background: rgba(22,35,61,.04); border-left: 3px solid rgba(22,35,61,.15);
  transition: background .3s ease, border-color .3s ease, color .3s ease; }
.tk-kt-hkm.iyi { color: #1a5c40; background: rgba(31,107,74,.08); border-left-color: #1f6b4a; }
.tk-kt-hkm.kotu { color: #a8452b; background: rgba(200,80,63,.08); border-left-color: #c8503f; }
.tk-kt-disc { margin: 10px 0 0; font-size: .72rem; line-height: 1.55; color: #a3abb8; }
@media (max-width: 900px) { .tk-kt { grid-template-columns: 1fr; } }
@media (prefers-reduced-motion: reduce) { .tk-kt-cb { animation: none; } }

/* ---- datalogging: kaydı okumak ---- */
.tk-dl { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(300px, 1fr); gap: 18px;
  align-items: stretch; margin-bottom: 18px; }
.tk-dl-rapor { position: relative; overflow: hidden; background: linear-gradient(150deg, #16233d, #24365c);
  color: #fff; border-radius: 20px; padding: 20px 22px; box-shadow: 0 28px 54px -36px rgba(22,35,61,.95); }
.tk-dl-rapor::before { content: ""; position: absolute; top: -70px; right: -50px; width: 200px; height: 200px;
  border-radius: 50%; background: radial-gradient(circle, rgba(90,124,196,.3), transparent 70%); pointer-events: none; }
.tk-dl-et { font-family: 'Inter', sans-serif; font-size: .64rem; font-weight: 700; letter-spacing: .14em;
  text-transform: uppercase; color: #8fa8d6; }
.tk-dl-bas h3 { margin: 3px 0 16px; font-family: 'Inter', sans-serif; font-size: 1rem; font-weight: 700; color: #fff; }
.tk-dl-lbl { display: block; font-family: 'Inter', sans-serif; font-size: .68rem; font-weight: 700;
  letter-spacing: .1em; text-transform: uppercase; color: #8fa8d6; margin-bottom: 8px; }

.tk-dl-ust { display: flex; align-items: center; gap: 16px; margin-bottom: 18px; }
.tk-dl-halka { position: relative; width: 92px; flex: none; }
.tk-dl-halka svg { display: block; width: 100%; height: auto; transform: rotate(-90deg); }
.tk-dl-halka .iz { fill: none; stroke: rgba(255,255,255,.14); stroke-width: 9; }
.tk-dl-halka .dolu { fill: none; stroke-width: 9; stroke-linecap: round;
  transition: stroke-dashoffset .7s cubic-bezier(.22,1,.36,1), stroke .35s ease; }
.tk-dl-halka .dolu.iyi { stroke: #4bbf87; } .tk-dl-halka .dolu.orta { stroke: #d1a03f; }
.tk-dl-halka .dolu.kotu { stroke: #e0725c; }
.tk-dl-halka b { position: absolute; inset: 0; display: grid; place-items: center;
  font-family: 'Space Grotesk', sans-serif; font-size: 1.25rem; font-weight: 700; color: #fff;
  font-variant-numeric: tabular-nums; }
.tk-dl-ozet p { margin: 0 0 8px; font-family: 'Space Grotesk', sans-serif; font-size: 1.05rem; color: #fff; }
.tk-dl-rozet { display: inline-block; padding: 4px 10px; border-radius: 999px; font-family: 'Inter', sans-serif;
  font-size: .7rem; font-weight: 700; transition: background .3s ease, color .3s ease; }
.tk-dl-rozet.iyi { color: #9ce6c2; background: rgba(75,191,135,.16); }
.tk-dl-rozet.orta { color: #f0d194; background: rgba(209,160,63,.18); }
.tk-dl-rozet.kotu { color: #f0b3a4; background: rgba(224,114,92,.18); }

.tk-dl-yigin { display: flex; height: 16px; border-radius: 999px; overflow: hidden;
  background: rgba(255,255,255,.1); }
.tk-dl-yigin span { display: block; height: 100%; width: 0;
  transition: width .6s cubic-bezier(.22,1,.36,1); }
.tk-dl-leg { display: flex; flex-wrap: wrap; gap: 6px 14px; margin: 10px 0 18px; }
.tk-dl-leg span { display: inline-flex; align-items: center; gap: 6px; font-family: 'Inter', sans-serif;
  font-size: .74rem; color: #b8c6dd; }
.tk-dl-leg em { width: 9px; height: 9px; border-radius: 3px; }
.tk-dl-leg b { font-family: 'Space Grotesk', sans-serif; color: #fff; }

.tk-dl-vol { display: flex; align-items: center; gap: 12px; }
.tk-dl-volbar { position: relative; flex: 1; height: 9px; border-radius: 999px; background: rgba(255,255,255,.12); }
.tk-dl-volbar u { position: absolute; left: 50%; top: -3px; bottom: -3px; width: 2px;
  background: rgba(255,255,255,.4); }
.tk-dl-volbar i { position: absolute; top: 0; bottom: 0; width: 0; border-radius: 999px;
  transition: width .5s cubic-bezier(.22,1,.36,1), left .5s cubic-bezier(.22,1,.36,1), background .3s ease; }
.tk-dl-volbar i.iyi { background: #4bbf87; } .tk-dl-volbar i.kotu { background: #e0725c; }
.tk-dl-vol b { font-family: 'Space Grotesk', sans-serif; font-size: .95rem; color: #fff; min-width: 52px;
  text-align: right; font-variant-numeric: tabular-nums; }
.tk-dl-vol b.kotu { color: #f0b3a4; }
.tk-dl-volet { margin: 8px 0 0; font-size: .74rem; color: rgba(184,198,221,.75); }

.tk-dl-yan { display: flex; flex-direction: column; gap: 12px; }
.tk-dl-vaka { display: flex; flex-direction: column; gap: 8px; }
.tk-dl-vaka button { cursor: pointer; text-align: left; padding: 11px 14px; border-radius: 13px; background: #fff;
  border: 1px solid rgba(22,35,61,.08); box-shadow: 0 14px 28px -26px rgba(22,35,61,.6);
  transition: transform .28s cubic-bezier(.22,1,.36,1), border-color .28s ease, box-shadow .28s ease; }
.tk-dl-vaka button:hover { transform: translateY(-2px); border-color: rgba(90,124,196,.3); }
.tk-dl-vaka button.aktif { border-color: rgba(31,107,74,.4); box-shadow: 0 20px 34px -26px rgba(31,107,74,.6); }
.tk-dl-vaka b { display: block; font-family: 'Inter', sans-serif; font-size: .86rem; font-weight: 700;
  color: #16233d; margin-bottom: 2px; }
.tk-dl-vaka i { font-style: normal; font-size: .74rem; color: #97a0b0; }

.tk-dl-okuma { flex: 1; background: #fff; border: 1px solid rgba(22,35,61,.08); border-radius: 16px;
  padding: 16px 18px; box-shadow: 0 18px 34px -30px rgba(22,35,61,.5); }
.tk-dl-lbl2 { display: block; font-family: 'Inter', sans-serif; font-size: .66rem; font-weight: 700;
  letter-spacing: .1em; text-transform: uppercase; color: #a3abb8; margin-bottom: 6px; }
.tk-dl-okuma p { margin: 0 0 14px; font-size: .86rem; line-height: 1.65; color: #4d5768; }
.tk-dl-adim { display: flex; flex-wrap: wrap; gap: 6px; }
.tk-dl-adim span { display: inline-flex; padding: 5px 11px; border-radius: 999px; font-family: 'Inter', sans-serif;
  font-size: .74rem; font-weight: 600; color: #1a5c40; background: rgba(31,107,74,.09);
  border: 1px solid rgba(31,107,74,.16);
  animation: dlCip .35s cubic-bezier(.22,1,.36,1) backwards; }
@keyframes dlCip { from { opacity: 0; transform: translateY(5px); } to { opacity: 1; transform: none; } }
.tk-dl-disc { margin: 0; font-size: .72rem; line-height: 1.55; color: #a3abb8; }
@media (max-width: 900px) { .tk-dl { grid-template-columns: 1fr; } }
@media (prefers-reduced-motion: reduce) { .tk-dl-adim span { animation: none; } }

/* ---- işleme gecikmesi / tarak filtre ---- */
.tk-gc { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(280px, 1fr); gap: 18px;
  align-items: stretch; margin-bottom: 18px; }
.tk-gc-plot { display: flex; flex-direction: column; justify-content: center; background: #fff;
  border: 1px solid rgba(22,35,61,.08); border-radius: 20px; padding: 16px 18px 12px;
  box-shadow: 0 22px 44px -34px rgba(22,35,61,.5); }
#tk-gc-svg { display: block; width: 100%; height: auto; }
.tk-gc-yan { display: flex; flex-direction: column; gap: 12px; }

#tk-gc-svg .g { stroke: rgba(22,35,61,.07); stroke-width: 1; }
#tk-gc-svg .eks { stroke: rgba(22,35,61,.14); stroke-width: 1; }
#tk-gc-svg .sifir { stroke: rgba(22,35,61,.2); stroke-width: 1; stroke-dasharray: 4 4; }
#tk-gc-svg .ax { font-family: 'Inter', sans-serif; font-size: 9.5px; fill: #97a0b0; }
#tk-gc-svg .serit { font-family: 'Inter', sans-serif; font-size: 9.5px; font-weight: 600; fill: #7b8494; }
.tk-gc-cent line { stroke: rgba(200,80,63,.55); stroke-width: 1.2; }
.tk-gc-cent text { font-family: 'Inter', sans-serif; font-size: 9px; font-weight: 600; fill: #a8452b;
  paint-order: stroke; stroke: #fff; stroke-width: 3; stroke-linejoin: round; }
.tk-gc-cent { transition: opacity .3s ease; }

.tk-gc-dog { fill: none; stroke: #5a7cc4; stroke-width: 1.8;
  transition: d .3s cubic-bezier(.22,1,.36,1); }
.tk-gc-gec { fill: none; stroke: #c9603a; stroke-width: 1.8;
  transition: d .3s cubic-bezier(.22,1,.36,1); }
.tk-gc-top { fill: none; stroke: #1f6b4a; stroke-width: 2.4; stroke-linejoin: round;
  filter: drop-shadow(0 0 4px rgba(31,107,74,.25)); transition: d .3s cubic-bezier(.22,1,.36,1); }
.tk-gc-tau { stroke: #16233d; stroke-width: 1.2; stroke-dasharray: 3 3;
  transition: x2 .3s cubic-bezier(.22,1,.36,1); }
.tk-gc-taue { font-family: 'Space Grotesk', sans-serif; font-size: 10px; font-weight: 700; fill: #16233d;
  paint-order: stroke; stroke: #fff; stroke-width: 3; stroke-linejoin: round;
  transition: x .3s cubic-bezier(.22,1,.36,1); }
.tk-gc-alan { fill: url(#gc-comb); transition: d .3s cubic-bezier(.22,1,.36,1); }
.tk-gc-egri { fill: none; stroke: #c9603a; stroke-width: 2.2; stroke-linejoin: round;
  transition: d .3s cubic-bezier(.22,1,.36,1); }

.tk-gc-leg { display: flex; flex-wrap: wrap; gap: 8px 16px; margin-top: 8px; }
.tk-gc-leg span { display: inline-flex; align-items: center; gap: 6px; font-family: 'Inter', sans-serif;
  font-size: .74rem; color: #6a7488; }
.tk-gc-leg span::before { content: ""; width: 14px; height: 3px; border-radius: 2px; }
.tk-gc-leg .l-d::before { background: #5a7cc4; }
.tk-gc-leg .l-g::before { background: #c9603a; }
.tk-gc-leg .l-t::before { background: #1f6b4a; height: 4px; }
.tk-gc-leg .l-0 { color: #a3abb8; }
.tk-gc-leg .l-0::before { background: repeating-linear-gradient(90deg, #a3abb8 0 4px, transparent 4px 8px); }
.tk-gc-acik { margin: 10px 0 0; font-size: .8rem; line-height: 1.55; color: #7b8494; min-height: 3.2em; }

.tk-gc-hkm { margin-top: 10px; padding: 10px 12px; border-radius: 11px; font-size: .84rem; line-height: 1.55;
  transition: background .3s ease, color .3s ease; }
.tk-gc-hkm.iyi { color: #1a5c40; background: rgba(31,107,74,.08); border-left: 3px solid #1f6b4a; }
.tk-gc-hkm.kotu { color: #a8452b; background: rgba(200,80,63,.08); border-left: 3px solid #c8503f; }
@media (max-width: 900px) { .tk-gc { grid-template-columns: 1fr; } }
@media (prefers-reduced-motion: reduce) {
  .tk-gc-dog, .tk-gc-gec, .tk-gc-top, .tk-gc-egri, .tk-gc-alan, .tk-gc-tau, .tk-gc-taue { transition: none; }
}

/* ---- tinnitus: karıştırma noktası ---- */
.tk-tn { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(280px, 1fr); gap: 18px;
  align-items: stretch; margin-bottom: 16px; }
.tk-tn-plot { display: flex; flex-direction: column; justify-content: center; background: #fff;
  border: 1px solid rgba(22,35,61,.08); border-radius: 20px; padding: 16px 18px 12px;
  box-shadow: 0 22px 44px -34px rgba(22,35,61,.5); }
#tk-tn-svg { display: block; width: 100%; height: auto; margin-top: 6px; }
.tk-tn-yan { display: flex; flex-direction: column; gap: 12px; }
#tk-tn-svg .g { stroke: rgba(22,35,61,.07); }
#tk-tn-svg .eks { stroke: rgba(22,35,61,.14); }
#tk-tn-svg .ax { font-family: 'Inter', sans-serif; font-size: 9.5px; fill: #97a0b0; }
.tk-tn-bant { fill: rgba(31,107,74,.07); stroke: rgba(31,107,74,.22); stroke-width: 1; stroke-dasharray: 4 4; }
.tk-tn-bet { font-family: 'Inter', sans-serif; font-size: 9.5px; font-weight: 700; fill: #1a5c40;
  paint-order: stroke; stroke: #fff; stroke-width: 3; stroke-linejoin: round; }
.tk-tn-gurultu { fill: url(#tn-gur); stroke: #5a7cc4; stroke-width: 1.8;
  transition: d .35s cubic-bezier(.22,1,.36,1); }
.tk-tn-cinlama { fill: none; stroke: #c8503f; stroke-width: 2.6; stroke-linejoin: round;
  filter: drop-shadow(0 0 5px rgba(200,80,63,.3)); transition: d .35s cubic-bezier(.22,1,.36,1); }
#tk-tn-svg.caliyor .tk-tn-cinlama { animation: tnNb 1.6s ease-in-out infinite; }
@keyframes tnNb { 0%, 100% { opacity: .75; } 50% { opacity: 1; } }
.tk-tn-fc { stroke: rgba(200,80,63,.35); stroke-width: 1.2; stroke-dasharray: 3 3;
  transition: x1 .35s ease, x2 .35s ease; }
.tk-tn-fet { font-family: 'Inter', sans-serif; font-size: 9.5px; font-weight: 700; fill: #a8452b;
  paint-order: stroke; stroke: #fff; stroke-width: 3; stroke-linejoin: round;
  transition: x .35s cubic-bezier(.22,1,.36,1); }
.tk-tn-nokta { fill: #fff; stroke: #5a7cc4; stroke-width: 2.4;
  transition: cx .35s cubic-bezier(.22,1,.36,1), cy .35s cubic-bezier(.22,1,.36,1); }
.tk-tn-nabiz { fill: none; stroke: #5a7cc4; stroke-width: 1.6; opacity: 0; transform-origin: center;
  transform-box: fill-box;
  transition: cx .35s cubic-bezier(.22,1,.36,1), cy .35s cubic-bezier(.22,1,.36,1); }
#tk-tn-svg.caliyor .tk-tn-nabiz { animation: tnNbz 1.5s ease-out infinite; }
@keyframes tnNbz { 0% { opacity: .6; transform: scale(1); } 100% { opacity: 0; transform: scale(2.8); } }
.tk-tn-leg .l-b::before { width: 14px; height: 9px; border-radius: 3px; background: rgba(31,107,74,.12);
  border: 1px dashed rgba(31,107,74,.4); }
.tk-tn-btn { display: flex; gap: 8px; margin-top: 12px; }
.tk-tn-hkm { margin-top: 10px; padding: 10px 12px; border-radius: 11px; font-size: .84rem; line-height: 1.55;
  transition: background .3s ease, color .3s ease; }
.tk-tn-hkm.iyi { color: #1a5c40; background: rgba(31,107,74,.08); border-left: 3px solid #1f6b4a; }
.tk-tn-hkm.kotu { color: #a8452b; background: rgba(200,80,63,.08); border-left: 3px solid #c8503f; }
.tk-sonuc-sat b.iyi { color: #1a5c40; } .tk-sonuc-sat b.kotu { color: #a8452b; }

/* ---- arıza rehberi ---- */
.tk-ar { background: #fff; border: 1px solid rgba(22,35,61,.08); border-radius: 20px; padding: 18px 20px;
  box-shadow: 0 22px 44px -34px rgba(22,35,61,.5); margin-bottom: 18px; }
.tk-ar-sec { display: flex; flex-wrap: wrap; gap: 8px; margin: 8px 0 16px; }
.tk-ar-sec button { cursor: pointer; padding: 8px 14px; border-radius: 999px; font-family: 'Inter', sans-serif;
  font-size: .82rem; font-weight: 600; color: #4d5768; background: rgba(22,35,61,.03);
  border: 1px solid rgba(22,35,61,.08);
  transition: transform .26s cubic-bezier(.22,1,.36,1), color .26s ease, background .26s ease,
    border-color .26s ease, box-shadow .26s ease; }
.tk-ar-sec button:hover { transform: translateY(-1px); border-color: rgba(90,124,196,.35); }
.tk-ar-sec button.aktif { color: #fff; background: linear-gradient(135deg, #1d2a44, #3a5a9c);
  border-color: transparent; box-shadow: 0 14px 26px -18px rgba(29,42,68,.9); }
.tk-ar-adim { list-style: none; counter-reset: ar; margin: 0; padding: 0; display: grid; gap: 8px; }
.tk-ar-adim li { counter-increment: ar; position: relative; padding: 11px 14px 11px 46px; border-radius: 13px;
  background: rgba(22,35,61,.025); border: 1px solid rgba(22,35,61,.06);
  font-size: .87rem; line-height: 1.6; color: #4d5768;
  animation: arGir .35s cubic-bezier(.22,1,.36,1) backwards; }
.tk-ar-adim li::before { content: counter(ar); position: absolute; left: 13px; top: 11px;
  display: grid; place-items: center; width: 22px; height: 22px; border-radius: 7px;
  font-family: 'Space Grotesk', sans-serif; font-size: .74rem; font-weight: 700; color: #fff;
  background: linear-gradient(135deg, #1d2a44, #3a5a9c); }
@keyframes arGir { from { opacity: 0; transform: translateX(-6px); } to { opacity: 1; transform: none; } }
.tk-ar-not { margin: 14px 0 0; padding: 11px 13px; border-radius: 12px; font-size: .84rem; line-height: 1.65;
  color: #4d5768; background: rgba(90,124,196,.06); border-left: 3px solid #5a7cc4; }
@media (max-width: 900px) { .tk-tn { grid-template-columns: 1fr; } }
@media (prefers-reduced-motion: reduce) {
  #tk-tn-svg.caliyor .tk-tn-cinlama, #tk-tn-svg.caliyor .tk-tn-nabiz, .tk-ar-adim li { animation: none; }
}

/* seviye / otomatik / gecikme kartları */
.tk-sev, .tk-oto, .tk-gec { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 16px; }
.tk-sev-k, .tk-oto-k, .tk-gec-k { background: #fff; border: 1px solid rgba(22,35,61,.08); border-radius: 20px;
  padding: 22px; box-shadow: 0 22px 44px -34px rgba(22,35,61,.5);
  transition: transform .3s cubic-bezier(.22,1,.36,1), box-shadow .3s ease; }
.tk-sev-k:hover, .tk-oto-k:hover, .tk-gec-k:hover { transform: translateY(-3px);
  box-shadow: 0 32px 54px -34px rgba(22,35,61,.65); }
.tk-sev-et { display: inline-block; font-family: 'Inter', sans-serif; font-size: .64rem; font-weight: 700;
  letter-spacing: .12em; text-transform: uppercase; color: #b3603f; margin-bottom: 6px; }
.tk-sev-k h3, .tk-oto-k h3, .tk-gec-k h3 { font-family: 'Inter', sans-serif; font-size: 1rem; font-weight: 700;
  color: #16233d; margin: 0 0 8px; }
.tk-sev-k p, .tk-oto-k p, .tk-gec-k p { margin: 0; font-size: .88rem; line-height: 1.7; color: #4d5768; }
.tk-oto-ik { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 12px; margin-bottom: 10px;
  font-size: 1.05rem; color: #3f5fa6; background: rgba(90,124,196,.1); border: 1px solid rgba(90,124,196,.16); }
.tk-gec-no { display: inline-block; font-family: 'Space Grotesk', sans-serif; font-size: .8rem; font-weight: 700;
  color: #b3603f; margin-bottom: 6px; }

/* mini test */
.tk-quiz { position: relative; overflow: hidden; background: #fff; border: 1px solid rgba(22,35,61,.08);
  border-radius: 22px; padding: 22px 24px 20px; box-shadow: 0 24px 46px -34px rgba(22,35,61,.55); }
.tk-q-ust { display: flex; align-items: center; gap: 14px; margin-bottom: 16px; }
.tk-q-say, .tk-q-puan { font-family: 'Inter', sans-serif; font-size: .76rem; font-weight: 600; color: #97a0b0; white-space: nowrap; }
.tk-q-say b, .tk-q-puan b { font-family: 'Space Grotesk', sans-serif; font-size: .95rem; color: #16233d; }
.tk-q-nokta { flex: 1; display: flex; gap: 5px; }
.tk-q-nokta span { flex: 1; height: 5px; border-radius: 999px; background: rgba(22,35,61,.08);
  transition: background .35s ease, transform .35s cubic-bezier(.22,1,.36,1); }
.tk-q-nokta span.simdi { background: #3a5a9c; transform: scaleY(1.6); }
.tk-q-nokta span.iyi { background: #1f6b4a; }
.tk-q-nokta span.kotu { background: #c8503f; }

.tk-q-soru { font-family: 'Newsreader', serif; font-size: 1.25rem; line-height: 1.5; color: #16233d; margin: 0 0 16px; }
.tk-q-secenek { display: grid; gap: 8px; }
.tk-q-s { display: flex; align-items: center; gap: 12px; text-align: left; cursor: pointer;
  padding: 12px 16px; border-radius: 13px; background: #fff; border: 1px solid rgba(22,35,61,.1);
  font-family: 'Inter', sans-serif; font-size: .9rem; font-weight: 600; color: #33405c;
  animation: qGir .35s cubic-bezier(.22,1,.36,1) backwards;
  transition: border-color .22s ease, background .22s ease, transform .22s cubic-bezier(.22,1,.36,1),
    box-shadow .22s ease; }
@keyframes qGir { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }
.tk-q-s em { flex: none; display: grid; place-items: center; width: 24px; height: 24px; border-radius: 8px;
  font-style: normal; font-family: 'Space Grotesk', sans-serif; font-size: .76rem; font-weight: 700;
  color: #6a7488; background: rgba(22,35,61,.05); transition: background .22s ease, color .22s ease; }
.tk-q-s:hover:not(:disabled) { border-color: rgba(90,124,196,.45); background: rgba(90,124,196,.04);
  transform: translateX(3px); box-shadow: 0 14px 26px -22px rgba(22,35,61,.8); }
.tk-q-s:hover:not(:disabled) em { background: rgba(90,124,196,.16); color: #3a5a9c; }
.tk-q-s:focus-visible { outline: 2px solid #c9603a; outline-offset: 2px; }
.tk-q-s:disabled { cursor: default; }
.tk-q-s.dogru { border-color: #1f6b4a; background: rgba(31,107,74,.08); color: #1a5c40;
  animation: qDog .45s cubic-bezier(.22,1,.36,1); }
.tk-q-s.dogru em { background: #1f6b4a; color: #fff; }
@keyframes qDog { 0% { transform: scale(1); } 45% { transform: scale(1.015); } 100% { transform: scale(1); } }
.tk-q-s.yanlis { border-color: #c8503f; background: rgba(200,80,63,.07); color: #a8452b;
  animation: qYan .3s ease; }
.tk-q-s.yanlis em { background: #c8503f; color: #fff; }
@keyframes qYan { 0%, 100% { transform: translateX(0); } 25% { transform: translateX(-4px); }
  75% { transform: translateX(4px); } }
.tk-q-s:disabled:not(.dogru):not(.yanlis) { opacity: .5; }

.tk-q-geri { max-height: 0; overflow: hidden; margin-top: 0; font-size: .87rem; line-height: 1.68;
  transition: max-height .45s cubic-bezier(.22,1,.36,1), margin-top .3s ease, padding .3s ease; }
.tk-q-geri.gor { max-height: 320px; margin-top: 14px; padding: 13px 15px; border-radius: 13px; }
.tk-q-geri.iyi { color: #1a5c40; background: rgba(31,107,74,.07); border-left: 3px solid #1f6b4a; }
.tk-q-geri.kotu { color: #a8452b; background: rgba(200,80,63,.06); border-left: 3px solid #c8503f; }
.tk-q-geri b { display: block; font-family: 'Inter', sans-serif; font-weight: 700; margin-bottom: 3px; }
.tk-q-geri a { display: inline-block; margin-top: 8px; font-family: 'Inter', sans-serif; font-size: .8rem;
  font-weight: 700; color: inherit; text-decoration: none; border-bottom: 1px solid currentColor;
  opacity: .85; transition: opacity .2s ease; }
.tk-q-geri a:hover { opacity: 1; }

.tk-q-alt { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 4px; }
.tk-q-ip { font-family: 'Inter', sans-serif; font-size: .74rem; color: #b3bac6; }
.tk-q-btn { display: none; align-items: center; gap: 8px; margin-top: 16px; cursor: pointer;
  padding: 11px 20px; border: 0; border-radius: 12px; color: #fff;
  background: linear-gradient(135deg, #1d2a44, #3a5a9c);
  font-family: 'Inter', sans-serif; font-size: .88rem; font-weight: 700;
  box-shadow: 0 16px 28px -18px rgba(29,42,68,.95);
  transition: transform .24s cubic-bezier(.22,1,.36,1), box-shadow .24s ease; }
.tk-q-btn:hover { transform: translateY(-1px); box-shadow: 0 22px 34px -18px rgba(29,42,68,1); }

/* sonuç ekranı */
.tk-q-sonuc { display: flex; flex-direction: column; align-items: center; text-align: center;
  padding: 8px 0 4px; animation: qGir .45s cubic-bezier(.22,1,.36,1); }
.tk-q-halka { position: relative; width: 118px; margin-bottom: 12px; }
.tk-q-halka svg { display: block; width: 100%; height: auto; transform: rotate(-90deg); }
.tk-q-halka .iz { fill: none; stroke: rgba(22,35,61,.07); stroke-width: 9; }
.tk-q-halka .dolu { fill: none; stroke-width: 9; stroke-linecap: round;
  transition: stroke-dashoffset .8s cubic-bezier(.22,1,.36,1), stroke .35s ease; }
.tk-q-halka .dolu.iyi { stroke: #1f6b4a; } .tk-q-halka .dolu.orta { stroke: #b3872f; }
.tk-q-halka .dolu.kotu { stroke: #c8503f; }
.tk-q-halka b { position: absolute; inset: 0; display: grid; place-items: center;
  font-family: 'Space Grotesk', sans-serif; font-size: 1.35rem; font-weight: 700; color: #16233d; }
.tk-q-sonuc h3 { margin: 0 0 6px; font-family: 'Inter', sans-serif; font-size: 1.05rem; font-weight: 700; color: #16233d; }
.tk-q-sonuc > p { margin: 0 0 14px; font-size: .9rem; line-height: 1.65; color: #6a7488; max-width: 52ch; }
.tk-q-eksik { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin-bottom: 4px; }
.tk-q-eksik a { padding: 7px 13px; border-radius: 999px; font-family: 'Inter', sans-serif; font-size: .78rem;
  font-weight: 600; color: #33405c; background: rgba(22,35,61,.04); border: 1px solid rgba(22,35,61,.08);
  text-decoration: none; transition: transform .24s cubic-bezier(.22,1,.36,1), border-color .24s ease; }
.tk-q-eksik a:hover { transform: translateY(-2px); border-color: rgba(90,124,196,.4); }
.tk-q-eksik .tam { font-family: 'Inter', sans-serif; font-size: .84rem; font-weight: 600; color: #1a5c40; }
.tk-q-sonuc .tk-q-btn { display: inline-flex; }
@media (prefers-reduced-motion: reduce) {
  .tk-q-s, .tk-q-s.dogru, .tk-q-s.yanlis, .tk-q-sonuc { animation: none; }
}

@media (max-width: 1040px) {
  .tk-yon, .tk-fb, .tk-kn, .tk-rm { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
  .tk-fb-akis, .tk-fb-kacak, .tk-yon-gnok, #tk-fb-svg.cinliyor, .tk-fb-dol.kotu, .tk-fb-mikh,
  .tk-fb-sahne:has(#tk-fb-svg.cinliyor)::after { animation: none; }
  .tk-fb-3d, .fb-kat { transition: none; transform: none !important; }
}

/* ---- sesli demo kutuları ---- */
.tk-ses { margin-top: 20px; padding: 20px 22px; border-radius: 20px;
  background: linear-gradient(155deg, #fff, #f7f9fd); border: 1px solid rgba(22,35,61,.08);
  box-shadow: 0 24px 46px -36px rgba(22,35,61,.6); }
.tk-ses-et { display: inline-block; font-family: 'Inter', sans-serif; font-size: .64rem; font-weight: 700;
  letter-spacing: .12em; text-transform: uppercase; color: #b3603f; margin-bottom: 6px; }
.tk-ses-bas h3 { font-family: 'Inter', sans-serif; font-size: 1rem; font-weight: 700; color: #16233d; margin: 0 0 6px; }
.tk-ses-bas p { margin: 0 0 14px; font-size: .88rem; line-height: 1.66; color: #4d5768; }
.tk-ses-btn { display: flex; flex-wrap: wrap; gap: 8px; }
.tk-sbtn { cursor: pointer; padding: 10px 16px; border-radius: 11px; border: 1px solid rgba(22,35,61,.1);
  background: #fff; font-family: 'Inter', sans-serif; font-size: .85rem; font-weight: 600; color: #33405c;
  transition: transform .24s cubic-bezier(.22,1,.36,1), border-color .24s ease, background .24s ease, color .24s ease; }
.tk-sbtn:hover { transform: translateY(-1px); border-color: rgba(90,124,196,.4); }
.tk-sbtn.aktif { color: #fff; background: linear-gradient(135deg, #1d2a44, #3a5a9c); border-color: transparent;
  box-shadow: 0 14px 26px -16px rgba(29,42,68,.95); }
.tk-sbtn.dur { color: #a8452b; }
.tk-sbtn em { display: block; font-style: normal; font-family: 'Space Grotesk', sans-serif; font-size: .72rem;
  font-weight: 500; opacity: .62; margin-top: 1px; }

.tk-ses-cumle { margin: 0 0 14px; padding: 12px 16px; border-left: 3px solid rgba(90,124,196,.4);
  border-radius: 0 12px 12px 0; background: rgba(90,124,196,.05); font-family: 'Lora', Georgia, serif;
  font-size: 1rem; line-height: 1.6; color: #33405c; transition: background .3s ease, border-color .3s ease; }
.tk-ses-cumle.okunuyor { background: rgba(31,107,74,.07); border-left-color: #1f6b4a; color: #16233d;
  animation: tkOku 1.8s ease-in-out infinite; }
@keyframes tkOku { 0%, 100% { box-shadow: 0 0 0 0 rgba(31,107,74,0); } 50% { box-shadow: 0 0 0 3px rgba(31,107,74,.08); } }

.tk-ses-durum { position: absolute; top: 8px; right: 12px; display: inline-flex; align-items: center; gap: 7px;
  padding: 4px 10px; border-radius: 999px; background: rgba(255,255,255,.85);
  border: 1px solid rgba(22,35,61,.08); font-family: 'Inter', sans-serif; font-size: .72rem; color: #6a7488; }
.tk-ses-durum .nokta { width: 7px; height: 7px; border-radius: 50%; background: #b9c0cc; }
.tk-ses-durum.aktif .nokta { background: #1f6b4a; animation: tkNbz 1.2s ease-in-out infinite; }
@keyframes tkNbz { 0%, 100% { opacity: .4; } 50% { opacity: 1; } }
.tk-ses-durum b { font-weight: 600; color: #33405c; }
.tk-ses-gorsel { position: relative; margin-top: 14px; border-radius: 14px; background: rgba(22,35,61,.03);
  border: 1px solid rgba(22,35,61,.06); padding: 8px 10px; }
.tk-ses-cv { display: block; width: 100%; height: 60px; }
.tk-ses .ng-kd-uyari { margin: 12px 0 0; font-size: .78rem; line-height: 1.55; color: #8b93a3; }

/* ---- binaural / bakım kartları ---- */
.tk-bn, .tk-bk { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 16px; }
.tk-bn-k, .tk-bk-k { background: #fff; border: 1px solid rgba(22,35,61,.08); border-radius: 20px; padding: 22px;
  box-shadow: 0 22px 44px -34px rgba(22,35,61,.5);
  transition: transform .3s cubic-bezier(.22,1,.36,1), box-shadow .3s ease; }
.tk-bn-k:hover, .tk-bk-k:hover { transform: translateY(-3px); box-shadow: 0 32px 54px -34px rgba(22,35,61,.65); }
.tk-bn-et { display: inline-block; font-family: 'Inter', sans-serif; font-size: .64rem; font-weight: 700;
  letter-spacing: .12em; text-transform: uppercase; color: #b3603f; margin-bottom: 6px; }
.tk-bn-k h3, .tk-bk-k h3 { font-family: 'Inter', sans-serif; font-size: 1rem; font-weight: 700; color: #16233d; margin: 0 0 8px; }
.tk-bn-k p, .tk-bk-k p { margin: 0; font-size: .88rem; line-height: 1.7; color: #4d5768; }
.tk-bk-ik { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 12px; margin-bottom: 10px;
  font-size: 1.05rem; color: #3f5fa6; background: rgba(90,124,196,.1); border: 1px solid rgba(90,124,196,.16); }

/* ================== Sinyal işleme modülü: açık tema (Cihaz Teknoloji Atölyesi) ================== */
.rm-sayfa .ic-ozband { background: linear-gradient(170deg, #f2f7f4 0%, #eef4f1 55%, #f6f3ef 100%) !important;
  padding: 78px 26px; }
.rm-sayfa .ic-ozband .ng-band-kick { color: #1f6b4a; }
.rm-sayfa .ic-ozband .ng-band-h { color: #16233d; }
.rm-sayfa .ic-ozband .ng-band-not { color: #7b8494; }

.rm-sayfa .ic-ozband .ic-ozcips button { color: #33405c; background: #fff; border-color: rgba(22,35,61,.1);
  box-shadow: 0 10px 20px -18px rgba(22,35,61,.5); }
.rm-sayfa .ic-ozband .ic-ozcips button:hover { background: #fff; border-color: rgba(31,107,74,.35); }
.rm-sayfa .ic-ozband .ic-ozcips button.aktif { color: #fff; background: linear-gradient(135deg, #1a5c40, #1f6b4a);
  border-color: transparent; box-shadow: 0 14px 26px -16px rgba(31,107,74,.85); }

.rm-sayfa .ic-ozband .ic-ozkart, .rm-sayfa .ic-ozband .ic-ozdemo,
.rm-sayfa .ic-ozband .ic-flow2, .rm-sayfa .ic-ozband .ic-nr {
  background: #fff; border-color: rgba(22,35,61,.08);
  box-shadow: 0 22px 44px -34px rgba(22,35,61,.5); }
.rm-sayfa .ic-ozband .ic-ozkart h3 { color: #16233d; }
.rm-sayfa .ic-ozband .ic-ozkart > p, .rm-sayfa .ic-ozband .ic-ozdemo > p { color: #4d5768; }
.rm-sayfa .ic-ozband .ic-oz-n { color: #7b8494; }
.rm-sayfa .ic-ozband .ic-oz-fb { background: rgba(31,107,74,.07); }
.rm-sayfa .ic-ozband .ic-oz-fb span { color: #1a5c40; }
.rm-sayfa .ic-ozband .ic-oz-fb p { color: #2f4a3f; }
.rm-sayfa .ic-ozband .ng-belirti-et { color: #b3603f; }
.rm-sayfa .ic-ozband .ng-kd-uyari { color: #8b93a3; border-top-color: rgba(22,35,61,.08); }

.rm-sayfa .ic-ozband .ic-oz-sig button, .rm-sayfa .ic-ozband .ic-nr-btns button {
  color: #33405c; background: #fff; border-color: rgba(22,35,61,.1); }
.rm-sayfa .ic-ozband .ic-oz-sig button.aktif, .rm-sayfa .ic-ozband .ic-nr-btns button.aktif {
  color: #fff; background: #1f6b4a; border-color: #1f6b4a; }
.rm-sayfa .ic-ozband .ic-oz-btns button { color: #fff; background: linear-gradient(135deg, #1a5c40, #1f6b4a); }
.rm-sayfa .ic-ozband .ic-oz-btns .ng-astop { color: #fff; background: #c9603a; }

.rm-sayfa .ic-ozband .ic-wave, .rm-sayfa .ic-ozband .ic-nr-cv { background: rgba(22,35,61,.04); }
.rm-sayfa .ic-ozband .ic-io-plot { background: rgba(22,35,61,.03); border-color: rgba(22,35,61,.08); }
.rm-sayfa .ic-ozband .ic-io-gl { stroke: rgba(22,35,61,.1); }
.rm-sayfa .ic-ozband .ic-io-ax { fill: #97a0b0; }
.rm-sayfa .ic-ozband .ic-io-lin { stroke: rgba(22,35,61,.3); }
.rm-sayfa .ic-ozband .ic-io-mpo { stroke: #c8503f; }
.rm-sayfa .ic-ozband .ic-io-curve { stroke: #1f6b4a; }
.rm-sayfa .ic-ozband .ic-io-dot { fill: #16233d; stroke: #fff; }
.rm-sayfa .ic-ozband .ic-io-dot.w { fill: #1f6b4a; }
.rm-sayfa .ic-ozband .ic-io-leg { color: #6a7488; }
.rm-sayfa .ic-ozband .ic-io-leg .l-lin::before { border-top-color: rgba(22,35,61,.4); }
.rm-sayfa .ic-ozband .ic-io-leg .l-wdrc::before { border-top-color: #1f6b4a; }
.rm-sayfa .ic-ozband .ic-io-m > span { color: #6a7488; }
.rm-sayfa .ic-ozband .ic-io-m b { color: #b3603f; }
.rm-sayfa .ic-ozband .ic-io-m .ic-io-bar.out ~ b, .rm-sayfa .ic-ozband .ic-io-m:last-child b { color: #1a5c40; }
.rm-sayfa .ic-ozband .ic-io-bar { background: rgba(22,35,61,.08); }
.rm-sayfa .ic-ozband .ic-io-bar i { background: #c9603a; }
.rm-sayfa .ic-ozband .ic-io-bar.out i { background: #1f6b4a; }

.rm-sayfa .ic-ozband .ic-flow2-t { color: #b3603f; }
.rm-sayfa .ic-ozband .ic-flow2-n { color: #97a0b0; background: rgba(22,35,61,.02); border-color: rgba(22,35,61,.08); }
.rm-sayfa .ic-ozband .ic-flow2-ic { background: rgba(22,35,61,.05); color: #7b8494; }
.rm-sayfa .ic-ozband .ic-flow2-n.on { color: #16233d; background: rgba(31,107,74,.07); border-color: rgba(31,107,74,.35);
  box-shadow: 0 0 0 1px rgba(31,107,74,.2), 0 14px 32px -22px rgba(31,107,74,.5); }
.rm-sayfa .ic-ozband .ic-flow2-n.on .ic-flow2-ic { background: #1f6b4a; color: #fff; }
.rm-sayfa .ic-ozband .ic-flow2-ar { background: linear-gradient(90deg, rgba(31,107,74,.2), rgba(31,107,74,.7)); }
.rm-sayfa .ic-ozband .ic-flow2-ar::after { border-left-color: #1f6b4a; }
.rm-sayfa .ic-ozband .ic-flow2-cap { color: #6a7488; }
.rm-sayfa .ic-ozband .ic-flow2-cap b { color: #1a5c40; }
.rm-sayfa .ic-ozband .ic-nr-cap { color: #6a7488; }

/* ---- yol haritasının alt kenarı beyaza erisin (geçiş şeridiyle uyum) ---- */
.rm-sayfa .rm-yol { padding-bottom: 116px;
  -webkit-mask-image: linear-gradient(180deg, #000 0, #000 calc(100% - 88px), transparent 100%);
  mask-image: linear-gradient(180deg, #000 0, #000 calc(100% - 88px), transparent 100%); }

/* ---- sinyalin yolu: akan sinyal animasyonu ---- */
.rm-sayfa .ic-ozband .ic-flow2-row { align-items: stretch; }
.rm-sayfa .ic-ozband .ic-flow2-n { position: relative; overflow: visible;
  transition: transform .35s cubic-bezier(.22,1,.36,1), border-color .35s ease, background .35s ease, color .35s ease, box-shadow .35s ease; }
.rm-sayfa .ic-ozband .ic-flow2-n:hover { transform: translateY(-2px); }
.rm-sayfa .ic-ozband .ic-flow2-n.on { transform: translateY(-3px); }
.rm-sayfa .ic-ozband .ic-flow2-n.on::after { content: ""; position: absolute; inset: 0; border-radius: 12px;
  pointer-events: none; animation: icHalka 2.4s ease-out infinite; }
@keyframes icHalka {
  0%   { box-shadow: 0 0 0 0 rgba(31,107,74,.28); }
  70%  { box-shadow: 0 0 0 12px rgba(31,107,74,0); }
  100% { box-shadow: 0 0 0 0 rgba(31,107,74,0); } }
.rm-sayfa .ic-ozband .ic-flow2-n.on .ic-flow2-ic { animation: icIkon 2.4s ease-in-out infinite; }
@keyframes icIkon { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.09); } }
.rm-sayfa .ic-ozband .ic-flow2-ic { transition: transform .35s cubic-bezier(.22,1,.36,1), background .35s ease, color .35s ease; }

.rm-sayfa .ic-ozband .ic-flow2-ar { flex: 0 0 46px; align-self: center; position: relative; height: 3px;
  border-radius: 3px; background: rgba(31,107,74,.15); overflow: visible; }
.rm-sayfa .ic-ozband .ic-flow2-ar::before { content: ""; position: absolute; top: 50%; left: 0;
  width: 16px; height: 3px; margin-top: -1.5px; border-radius: 3px;
  background: linear-gradient(90deg, rgba(31,107,74,0), #1f6b4a);
  animation: icAkis 1.9s cubic-bezier(.45,.05,.35,1) infinite; }
.rm-sayfa .ic-ozband .ic-flow2-row .ic-flow2-ar:nth-child(4)::before { animation-delay: .45s; }
@keyframes icAkis {
  0%   { transform: translateX(-10px); opacity: 0; }
  20%  { opacity: 1; }
  80%  { opacity: 1; }
  100% { transform: translateX(46px); opacity: 0; } }
.rm-sayfa .ic-ozband .ic-flow2-ar::after { border-left-color: #1f6b4a; opacity: .85; }
.rm-sayfa .ic-ozband .ic-flow2-cap b { transition: color .3s ease; }

@media (prefers-reduced-motion: reduce) {
  .rm-sayfa .ic-ozband .ic-flow2-ar::before,
  .rm-sayfa .ic-ozband .ic-flow2-n.on::after,
  .rm-sayfa .ic-ozband .ic-flow2-n.on .ic-flow2-ic { animation: none; }
}

/* ---- kompresyon modülü: grafik kartı sağ sütuna göre ölçeklensin ---- */
.rm-sik { grid-template-columns: minmax(0, 1.05fr) minmax(300px, 1fr) !important;
  align-items: start !important; }
.rm-sik-plot { display: block; overflow: visible; align-self: center; }
.rm-sik-cerceve { position: static; display: block; }
#rm-sik-svg { position: static; width: 100%; height: auto; max-height: 460px; display: block; overflow: visible; }

/* ---- kompresyon modülü: alan, imleç, okuma kartı ---- */
.rm-sik-alan { fill: rgba(31,107,74,.1); stroke: none; transition: fill .3s ease; }
.rm-sik-curve { stroke-dasharray: 600; stroke-dashoffset: 600; animation: sikCiz 1.2s cubic-bezier(.22,1,.36,1) forwards; }
@keyframes sikCiz { to { stroke-dashoffset: 0; } }
.rm-sik-tkc { stroke: rgba(179,135,47,.45); stroke-width: 1.2; stroke-dasharray: 4 3; }
.rm-sik-tk-halka { fill: none; stroke: rgba(179,135,47,.35); stroke-width: 1.6;
  animation: sikHalka 2.4s ease-out infinite; transform-origin: center; transform-box: fill-box; }
@keyframes sikHalka { 0% { r: 6; opacity: .8; } 70% { r: 13; opacity: 0; } 100% { opacity: 0; } }
.rm-sik-et { font-family: 'Inter', sans-serif; font-size: 10px; font-weight: 700; }
.rm-sik-et.tk { fill: #b3872f; }
.rm-sik-et.mpo { fill: #c8503f; }
.rm-sik-cx, .rm-sik-cnok { opacity: 0; transition: opacity .2s ease; }
#rm-sik-svg.okuma .rm-sik-cx, #rm-sik-svg.okuma .rm-sik-cnok { opacity: 1; }
.rm-sik-cx { stroke: rgba(22,35,61,.22); stroke-width: 1.2; stroke-dasharray: 4 3; }
.rm-sik-cnok { fill: #16233d; stroke: #fff; stroke-width: 1.8; }
#rm-sik-svg { cursor: crosshair; }

.rm-sik-oku { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; margin-top: 12px; padding: 12px 14px;
  border-radius: 14px; background: rgba(22,35,61,.03); border: 1px solid rgba(22,35,61,.07); }
.rm-sik-oku span { display: flex; flex-direction: column; gap: 2px; }
.rm-sik-oku i { font-style: normal; font-family: 'Inter', sans-serif; font-size: .62rem; font-weight: 700;
  letter-spacing: .1em; text-transform: uppercase; color: #a2aab8; }
.rm-sik-oku b { font-family: 'Space Grotesk', sans-serif; font-size: .92rem; font-weight: 700; color: #16233d;
  font-variant-numeric: tabular-nums; }
.rm-sik-leg .l-alan::before { background: rgba(31,107,74,.25); height: 9px; border-radius: 3px; }

/* zaman sabiti grafiği: akan imleç */
.rm-sik-imlec { stroke: rgba(201,96,58,.55); stroke-width: 1.4; }
.rm-sik-zaman .rm-seg button { transition: transform .24s cubic-bezier(.22,1,.36,1); }
.rm-sik-giris, .rm-sik-cikis { transition: none; }
.rm-sik-cikis { stroke-dasharray: 900; stroke-dashoffset: 900; animation: sikCiz 1s ease .2s forwards; }

@media (max-width: 640px) { .rm-sik-oku { grid-template-columns: repeat(2, 1fr); } }
@media (prefers-reduced-motion: reduce) {
  .rm-sik-curve, .rm-sik-cikis { animation: none; stroke-dashoffset: 0; }
  .rm-sik-tk-halka { animation: none; }
}

/* ---- kanal modülü: sapma alanı, bant sınırları, hata çubukları ---- */
.tk-kn-bantlar line { stroke: rgba(31,107,74,.14); stroke-width: 1; stroke-dasharray: 3 4; }
.tk-kn-fark { fill: rgba(201,96,58,.12); stroke: none; }
.tk-kn-hedef { stroke: #b3872f; stroke-width: 2.4; stroke-dasharray: 6 4; fill: none; }
.tk-kn-basamak { stroke: #1f6b4a; stroke-width: 3; fill: none; stroke-linejoin: round; stroke-linecap: round; }
.tk-kn-basamak.ciz { stroke-dasharray: 1400; stroke-dashoffset: 1400;
  animation: knCiz .8s cubic-bezier(.22,1,.36,1) forwards; }
@keyframes knCiz { to { stroke-dashoffset: 0; } }

.tk-kn-leg { display: flex; flex-wrap: wrap; gap: 16px; margin-top: 10px; }
.tk-kn-leg span { display: inline-flex; align-items: center; gap: 7px; font-family: 'Inter', sans-serif;
  font-size: .78rem; color: #6a7488; }
.tk-kn-leg span::before { content: ""; width: 16px; height: 3px; border-radius: 2px; }
.tk-kn-leg .l-hedef::before { background: repeating-linear-gradient(90deg, #b3872f 0 6px, transparent 6px 10px); }
.tk-kn-leg .l-kanal::before { background: #1f6b4a; }
.tk-kn-leg .l-fark::before { background: rgba(201,96,58,.3); height: 9px; border-radius: 3px; }

.tk-kn-bar { margin: 12px 0 4px; padding-top: 12px; border-top: 1px dashed rgba(22,35,61,.1); }
.tk-kn-b { display: grid; grid-template-columns: 26px 1fr 58px; align-items: center; gap: 10px; padding: 5px 0; }
.tk-kn-b i { font-style: normal; font-family: 'Space Grotesk', sans-serif; font-size: .8rem; font-weight: 700;
  color: #97a0b0; transition: color .25s ease; }
.tk-kn-b > span { height: 8px; border-radius: 999px; background: rgba(22,35,61,.07); overflow: hidden; }
.tk-kn-b b { display: block; height: 100%; width: 0; border-radius: 999px; background: rgba(201,96,58,.45);
  transition: width .55s cubic-bezier(.22,1,.36,1), background .3s ease; }
.tk-kn-b em { font-style: normal; font-family: 'Space Grotesk', sans-serif; font-size: .8rem; color: #7b8494;
  text-align: right; font-variant-numeric: tabular-nums; transition: color .25s ease; }
.tk-kn-b.aktif i, .tk-kn-b.aktif em { color: #16233d; }
.tk-kn-b.aktif b { background: linear-gradient(90deg, #6cc39a, #1f6b4a); }

@media (prefers-reduced-motion: reduce) {
  .tk-kn-basamak.ciz { animation: none; stroke-dashoffset: 0; }
}

/* ---- dikey ritim: bölümler ve ayraç çevresi daha derli toplu ---- */
.rm-sayfa .rm-sec { padding-top: 52px; padding-bottom: 52px; }
.rm-sayfa .rm-band { padding-top: 56px; padding-bottom: 56px; }
.rm-sayfa .ic-ozband, .rm-sayfa .ic-remband { padding-top: 58px; padding-bottom: 58px; }
.rm-sayfa .rm-gecis .fa-ayrac { padding: 16px 26px; }
.rm-sayfa .rm-gecis .rm-kopru { padding: 16px 26px; margin: 0 auto; }
.rm-sayfa .rm-gecis.bos { height: 34px; }
.rm-sayfa #sss { padding-bottom: 26px; }
.rm-sayfa #ilgili { padding-top: 24px; padding-bottom: 12px; }
.rm-sayfa #kaynaklar { padding-top: 24px; padding-bottom: 48px; }
@media (max-width: 720px) {
  .rm-sayfa .rm-sec { padding-top: 40px; padding-bottom: 40px; }
  .rm-sayfa .rm-band { padding-top: 44px; padding-bottom: 44px; }
  .rm-sayfa .rm-gecis .fa-ayrac, .rm-sayfa .rm-gecis .rm-kopru { padding: 12px 20px; }
  .rm-sayfa .rm-gecis.bos { height: 24px; }
}

/* ---- kanal / bant: ayar denemesi ---- */
.tk-kb { display: grid; grid-template-columns: minmax(0, 2fr) minmax(228px, .82fr); gap: 16px; align-items: start; }
.tk-kb-gorsel { background: #fff; border: 1px solid rgba(22,35,61,.08); border-radius: 20px; padding: 15px 18px 13px;
  box-shadow: 0 22px 44px -34px rgba(22,35,61,.5); }
.tk-kb-ust { display: flex; flex-wrap: wrap; gap: 10px 22px; margin-bottom: 9px; }
.tk-kb-seg-sar .rm-lbl { margin-bottom: 4px; }

.tk-kb-adim { list-style: none; display: flex; flex-wrap: wrap; gap: 6px; margin: 0 0 8px; padding: 0; }
.tk-kb-adim li { display: inline-flex; align-items: center; gap: 7px; padding: 5px 11px; border-radius: 999px;
  background: rgba(22,35,61,.04); border: 1px solid rgba(22,35,61,.06);
  font-family: 'Inter', sans-serif; font-size: .76rem; color: #4d5768; }
.tk-kb-adim b { display: grid; place-items: center; width: 18px; height: 18px; border-radius: 6px;
  font-size: .68rem; color: #fff; background: linear-gradient(135deg, #1d2a44, #3a5a9c); }

#tk-kb-svg { display: block; width: 100%; height: auto; touch-action: none; }
.tk-kb-g { stroke: rgba(22,35,61,.07); }
.tk-kb-eks, .tk-kb-ayrac { stroke: rgba(22,35,61,.12); }
.tk-kb-ayrac { stroke-dasharray: 4 4; }
.tk-kb-ax { font-family: 'Inter', sans-serif; font-size: 10px; fill: #97a0b0; }
.tk-kb-lbl { font-family: 'Inter', sans-serif; font-size: 10.5px; font-weight: 600; fill: #1a5c40; }
.tk-kb-golge { fill: rgba(31,107,74,.06); transition: x .3s cubic-bezier(.22,1,.36,1), width .3s ease; }
.tk-kb-hedef { fill: none; stroke: #b3872f; stroke-width: 2.2; stroke-dasharray: 6 4; }
.tk-kb-egri { fill: none; stroke: #1f6b4a; stroke-width: 2.8; stroke-linejoin: round; stroke-linecap: round; }

.tk-kb-bg { cursor: grab; }
.tk-kb-bg:active { cursor: grabbing; }
.tk-kb-sap { stroke: rgba(22,35,61,.12); stroke-width: 1.2; }
.tk-kb-kol { fill: #fff; stroke: #3a5a9c; stroke-width: 2.2;
  transition: r .18s ease, fill .18s ease, stroke .18s ease; }
.tk-kb-bg:hover .tk-kb-kol { r: 8; }
.tk-kb-bg.iyi .tk-kb-kol { stroke: #1f6b4a; }
.tk-kb-bg.orta .tk-kb-kol { stroke: #b3872f; }
.tk-kb-bg.kotu .tk-kb-kol { stroke: #c8503f; }
.tk-kb-bg.vurgu .tk-kb-kol { fill: #e6f3ec; }
.tk-kb-bg.vurgu .tk-kb-sap { stroke: rgba(31,107,74,.28); }

.tk-kb-cg { cursor: pointer; animation: kbGir .45s cubic-bezier(.22,1,.36,1) backwards; }
@keyframes kbGir { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }
.tk-kb-c { fill: rgba(31,107,74,.08); stroke: rgba(31,107,74,.22); stroke-width: 1;
  transition: fill .25s ease, stroke .25s ease; }
.tk-kb-cg:hover .tk-kb-c { fill: rgba(31,107,74,.15); }
.tk-kb-cg.secili .tk-kb-c { fill: rgba(31,107,74,.2); stroke: #1f6b4a; stroke-width: 2; }
.tk-kb-cor { font-family: 'Space Grotesk', sans-serif; font-size: 11px; font-weight: 700; fill: #1a5c40; }

.tk-kb-leg { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 14px; margin-top: 4px; }
.tk-kb-secim { flex: 1 1 200px; text-align: right; font-family: 'Inter', sans-serif; font-style: normal;
  font-size: .74rem; line-height: 1.4; color: #97a0b0; }
.tk-kb-leg span { display: inline-flex; align-items: center; gap: 6px; font-family: 'Inter', sans-serif;
  font-size: .75rem; color: #6a7488; }
.tk-kb-leg span::before { content: ""; width: 14px; height: 3px; border-radius: 2px; }
.tk-kb-leg .l-h::before { background: repeating-linear-gradient(90deg, #b3872f 0 5px, transparent 5px 9px); }
.tk-kb-leg .l-e::before { background: #1f6b4a; }
.tk-kb-leg .l-k::before { width: 10px; height: 10px; border-radius: 50%; background: #fff; border: 2px solid #3a5a9c; }
.tk-kb-leg .l-c::before { width: 14px; height: 9px; border-radius: 3px; background: rgba(31,107,74,.18);
  border: 1px solid rgba(31,107,74,.3); }

.tk-kb-alt { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 16px; align-items: center;
  margin-top: 10px; padding-top: 10px; border-top: 1px dashed rgba(22,35,61,.1); }
.tk-kb-skor { display: flex; flex-direction: column; gap: 7px; min-width: 230px; }
.tk-kb-dug { display: flex; gap: 7px; }
.tk-kb-skor .tk-sonuc-sat { border-bottom: 0; padding: 0; }
.tk-kb-skor b.iyi { color: #1a5c40; }
.tk-kb-skor b.orta { color: #8a6a1f; }
.tk-kb-skor b.kotu { color: #a8452b; }
.tk-kb-btn { cursor: pointer; padding: 8px 12px; border-radius: 11px; border: 0; color: #fff;
  background: linear-gradient(135deg, #1d2a44, #3a5a9c); font-family: 'Inter', sans-serif; font-size: .84rem;
  font-weight: 700; box-shadow: 0 14px 26px -18px rgba(29,42,68,.95);
  transition: transform .24s cubic-bezier(.22,1,.36,1), box-shadow .24s ease; }
.tk-kb-btn:hover { transform: translateY(-1px); }
.tk-kb-btn.ikincil { color: #33405c; background: #fff; border: 1px solid rgba(22,35,61,.1); box-shadow: none; }
.tk-kb-not { margin: 0; padding: 10px 12px; border-radius: 12px; font-size: .82rem; line-height: 1.6;
  color: #4d5768; background: rgba(90,124,196,.06); border-left: 3px solid #5a7cc4; }

.tk-kb-yan { display: flex; flex-direction: column; gap: 10px; }
.tk-kb-k { background: #fff; border: 1px solid rgba(22,35,61,.08); border-radius: 16px; padding: 13px 15px;
  box-shadow: 0 18px 34px -30px rgba(22,35,61,.5);
  transition: transform .28s cubic-bezier(.22,1,.36,1), box-shadow .28s ease; }
.tk-kb-k:hover { transform: translateY(-2px); box-shadow: 0 26px 44px -30px rgba(22,35,61,.6); }
.tk-kb-k.vurgu { background: linear-gradient(150deg, rgba(201,96,58,.06), #fff); border-color: rgba(201,96,58,.2); }
.tk-kb-et { display: inline-block; font-family: 'Inter', sans-serif; font-size: .62rem; font-weight: 700;
  letter-spacing: .12em; text-transform: uppercase; color: #b3603f; margin-bottom: 4px; }
.tk-kb-k h3 { font-family: 'Inter', sans-serif; font-size: .92rem; font-weight: 700; color: #16233d; margin: 0 0 4px; }
.tk-kb-k p { margin: 0; font-size: .82rem; line-height: 1.58; color: #4d5768; }
@media (max-width: 1040px) { .tk-kb { grid-template-columns: 1fr; } .tk-kb-alt { grid-template-columns: 1fr; }
  .tk-kb-secim { text-align: left; } .tk-kb-skor { min-width: 0; } }

/* ---------- yeni modüller ---------- */
.rm-dyn, .rm-sik, .rm-snr, .rm-fl, .rm-kp { display: grid; grid-template-columns: 1.35fr 1fr; gap: 22px; align-items: start; }
.rm-fl { align-items: stretch; }
.rm-fl-plot { display: flex; flex-direction: column; }
.rm-dyn-plot, .rm-sik-plot, .rm-snr-sahne, .rm-fl-plot, .rm-kp-plot {
  background: #fff; border: 1px solid rgba(22,35,61,.08); border-radius: 20px; padding: 18px;
  box-shadow: 0 20px 40px -30px rgba(22,35,61,.55); }
.rm-dyn-yan, .rm-sik-yan, .rm-snr-yan, .rm-fl-yan, .rm-kp-yan { display: flex; flex-direction: column; gap: 14px; }
#rm-dyn-svg, #rm-sik-svg, #rm-sik-zsvg, #rm-snr-svg, #rm-fl-svg, #rm-kp-svg { width: 100%; height: auto; display: block; }
#rm-dyn-grid line, #rm-sik-grid line, #rm-sik-zgrid line, #rm-fl-grid line, #rm-kp-grid line { stroke: rgba(22,35,61,.12); stroke-width: 1; }

/* dinamik alan */
.rm-dyn-bar { fill: rgba(90,124,196,.22); stroke: rgba(90,124,196,.5); transition: y .3s ease, height .3s ease; }
.rm-dyn-bar.cikis { fill: rgba(31,107,74,.22); stroke: rgba(31,107,74,.6); }
.rm-dyn-ucl { stroke: #c8503f; stroke-width: 2; stroke-dasharray: 5 4; transition: y1 .25s ease, y2 .25s ease; }
.rm-dyn-mpo { stroke: #b3872f; stroke-width: 2.4; transition: y1 .25s ease, y2 .25s ease; }
.rm-dyn-esik { stroke: #16233d; stroke-width: 2; transition: y1 .25s ease, y2 .25s ease; }
.rm-dyn-oklar line { stroke: rgba(22,35,61,.35); stroke-width: 1.4; stroke-dasharray: 4 3; marker-end: none; }
.rm-dyn-et { font-family: 'Inter', sans-serif; font-size: 11px; fill: #7b8494; }
.rm-dyn-lbl { font-family: 'Inter', sans-serif; font-size: 10.5px; font-weight: 700; }
.rm-dyn-lbl.ucl { fill: #c8503f; } .rm-dyn-lbl.mpo { fill: #b3872f; } .rm-dyn-lbl.esik { fill: #16233d; }
.rm-dyn-kutu { background: #fff; border: 1px solid rgba(22,35,61,.08); border-radius: 16px; padding: 16px; }
.rm-dyn-kutu p { font-size: .86rem; line-height: 1.62; color: #4d5768; margin: 10px 0 0; }
b.iyi { color: #1f6b4a !important; } b.orta { color: #b3872f !important; } b.kotu { color: #c8503f !important; }

/* kompresyon */
.rm-sik-lin, .rm-sik-mpo, .rm-sik-curve, .rm-sik-giris, .rm-sik-cikis { fill: none; stroke-linecap: round; stroke-linejoin: round; }
.rm-sik-lin { stroke: #7b8494; stroke-width: 1.8; stroke-dasharray: 5 4; }
.rm-sik-mpo { stroke: #c8503f; stroke-width: 1.8; stroke-dasharray: 4 4; }
.rm-sik-curve { stroke: #1f6b4a; stroke-width: 3; }
.rm-sik-tk { fill: #b3872f; }
.rm-sik-giris { stroke: #97a0b0; stroke-width: 2; }
.rm-sik-cikis { stroke: #3f5fa6; stroke-width: 2.6; }
.rm-sik-leg, .rm-sik-zleg, .rm-fl-leg, .rm-kp-leg { display: flex; gap: 14px; flex-wrap: wrap; margin-top: 8px;
  font-family: 'Inter', sans-serif; font-size: .75rem; color: #5c6577; }
.rm-sik-leg span, .rm-sik-zleg span, .rm-fl-leg span, .rm-kp-leg span { display: inline-flex; align-items: center; gap: 6px; }
.rm-sik-leg span::before, .rm-sik-zleg span::before, .rm-fl-leg span::before, .rm-kp-leg span::before {
  content: ""; width: 16px; height: 3px; border-radius: 2px; background: currentColor; }
.rm-sik-leg .l-lin, .rm-sik-zleg .l-in { color: #7b8494; }
.rm-sik-leg .l-wdrc { color: #1f6b4a; } .rm-sik-leg .l-mpo { color: #c8503f; }
.rm-sik-zleg .l-out { color: #3f5fa6; }
.rm-sik-zaman { background: #fff; border: 1px solid rgba(22,35,61,.08); border-radius: 16px; padding: 16px; }
.rm-sik-zaman .rm-seg { margin-bottom: 10px; }

/* SNR sahnesi — perspektif oda */
.rm-snr-sahne { position: relative; perspective: 1200px; perspective-origin: 50% 55%; }
.rm-snr-3d { transform-style: preserve-3d; will-change: transform;
  transition: transform .5s cubic-bezier(.22,1,.36,1); }
#rm-snr-svg { display: block; width: 100%; height: auto; }

.snr-zemin { fill: url(#snr-zemin); }
.snr-arka { fill: url(#snr-duvar); }
.snr-sol { fill: url(#snr-yan-sol); }
.snr-sag { fill: url(#snr-yan-sag); }
.snr-tavan { fill: #fafbfd; }
.snr-sup { fill: none; stroke: rgba(22,35,61,.08); stroke-width: 1; }
.snr-lamba { fill: rgba(255,255,255,.55); }
.snr-vin { fill: url(#snr-vin); pointer-events: none; }
.rm-snr-izgara line { stroke: rgba(22,35,61,.07); stroke-width: 1; }
.rm-snr-izgara line.dik { stroke: rgba(22,35,61,.045); }
.rm-snr-hm { font-family: 'Inter', sans-serif; font-size: 9px; fill: rgba(22,35,61,.32);
  paint-order: stroke; stroke: rgba(255,255,255,.9); stroke-width: 3; stroke-linejoin: round; }

.rm-snr-polar { fill: url(#snr-huzme); stroke: rgba(90,124,196,.45); stroke-width: 1.2;
  transition: opacity .4s ease; }
.rm-snr-isin { fill: url(#snr-isin); transition: opacity .35s ease; }
.snr-ciz { stroke: #1f6b4a; stroke-linecap: round; stroke-dasharray: 5 7; fill: none;
  animation: snrAk2 1.1s linear infinite; }
@keyframes snrAk2 { to { stroke-dashoffset: -24; } }

.snr-akt { transition: opacity .35s ease; }
.snr-golge { fill: rgba(22,35,61,.09); }
.snr-kafa { fill: #16233d; }
.snr-govde { fill: #24365c; }
.snr-akt.konus .snr-kafa { fill: #1f6b4a; }
.snr-akt.konus .snr-govde { fill: #2f8a62; }
.snr-agiz { fill: rgba(255,255,255,.75); }
.snr-akt.gur .snr-kafa { fill: #c46754; }
.snr-akt.gur .snr-govde { fill: #d4806e; }
.snr-nabiz { fill: none; stroke: #d4705c; stroke-width: 1.3; opacity: 0; transform-origin: center;
  transform-box: fill-box; animation: snrNb 2.4s ease-out infinite; }
@keyframes snrNb { 0% { opacity: .38; transform: scale(1); } 100% { opacity: 0; transform: scale(1.9); } }
.snr-akt.uzak { filter: blur(.5px); }
.snr-dalga path { fill: none; stroke: rgba(31,107,74,.45); stroke-width: 1.6; stroke-linecap: round; }
.snr-cizgi { stroke: rgba(22,35,61,.25); stroke-width: 1; }
.rm-snr-t.kalin { font-weight: 600; fill: #16233d; paint-order: stroke; stroke: #fff; stroke-width: 3.5;
  stroke-linejoin: round; }
.snr-akt.kisik .snr-kafa { fill: #aeb6c2; }
.snr-akt.kisik .snr-govde { fill: #c3c9d3; }
.snr-akt.kisik .snr-nabiz { stroke: #b9c0cc; animation-duration: 3.6s; }
.snr-akt.yumusak .snr-kafa, .snr-akt.yumusak .snr-govde { filter: blur(1.4px); }
.snr-mik rect { fill: #b3872f; }

.rm-snr-dinleyici .snr-kafa { fill: #16233d; }
.snr-omuz { fill: #24365c; }
.snr-sac { fill: #0f1930; }
.snr-kulak { fill: #2c4270; }
.snr-cihaz { fill: none; stroke: #5a7cc4; stroke-width: 3.4; stroke-linecap: round; }

.rm-snr-remote { stroke: #b3872f; stroke-width: 2.4; stroke-dasharray: 6 5; stroke-linecap: round;
  transition: opacity .35s ease; animation: snrAk 1.1s linear infinite; }
@keyframes snrAk { to { stroke-dashoffset: -22; } }
.rm-snr-t { font-family: 'Inter', sans-serif; font-size: 10.5px; fill: #5c6577; }

.rm-snr-leg { display: flex; flex-wrap: wrap; gap: 8px 14px; margin-top: 10px; }
.rm-snr-leg span { display: inline-flex; align-items: center; gap: 6px; font-family: 'Inter', sans-serif;
  font-size: .74rem; color: #6a7488; }
.rm-snr-leg span::before { content: ""; width: 10px; height: 10px; border-radius: 50%; }
.rm-snr-leg .l-k::before { background: #1f6b4a; }
.rm-snr-leg .l-g::before { background: #c46754; }
.rm-snr-leg .l-h::before { background: rgba(90,124,196,.3); border: 1px solid rgba(90,124,196,.6); }
.rm-snr-leg .l-r::before { width: 14px; height: 3px; border-radius: 2px;
  background: repeating-linear-gradient(90deg, #b3872f 0 5px, transparent 5px 9px); }

.rm-snr-secim { background: #fff; border: 1px solid rgba(22,35,61,.08); border-radius: 16px; padding: 14px 16px; display: grid; gap: 10px; }
.rm-swt { display: flex; align-items: center; gap: 10px; cursor: pointer; font-family: 'Inter', sans-serif;
  font-size: .89rem; font-weight: 600; color: #33405c; }
.rm-swt input { position: absolute; opacity: 0; width: 0; height: 0; }
.rm-swt span { position: relative; flex: none; width: 40px; height: 22px; border-radius: 999px;
  background: rgba(22,35,61,.14); transition: background .25s ease; }
.rm-swt span::after { content: ""; position: absolute; top: 3px; left: 3px; width: 16px; height: 16px; border-radius: 50%;
  background: #fff; box-shadow: 0 2px 5px rgba(0,0,0,.2); transition: transform .25s cubic-bezier(.22,1,.36,1); }
.rm-swt input:checked + span { background: #1f6b4a; }
.rm-swt input:checked + span::after { transform: translateX(18px); }
.rm-swt input:focus-visible + span { outline: 2px solid #c9603a; outline-offset: 2px; }
.rm-snr-metre { position: relative; overflow: hidden; background: linear-gradient(140deg, #16233d, #24365c);
  color: #fff; border-radius: 18px; padding: 18px 20px;
  box-shadow: 0 26px 50px -34px rgba(22,35,61,.9); }
.rm-snr-metre::before { content: ""; position: absolute; top: -60px; right: -40px; width: 180px; height: 180px;
  border-radius: 50%; background: radial-gradient(circle, rgba(90,124,196,.35), transparent 70%); pointer-events: none; }
.rm-snr-bar { position: relative; height: 10px; border-radius: 999px; background: rgba(255,255,255,.14); }
.rm-snr-bar i { display: block; height: 100%; width: 0%; border-radius: 999px;
  background: linear-gradient(90deg, #e2a08f, #4bbf87); transition: width .45s cubic-bezier(.22,1,.36,1);
  box-shadow: 0 0 14px rgba(75,191,135,.45); }
.rm-snr-sifir { position: absolute; top: -3px; bottom: -3px; left: 40%; width: 2px; border-radius: 2px;
  background: rgba(255,255,255,.45); }
.rm-snr-olcek { display: flex; justify-content: space-between; margin-top: 5px;
  font-family: 'Inter', sans-serif; font-size: .66rem; color: rgba(184,198,221,.75); }
.rm-snr-cip { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px; }
.rm-snr-cip span { display: inline-flex; align-items: center; padding: 4px 9px; border-radius: 999px;
  font-family: 'Inter', sans-serif; font-size: .72rem; font-weight: 600; border: 1px solid transparent;
  animation: snrCip .32s cubic-bezier(.22,1,.36,1) backwards; }
@keyframes snrCip { from { opacity: 0; transform: translateY(4px); } to { opacity: 1; transform: none; } }
.rm-snr-cip .art { color: #9ce6c2; background: rgba(75,191,135,.14); border-color: rgba(75,191,135,.3); }
.rm-snr-cip .eksi { color: #f0b3a4; background: rgba(212,112,92,.14); border-color: rgba(212,112,92,.32); }
.rm-snr-cip .notr { color: #c3cfe3; background: rgba(255,255,255,.08); border-color: rgba(255,255,255,.14); }
.rm-snr-satir { display: flex; justify-content: space-between; align-items: center; margin-top: 10px;
  padding-top: 10px; border-top: 1px solid rgba(255,255,255,.12); font-size: .84rem; color: #b8c6dd; }
.rm-snr-satir b { font-family: 'Space Grotesk', sans-serif; color: #fff; }
@media (prefers-reduced-motion: reduce) {
  .snr-nabiz, .snr-ciz, .rm-snr-remote, .rm-snr-cip span { animation: none; }
  .rm-snr-3d { transition: none; transform: none !important; }
}

/* frekans düşürme */
.rm-fl-duyulmaz { fill: url(#fl-duy); transition: d .35s cubic-bezier(.22,1,.36,1); }
.rm-fl-konusma { fill: rgba(90,124,196,.09); stroke: rgba(90,124,196,.22); stroke-width: 1; stroke-dasharray: 3 3; }
.rm-fl-kesme { stroke: #c9603a; stroke-width: 1.6; stroke-dasharray: 5 4; transition: opacity .3s ease, x1 .35s ease, x2 .35s ease; }
.rm-fl-ket { font-family: 'Space Grotesk', sans-serif; font-size: 10px; font-weight: 700; fill: #b3502f;
  transition: opacity .3s ease, x .35s ease; }

.rm-fl-band { transition: x .4s cubic-bezier(.22,1,.36,1), y .4s cubic-bezier(.22,1,.36,1),
  width .4s cubic-bezier(.22,1,.36,1), opacity .35s ease, fill .3s ease; }
.rm-fl-band.kaynak { fill: rgba(123,132,148,.3); stroke: rgba(123,132,148,.55); stroke-width: 1.2; }
.rm-fl-band.kaynak.solgun { fill: rgba(123,132,148,.12); stroke-dasharray: 4 3; }
.rm-fl-band.hedef { fill: url(#fl-hed); stroke: #1f6b4a; stroke-width: 1.6; }
.rm-fl-band.hedef:not(.duyulur) { fill: rgba(200,80,63,.25); stroke: #c8503f; }
.rm-fl-band.hedef.duyulur { filter: drop-shadow(0 0 6px rgba(31,107,74,.35)); animation: flNb 2.2s ease-in-out infinite; }
@keyframes flNb { 0%, 100% { opacity: .92; } 50% { opacity: 1; } }
.rm-fl-bet { font-family: 'Inter', sans-serif; font-size: 10px; font-weight: 700; fill: #5c6577;
  paint-order: stroke; stroke: #fff; stroke-width: 3; stroke-linejoin: round;
  transition: opacity .35s ease, x .4s cubic-bezier(.22,1,.36,1), y .4s cubic-bezier(.22,1,.36,1); }
.rm-fl-bet.solgun { opacity: .45; }
.rm-fl-bet.hed { fill: #1a5c40; }

.rm-fl-esik { fill: none; stroke: #16233d; stroke-width: 2.8; stroke-linecap: round; stroke-linejoin: round;
  filter: drop-shadow(0 2px 4px rgba(22,35,61,.18)); }
.rm-fl-ok { fill: none; stroke: #c9603a; stroke-width: 2; stroke-dasharray: 5 4; stroke-linecap: round;
  transition: opacity .3s ease; animation: flAk 1.2s linear infinite; }
@keyframes flAk { to { stroke-dashoffset: -18; } }
.rm-fl-par { fill: #c9603a; transition: opacity .3s ease; }
.rm-fl-par.duyulur { fill: #1f6b4a; }
.rm-fl-leg .l-k { color: #7b8494; } .rm-fl-leg .l-h { color: #1f6b4a; } .rm-fl-leg .l-e { color: #16233d; }
.rm-fl-leg .l-d { color: #a8452b; } .rm-fl-leg .l-s { color: #5a7cc4; }
.rm-fl-leg .l-d::before { background: rgba(200,80,63,.2) !important; }
.rm-fl-leg .l-s::before { background: rgba(90,124,196,.2) !important; }

/* duyulabilirlik payı ölçeği */
.rm-fl-sl { display: flex; align-items: center; gap: 10px; margin-top: 10px; }
.rm-fl-slbar { position: relative; flex: 1; height: 9px; border-radius: 999px; background: rgba(22,35,61,.06); }
.rm-fl-slbar u { position: absolute; left: 50%; top: -3px; bottom: -3px; width: 2px; border-radius: 2px;
  background: rgba(22,35,61,.22); }
.rm-fl-slbar i { position: absolute; top: 0; bottom: 0; width: 0; border-radius: 999px;
  transition: width .4s cubic-bezier(.22,1,.36,1), left .4s cubic-bezier(.22,1,.36,1), background .3s ease; }
.rm-fl-slbar i.iyi { background: linear-gradient(90deg, #6cc39a, #1f6b4a); }
.rm-fl-slbar i.kotu { background: linear-gradient(90deg, #c8503f, #e0917f); }
.rm-fl-sldeg { font-family: 'Space Grotesk', sans-serif; font-size: .95rem; font-weight: 700;
  font-variant-numeric: tabular-nums; min-width: 58px; text-align: right; }
.rm-fl-sldeg.iyi { color: #1a5c40; } .rm-fl-sldeg.kotu { color: #a8452b; }
.rm-fl-slet { margin: 6px 0 0; font-size: .76rem; line-height: 1.5; color: #97a0b0; }
.rm-fl-kutu .rm-recd-satir b.iyi { color: #1a5c40; } .rm-fl-kutu .rm-recd-satir b.kotu { color: #a8452b; }
/* hazır vakalar */
.rm-fl-vaka { margin-top: auto; padding-top: 14px; }
.rm-fl-vaka .rm-lbl { display: block; margin-bottom: 8px; }
.rm-fl-vbtn { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
.rm-fl-vbtn button { cursor: pointer; text-align: left; padding: 10px 12px; border-radius: 12px;
  background: rgba(22,35,61,.03); border: 1px solid rgba(22,35,61,.07);
  transition: transform .28s cubic-bezier(.22,1,.36,1), border-color .28s ease, background .28s ease,
    box-shadow .28s ease; }
.rm-fl-vbtn button:hover { transform: translateY(-2px); background: #fff; border-color: rgba(90,124,196,.3); }
.rm-fl-vbtn button.aktif { background: #fff; border-color: rgba(31,107,74,.4);
  box-shadow: 0 16px 30px -22px rgba(31,107,74,.6); }
.rm-fl-vbtn b { display: block; font-family: 'Inter', sans-serif; font-size: .8rem; font-weight: 700;
  color: #16233d; margin-bottom: 2px; }
.rm-fl-vbtn i { font-style: normal; font-family: 'Inter', sans-serif; font-size: .72rem; line-height: 1.45;
  color: #8b93a3; }

/* alt not kartları */
.rm-fl-notlar { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 12px;
  margin-top: 18px; }
.rm-fl-nk { padding: 14px 16px; border-radius: 14px; background: #fff;
  border: 1px solid rgba(22,35,61,.07); box-shadow: 0 16px 30px -28px rgba(22,35,61,.5);
  transition: transform .28s cubic-bezier(.22,1,.36,1); }
.rm-fl-nk:hover { transform: translateY(-2px); }
.rm-fl-nk b { display: block; font-family: 'Inter', sans-serif; font-size: .88rem; color: #16233d; margin-bottom: 4px; }
.rm-fl-nk p { margin: 0; font-size: .83rem; line-height: 1.6; color: #6a7488; }

@media (max-width: 720px) { .rm-fl-vbtn { grid-template-columns: 1fr; } }
@media (prefers-reduced-motion: reduce) {
  .rm-fl-ok, .rm-fl-band.hedef.duyulur { animation: none; }
  .rm-fl-par { display: none; }
}
.rm-fl-swt { background: #fff; border: 1px solid rgba(22,35,61,.08); border-radius: 16px; padding: 14px 16px; }

/* kuplaj */
.rm-kp-hedef, .rm-kp-msg, .rm-kp-kazanc { fill: none; stroke-linecap: round; stroke-linejoin: round; }
.rm-kp-hedef { stroke: #b3872f; stroke-width: 2.4; stroke-dasharray: 6 4; }
.rm-kp-msg { stroke: #c8503f; stroke-width: 2.2; stroke-dasharray: 3 3; }
.rm-kp-kazanc { stroke: #1f6b4a; stroke-width: 3.2; }
.rm-kp-risk { fill: rgba(200,80,63,.85); }
.rm-kp-leg .l-h { color: #b3872f; } .rm-kp-leg .l-k { color: #1f6b4a; } .rm-kp-leg .l-m { color: #c8503f; }


/* validasyon */
.rm-val-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 14px; }
.rm-vkart { display: flex; flex-direction: column; gap: 6px; padding: 20px; border-radius: 16px; background: #fff;
  border: 1px solid rgba(22,35,61,.08); box-shadow: 0 16px 30px -26px rgba(22,35,61,.5);
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease; }
a.rm-vkart:hover { transform: translateY(-3px); border-color: rgba(90,124,196,.28); box-shadow: 0 26px 44px -26px rgba(22,35,61,.6); }
.rm-vkart.pasif { background: linear-gradient(160deg, #f7f9fc, #f2f5fa); }
.rm-vk-et { font-family: 'Inter', sans-serif; font-size: .68rem; font-weight: 700; letter-spacing: .12em;
  text-transform: uppercase; color: #b3603f; }
.rm-vkart h3 { font-family: 'Inter', sans-serif; font-size: 1.02rem; font-weight: 700; color: #16233d; margin: 2px 0 4px; }
.rm-vkart p { font-size: .87rem; line-height: 1.6; color: #4d5768; margin: 0; }
.rm-vk-ok { margin-top: 8px; font-family: 'Inter', sans-serif; font-size: .82rem; font-weight: 600; color: #3f5fa6; }

@media (max-width: 960px) {
  .rm-dyn, .rm-sik, .rm-snr, .rm-fl, .rm-kp { grid-template-columns: 1fr; }
}

/* ================== Test kutusu (ANSI S3.22) ================== */
.rm-tk { display: grid; grid-template-columns: minmax(300px, .82fr) 1.18fr; gap: 22px; align-items: start; }

/* --- kabin --- */
.rm-tk-sol { display: flex; flex-direction: column; gap: 14px; }
.rm-tk-kabin { position: relative; overflow: hidden; perspective: 1000px; padding: 16px 16px 14px; border-radius: 22px;
  background: linear-gradient(160deg, #fff, #f6f8fc);
  border: 1px solid rgba(22,35,61,.08); box-shadow: 0 24px 46px -34px rgba(22,35,61,.6); }
.rm-tk-svg { display: block; width: 100%; height: auto; transform-style: preserve-3d;
  transition: transform .45s cubic-bezier(.22,1,.36,1); will-change: transform; }

/* --- 3B test kutusu --- */
.k3-ust { fill: url(#k3Metal); stroke: rgba(22,35,61,.18); stroke-width: .8; }
.k3-yanL { fill: url(#k3YanL); stroke: rgba(22,35,61,.2); stroke-width: .8; }
.k3-yanR { fill: url(#k3YanR); stroke: rgba(22,35,61,.22); stroke-width: .8; }
.k3-pah { fill: none; stroke: rgba(255,255,255,.55); stroke-width: 1.4; }
.k3-plaka { fill: url(#k3Plaka); stroke: rgba(255,255,255,.14); stroke-width: .8; }
.k3-grille circle { fill: rgba(255,255,255,.16); }
.rm-tk.olcuyor:not(.sessiz) .k3-grille circle { animation: k3Izgara 1.1s ease-in-out infinite; }
@keyframes k3Izgara { 0%, 100% { fill: rgba(255,255,255,.14); } 50% { fill: rgba(226,160,143,.55); } }

.k3-kapak { fill: url(#k3Kapak); stroke: rgba(22,35,61,.3); stroke-width: .8; }
.k3-kapak-yan, .k3-kapak-yan2 { fill: url(#k3KapakYan); stroke: rgba(22,35,61,.25); stroke-width: .6; }
.k3-kapak-ic { fill: #14161a; stroke: rgba(255,255,255,.08); }
.k3-kapak-parlak { fill: rgba(255,255,255,.07); }
.k3-fo-d { fill: #171a1f; }
.k3-fo-t { fill: #454b55; }
.k3-foam { opacity: .95; }
.k3-mentese { fill: #6f7784; stroke: rgba(22,35,61,.3); stroke-width: .6; }

.k3-dalga ellipse { fill: none; stroke: #e2a08f; stroke-width: 1.8; opacity: 0;
  transform-origin: center; transform-box: fill-box; transition: opacity .3s ease; }
.rm-tk.olcuyor:not(.sessiz) .k3-dalga ellipse { animation: k3Dalga 1.6s ease-out infinite; }
.rm-tk.olcuyor .k3-dalga ellipse:nth-child(2) { animation-delay: .35s; }
.rm-tk.olcuyor .k3-dalga ellipse:nth-child(3) { animation-delay: .7s; }
@keyframes k3Dalga { 0% { opacity: 0; transform: scale(.45) translateY(0); }
  35% { opacity: .85; } 100% { opacity: 0; transform: scale(1.25) translateY(-16px); } }

.k3-ch-golge { fill: rgba(0,0,0,.35); }
.k3-ch-govde { fill: url(#k3Cihaz); stroke: rgba(255,255,255,.4); stroke-width: 1; }
.k3-ch-mik { fill: rgba(255,255,255,.92); }
.k3-ch-kanca { stroke: #e9d9d2; stroke-width: 2.6; stroke-linecap: round; }
.k3-tup { stroke: rgba(235,240,248,.75); stroke-width: 2.8; stroke-linecap: round; }
.rm-tk.olcuyor .k3-cihaz { animation: k3Titre 2.6s ease-in-out infinite; }
@keyframes k3Titre { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-1.4px); } }

.k3-kup-golge { fill: rgba(0,0,0,.35); }
.k3-kup-govde { fill: url(#k3Kup); stroke: rgba(22,35,61,.25); stroke-width: .7; }
.k3-kup-ust { fill: #dfe5ee; stroke: rgba(22,35,61,.25); stroke-width: .7; }
.k3-kup-agiz { fill: #2b3140; }
.k3-kup-nok { fill: #7fa2e0; transform-origin: center; transform-box: fill-box; }
.rm-tk.olcuyor .k3-kup-nok { animation: k3Mik 1s ease-in-out infinite; }
@keyframes k3Mik { 0%, 100% { opacity: .6; transform: scale(.9); } 50% { opacity: 1; transform: scale(1.3); } }
.k3-kup-dalga { stroke: #7fa2e0; stroke-width: 1.6; stroke-linecap: round; opacity: 0; transition: opacity .3s ease; }
.rm-tk.olcuyor:not(.sessiz) .k3-kup-dalga { opacity: .9; animation: k3KupDalga .5s linear infinite; }
@keyframes k3KupDalga { 0% { transform: translateX(0); } 100% { transform: translateX(8px); } }

.k3-led, .k3-led-isik { stroke: #6aa8ff; stroke-width: 2.4; stroke-linecap: round; opacity: .45;
  transition: stroke .4s ease, opacity .4s ease; }
.k3-led-isik { stroke-width: 5; opacity: .3; }
.k3-led-nok { fill: #6aa8ff; opacity: .6; }
.rm-tk.olcuyor .k3-led, .rm-tk.olcuyor .k3-led-isik, .rm-tk.olcuyor .k3-led-nok { animation: k3Led 1.1s ease-in-out infinite; }
@keyframes k3Led { 0%, 100% { opacity: .35; } 50% { opacity: 1; } }
.rm-tk.bitti-iyi .k3-led, .rm-tk.bitti-iyi .k3-led-isik, .rm-tk.bitti-iyi .k3-led-nok { stroke: #4bbf87; fill: #4bbf87; opacity: 1; }
.rm-tk.bitti-kotu .k3-led, .rm-tk.bitti-kotu .k3-led-isik, .rm-tk.bitti-kotu .k3-led-nok { stroke: #e2887a; fill: #e2887a; opacity: 1; }

/* sessiz aşama (EIN): kabin susar */
.rm-tk.sessiz .k3-grille circle { fill: rgba(255,255,255,.1); }
.rm-tk.sessiz .k3-kup-nok { animation: k3Gurultu .3s steps(2) infinite; }
@keyframes k3Gurultu { 0% { opacity: .45; } 100% { opacity: 1; } }

.k3-tara { transition: opacity .35s ease, x .16s linear; }
.k3-etiket line { stroke: rgba(22,35,61,.22); stroke-width: 1; stroke-dasharray: 3 3; }
.k3-etiket circle { fill: #c9603a; }
.k3-etiket text { font-family: 'Inter', sans-serif; font-size: 9.5px; font-weight: 600; fill: #7b8494; }

/* arıza vurgusu */
.rm-tk.bitti-iyi .k3-ust { animation: tkPrlIyi 1.3s ease; }
.rm-tk[data-ariza] .k3-ust { animation: tkPrlKotu 1.3s ease; }
@keyframes tkPrlIyi { 0%, 100% { filter: none; } 35% { filter: drop-shadow(0 0 18px rgba(31,107,74,.8)); } }
@keyframes tkPrlKotu { 0%, 100% { filter: none; } 35% { filter: drop-shadow(0 0 18px rgba(200,80,63,.8)); } }
.rm-tk[data-ariza="mik"] .k3-ch-mik { fill: #ff6a4d; animation: tkUyar 1s ease-in-out infinite; }
.rm-tk[data-ariza="alici"] .k3-tup, .rm-tk[data-ariza="alici"] .k3-ch-kanca { stroke: #ff6a4d; animation: tkUyar 1s ease-in-out infinite; }
.rm-tk[data-ariza="cihaz"] .k3-ch-govde { stroke: #ff6a4d; stroke-width: 2; animation: tkUyar 1s ease-in-out infinite; }
.rm-tk[data-ariza="kuplor"] .k3-kup-agiz { fill: #ff6a4d; animation: tkUyar 1s ease-in-out infinite; }
@keyframes tkUyar { 0%, 100% { opacity: .45; } 50% { opacity: 1; } }

.rm-tk-rozet { position: absolute; top: 26px; right: 28px; z-index: 3; display: inline-flex; align-items: center; gap: 8px;
  padding: 7px 14px; border-radius: 999px; font-family: 'Inter', sans-serif; font-size: .7rem; font-weight: 700;
  letter-spacing: .07em; text-transform: uppercase; color: #5f6a7d;
  background: rgba(255,255,255,.82); border: 1px solid rgba(22,35,61,.1);
  box-shadow: 0 10px 22px -16px rgba(22,35,61,.6);
  -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px);
  transition: color .3s ease, background .3s ease, border-color .3s ease; }
.rm-tk-rozet::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: #9aa6bb; }
.rm-tk-rozet.calisiyor { color: #a8452b; background: rgba(255,255,255,.9); border-color: rgba(201,96,58,.28); }
.rm-tk-rozet.calisiyor::before { background: #c9603a; animation: tkYan .8s ease-in-out infinite; }
.rm-tk-rozet.iyi { color: #1a5c40; background: rgba(233,246,240,.95); border-color: rgba(31,107,74,.3); }
.rm-tk-rozet.iyi::before { background: #1f6b4a; }
.rm-tk-rozet.kotu { color: #a8452b; background: rgba(253,238,234,.95); border-color: rgba(200,80,63,.32); }
.rm-tk-rozet.kotu::before { background: #c8503f; }
@keyframes tkYan { 0%, 100% { opacity: .35; transform: scale(.85); } 50% { opacity: 1; transform: scale(1.15); } }

/* kapak: ölçüm sırasında kapanır, içerisi hayalet gibi görünür */
.k3-kapak-g { transition: opacity .45s ease; }
.rm-tk.kapali .k3-kapak-g { opacity: .38; }
.rm-tk.kapali .k3-foam { opacity: .5; }

/* senaryo seçici: vaka kartları */
.rm-tk-senaryo { display: flex; flex-direction: column; gap: 10px; }
.rm-tk-vaka { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.rm-tk-vk { position: relative; overflow: hidden; display: flex; align-items: center; gap: 10px; cursor: pointer;
  padding: 11px 13px; text-align: left; border-radius: 14px;
  background: #fff; border: 1px solid rgba(22,35,61,.09);
  box-shadow: 0 14px 26px -24px rgba(22,35,61,.55);
  transition: transform .28s cubic-bezier(.22,1,.36,1), box-shadow .28s ease, border-color .28s ease, background .28s ease; }
.rm-tk-vk:hover { transform: translateY(-2px); border-color: rgba(90,124,196,.35);
  box-shadow: 0 20px 34px -22px rgba(22,35,61,.6); }
.rm-tk-vk:focus-visible { outline: 2px solid #c9603a; outline-offset: 2px; }
.vk-ik { flex: none; display: grid; place-items: center; width: 30px; height: 30px; border-radius: 10px;
  color: #5f7398; background: rgba(90,124,196,.1); border: 1px solid rgba(90,124,196,.16);
  transition: color .28s ease, background .28s ease, border-color .28s ease; }
.vk-ik svg { width: 17px; height: 17px; }
.vk-tx { min-width: 0; }
.vk-et { display: block; font-family: 'Inter', sans-serif; font-size: .6rem; font-weight: 700; letter-spacing: .1em;
  text-transform: uppercase; color: #a2aab8; margin-bottom: 1px; transition: color .28s ease; }
.rm-tk-vk b { display: block; font-family: 'Inter', sans-serif; font-size: .82rem; font-weight: 600; color: #33405c;
  line-height: 1.35; transition: color .28s ease; }
.rm-tk-vk.aktif { background: linear-gradient(135deg, #1d2a44, #3a5a9c); border-color: transparent;
  box-shadow: 0 20px 36px -20px rgba(29,42,68,.95); }
.rm-tk-vk.aktif .vk-ik { color: #fff; background: rgba(255,255,255,.16); border-color: rgba(255,255,255,.24); }
.rm-tk-vk.aktif .vk-et { color: rgba(255,255,255,.6); }
.rm-tk-vk.aktif b { color: #fff; }
.rm-tk-vk.aktif::after { content: ""; position: absolute; inset: 0; pointer-events: none;
  background: linear-gradient(120deg, transparent 35%, rgba(255,255,255,.16), transparent 65%);
  transform: translateX(-100%); animation: vkParla .9s cubic-bezier(.22,1,.36,1); }
@keyframes vkParla { to { transform: translateX(100%); } }
@media (max-width: 520px) { .rm-tk-vaka { grid-template-columns: 1fr; } }

/* ölçüm konsolu */
.rm-tk-hud { display: grid; grid-template-columns: 1fr; gap: 7px; margin-top: 12px; padding: 12px 14px;
  border-radius: 14px; background: rgba(22,35,61,.035); border: 1px solid rgba(22,35,61,.07); }
.rm-tk-hud-s { display: flex; align-items: baseline; gap: 10px; }
.rm-tk-hud-s span { flex: none; width: 62px; font-family: 'Inter', sans-serif; font-size: .64rem; font-weight: 700;
  letter-spacing: .1em; text-transform: uppercase; color: #97a0b0; }
.rm-tk-hud-s b { font-family: 'Space Grotesk', sans-serif; font-size: .82rem; font-weight: 600; color: #16233d;
  font-variant-numeric: tabular-nums; line-height: 1.4; }
.rm-tk-cizgi { display: block; height: 4px; margin-top: 3px; border-radius: 999px; background: rgba(22,35,61,.08); overflow: hidden; }
.rm-tk-cizgi i { display: block; width: 0; height: 100%; border-radius: 999px;
  background: linear-gradient(90deg, #3a5a9c, #c9603a); transition: width .22s ease; }

.rm-tk-btn { display: inline-flex; align-items: center; justify-content: center; gap: 10px; width: 100%; cursor: pointer;
  padding: 15px 22px; border: 0; border-radius: 16px;
  font-family: 'Inter', sans-serif; font-size: .95rem; font-weight: 700; color: #fff;
  background: linear-gradient(135deg, #1d2a44, #3a5a9c);
  box-shadow: 0 20px 36px -22px rgba(29,42,68,.95);
  transition: transform .3s cubic-bezier(.22,1,.36,1), box-shadow .3s ease, opacity .3s ease; }
.rm-tk-btn:hover:not(:disabled) { transform: translateY(-2px); box-shadow: 0 26px 44px -20px rgba(29,42,68,1); }
.rm-tk-btn:disabled { cursor: progress; opacity: .8; }
.rm-tk-btn-ik { display: grid; place-items: center; width: 20px; height: 20px; }
.rm-tk-btn-ik svg { width: 20px; height: 20px; }
.rm-tk.olcuyor .rm-tk-btn-ik svg { animation: tkNabiz 1s ease-in-out infinite; }
@keyframes tkNabiz { 0%, 100% { transform: scaleY(.7); opacity: .7; } 50% { transform: scaleY(1.15); opacity: 1; } }

/* --- ölçüm paneli --- */
.rm-tk-sag { display: flex; flex-direction: column; gap: 14px; }
.rm-tk-panel { padding: 0; overflow: hidden; background: #fff; border: 1px solid rgba(22,35,61,.08);
  border-radius: 20px; box-shadow: 0 24px 46px -36px rgba(22,35,61,.6); }
.rm-tk-satir { display: grid; grid-template-columns: 1.45fr .78fr 1.1fr .9fr .85fr; align-items: center; gap: 12px;
  padding: 13px 18px; border-bottom: 1px solid rgba(22,35,61,.06); }
.rm-tk-satir:last-child { border-bottom: 0; }
.rm-tk-bas { background: rgba(22,35,61,.035); padding: 10px 18px; }
.rm-tk-bas span { font-family: 'Inter', sans-serif; font-size: .68rem; font-weight: 700; letter-spacing: .09em;
  text-transform: uppercase; color: #8b93a3; }
.rm-tk-ad b { display: block; font-family: 'Inter', sans-serif; font-size: .88rem; font-weight: 600; color: #33405c; }
.rm-tk-ad i { display: block; font-style: normal; font-size: .73rem; color: #97a0b0; margin-top: 2px; }
.rm-tk-olc { display: flex; align-items: baseline; gap: 5px; }
.rm-tk-deg { font-family: 'Space Grotesk', sans-serif; font-size: 1.02rem; font-weight: 700; color: #16233d;
  font-variant-numeric: tabular-nums; }
.rm-tk-br { font-size: .7rem; color: #97a0b0; }
.rm-tk-ref { font-size: .76rem; color: #97a0b0; font-variant-numeric: tabular-nums; }

.rm-tk-iz { position: relative; height: 20px; }
.rm-tk-iz::before { content: ""; position: absolute; left: 0; right: 0; top: 9px; height: 2px; border-radius: 2px;
  background: rgba(22,35,61,.08); }
.rm-tk-band { position: absolute; left: 33.3%; width: 33.4%; top: 5px; height: 10px; border-radius: 4px;
  background: rgba(31,107,74,.14); border: 1px solid rgba(31,107,74,.22); }
.rm-tk-orta { position: absolute; left: 50%; top: 3px; width: 1px; height: 14px; background: rgba(31,107,74,.45); }
.rm-tk-igne { position: absolute; top: 1px; left: 50%; width: 3px; height: 18px; margin-left: -1.5px; border-radius: 2px;
  background: #16233d; opacity: 0;
  box-shadow: 0 0 0 3px rgba(22,35,61,.08);
  transition: left .7s cubic-bezier(.34,1.4,.5,1), opacity .3s ease, background .3s ease, box-shadow .3s ease; }
.rm-tk-satir.kotu .rm-tk-igne { background: #c8503f; box-shadow: 0 0 0 3px rgba(200,80,63,.16); }
.rm-tk-satir.iyi .rm-tk-igne { background: #1f6b4a; box-shadow: 0 0 0 3px rgba(31,107,74,.16); }

.rm-tk-rz { justify-self: start; padding: 5px 11px; border-radius: 999px; font-family: 'Inter', sans-serif;
  font-size: .72rem; font-weight: 700; color: #97a0b0; background: rgba(22,35,61,.05); white-space: nowrap; }
.rm-tk-rz.iyi { color: #1a5c40; background: rgba(31,107,74,.12); }
.rm-tk-rz.iyi::before { content: "✓ "; }
.rm-tk-rz.kotu { color: #a8452b; background: rgba(200,80,63,.12); }
.rm-tk-rz.kotu::before { content: "✕ "; }
.rm-tk-satir.dolu { animation: tkSatir .5s cubic-bezier(.22,1,.36,1); }
@keyframes tkSatir { from { background: rgba(90,124,196,.08); } to { background: transparent; } }
.rm-tk-satir.bekliyor .rm-tk-deg { color: #c3c9d4; }
.rm-tk-satir.aktif { background: rgba(90,124,196,.06); box-shadow: inset 3px 0 0 #3a5a9c; }
.rm-tk-satir.aktif .rm-tk-ad b { color: #16233d; }
.rm-tk.olcuyor .rm-tk-satir.bekliyor { position: relative; overflow: hidden; }
.rm-tk.olcuyor .rm-tk-satir.bekliyor::after { content: ""; position: absolute; inset: 0; pointer-events: none;
  background: linear-gradient(90deg, transparent, rgba(90,124,196,.09), transparent);
  transform: translateX(-100%); animation: tkPrl 1.4s linear infinite; }
@keyframes tkPrl { to { transform: translateX(100%); } }

.rm-tk-sonuc { display: flex; align-items: flex-start; gap: 12px; padding: 15px 18px; border-radius: 16px;
  background: #fff; border: 1px solid rgba(22,35,61,.08); border-left: 3px solid #b8c0cf;
  box-shadow: 0 18px 36px -32px rgba(22,35,61,.5);
  transition: border-color .4s ease, background .4s ease; }
.rm-tk-sonuc p { margin: 0; font-size: .9rem; line-height: 1.62; color: #4d5768; }
.rm-tk-sn-ik { flex: none; display: grid; place-items: center; width: 24px; height: 24px; border-radius: 8px;
  font-size: .8rem; font-weight: 700; color: #8b93a3; background: rgba(22,35,61,.06); }
.rm-tk-sonuc.iyi { border-left-color: #1f6b4a; background: linear-gradient(140deg, rgba(31,107,74,.06), #fff);
  animation: tkSonuc .55s cubic-bezier(.22,1,.36,1); }
.rm-tk-sonuc.iyi .rm-tk-sn-ik { color: #1a5c40; background: rgba(31,107,74,.14); }
.rm-tk-sonuc.iyi .rm-tk-sn-ik::before { content: "✓"; }
.rm-tk-sonuc.kotu { border-left-color: #c8503f; background: linear-gradient(140deg, rgba(200,80,63,.06), #fff);
  animation: tkSonuc .55s cubic-bezier(.22,1,.36,1); }
.rm-tk-sonuc.kotu .rm-tk-sn-ik { color: #a8452b; background: rgba(200,80,63,.14); }
.rm-tk-sonuc.kotu .rm-tk-sn-ik::before { content: "!"; }
.rm-tk-sonuc.iyi .rm-tk-sn-ik, .rm-tk-sonuc.kotu .rm-tk-sn-ik { font-size: 0; }
.rm-tk-sonuc.iyi .rm-tk-sn-ik::before, .rm-tk-sonuc.kotu .rm-tk-sn-ik::before { font-size: .85rem; }
@keyframes tkSonuc { from { opacity: .4; transform: translateY(8px); } to { opacity: 1; transform: none; } }
.rm-tk-notlar { margin: 0; }

@media (max-width: 1000px) {
  .rm-tk { grid-template-columns: 1fr; }
  .rm-tk-satir { grid-template-columns: 1.3fr .8fr .9fr; row-gap: 8px; }
  .rm-tk-satir .rm-tk-iz { grid-column: 1 / -1; }
  .rm-tk-bas { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  .rm-tk *, .rm-tk-igne { animation: none !important; transition: none !important; }
}

/* --- frekans yanıt eğrisi kartı --- */
.rm-tk-egri-kart { padding: 16px 18px 12px; border-radius: 20px; background: #fff;
  border: 1px solid rgba(22,35,61,.08); box-shadow: 0 24px 46px -36px rgba(22,35,61,.6);
  transition: border-color .35s ease, box-shadow .35s ease; }
.rm-tk-egri-kart.aktif { border-color: rgba(90,124,196,.4); box-shadow: 0 24px 46px -30px rgba(58,90,156,.55); }
.rm-tk-ek-bas { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 4px; }
.rm-tk-ek-bas .rm-lbl { margin: 0; }
.rm-tk-ek-svg { display: block; width: 100%; height: auto; }
.ek-g { stroke: rgba(22,35,61,.08); stroke-width: 1; }
.ek-ax { font-family: 'Inter', sans-serif; font-size: 10px; fill: #97a0b0; }
.ek-band { fill: rgba(31,107,74,.1); stroke: rgba(31,107,74,.22); stroke-width: 1; }
.ek-ref { fill: none; stroke: #1f6b4a; stroke-width: 1.8; stroke-dasharray: 5 4; opacity: .75; }
.ek-olc { fill: none; stroke: #16233d; stroke-width: 2.8; stroke-linecap: round; stroke-linejoin: round;
  transition: stroke .35s ease; filter: drop-shadow(0 4px 8px rgba(22,35,61,.18)); }
.ek-olc.kotu { stroke: #c8503f; }
.ek-nok { fill: #16233d; animation: ekNok .4s cubic-bezier(.22,1,.36,1); transform-origin: center; transform-box: fill-box; }
.ek-olc.kotu ~ #rm-tk-egri-n .ek-nok, .rm-tk[data-ariza] .ek-nok { fill: #c8503f; }
@keyframes ekNok { from { transform: scale(0); opacity: 0; } to { transform: scale(1); opacity: 1; } }
.rm-tk-ek-leg { display: flex; flex-wrap: wrap; gap: 16px; margin-top: 4px; }
.rm-tk-ek-leg span { display: inline-flex; align-items: center; gap: 6px; font-family: 'Inter', sans-serif;
  font-size: .74rem; color: #7b8494; }
.rm-tk-ek-leg span::before { content: ""; width: 14px; height: 3px; border-radius: 2px; }
.rm-tk-ek-leg .l-b::before { background: rgba(31,107,74,.25); height: 9px; border-radius: 3px; }
.rm-tk-ek-leg .l-r::before { background: repeating-linear-gradient(90deg, #1f6b4a 0 5px, transparent 5px 9px); }
.rm-tk-ek-leg .l-o::before { background: #16233d; }

/* --- segment düğmeleri (hedef, SII, senaryo…) --- */
.rm-seg { display: inline-flex; flex-wrap: wrap; gap: 5px; padding: 5px; border-radius: 14px;
  background: rgba(22,35,61,.05); border: 1px solid rgba(22,35,61,.07); }
.rm-seg button { cursor: pointer; padding: 8px 14px; border: 0; border-radius: 10px; background: transparent;
  font-family: 'Inter', sans-serif; font-size: .84rem; font-weight: 600; color: #5f6a7d; white-space: nowrap;
  transition: color .22s ease, background .22s ease, box-shadow .22s ease, transform .22s cubic-bezier(.22,1,.36,1); }
.rm-seg button:hover { color: #16233d; background: rgba(255,255,255,.75); }
.rm-seg button.aktif { color: #fff; background: linear-gradient(135deg, #1d2a44, #3a5a9c);
  box-shadow: 0 12px 22px -14px rgba(29,42,68,.95); transform: translateY(-1px); }
.rm-seg button:focus-visible { outline: 2px solid #c9603a; outline-offset: 2px; }

/* --- eğri grafiği başlıkları --- */
.ek-bas { font-family: 'Inter', sans-serif; font-size: 10.5px; font-weight: 600; fill: #97a0b0; }

/* --- ölçümden sonra beliren okuma notları --- */
.rm-tk-not-kart { overflow: hidden; max-height: 0; opacity: 0; transform: translateY(10px);
  padding: 0 20px; border-radius: 18px; background: linear-gradient(150deg, #fff, #f7f9fd);
  border: 1px solid transparent; box-shadow: none;
  transition: max-height .7s cubic-bezier(.22,1,.36,1), opacity .5s ease, transform .5s cubic-bezier(.22,1,.36,1),
              padding .5s ease, border-color .5s ease, box-shadow .5s ease; }
.rm-tk-not-kart.gor { max-height: 420px; opacity: 1; transform: none; padding: 18px 20px;
  border-color: rgba(22,35,61,.08); box-shadow: 0 22px 44px -36px rgba(22,35,61,.6); }
.rm-tk-nk-bas { display: block; font-family: 'Inter', sans-serif; font-size: .68rem; font-weight: 700;
  letter-spacing: .12em; text-transform: uppercase; color: #b3603f; margin-bottom: 12px; }
.rm-tk-notlar { list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; }
.rm-tk-notlar li { display: flex; align-items: flex-start; gap: 11px;
  opacity: 0; transform: translateY(8px); transition: opacity .5s ease, transform .5s cubic-bezier(.22,1,.36,1); }
.rm-tk-not-kart.gor .rm-tk-notlar li { opacity: 1; transform: none; }
.rm-tk-not-kart.gor .rm-tk-notlar li:nth-child(1) { transition-delay: .12s; }
.rm-tk-not-kart.gor .rm-tk-notlar li:nth-child(2) { transition-delay: .24s; }
.rm-tk-not-kart.gor .rm-tk-notlar li:nth-child(3) { transition-delay: .36s; }
.rm-tk-notlar p { margin: 0; font-size: .87rem; line-height: 1.6; color: #4d5768; }
.rm-tk-notlar b { color: #16233d; }
.rm-tk-nk-ik { flex: none; display: grid; place-items: center; width: 24px; height: 24px; border-radius: 8px;
  font-size: .78rem; font-weight: 700; color: #b3603f;
  background: linear-gradient(140deg, rgba(201,96,58,.14), rgba(201,96,58,.05));
  border: 1px solid rgba(201,96,58,.18); }
@media (prefers-reduced-motion: reduce) {
  .rm-tk-not-kart, .rm-tk-notlar li { transition: none; }
}


/* ---- klinik protokol ---- */
.rm-prot { display: grid; grid-template-columns: 300px 1fr; gap: 22px; align-items: start; }

/* sol: ilerleme + adım listesi */
.rm-prot-yan { background: #fff; border: 1px solid rgba(22,35,61,.08); border-radius: 20px; padding: 16px 14px 12px;
  box-shadow: 0 22px 44px -34px rgba(22,35,61,.55); }
.rm-prot-ilerleme { display: flex; align-items: center; gap: 12px; padding: 0 6px 12px;
  border-bottom: 1px dashed rgba(22,35,61,.1); margin-bottom: 10px; }
.rm-prot-say { font-family: 'Inter', sans-serif; font-size: .72rem; font-weight: 600; color: #97a0b0; }
.rm-prot-say b { font-family: 'Space Grotesk', sans-serif; font-size: 1.05rem; font-weight: 700; color: #16233d; }
.rm-prot-cubuk { flex: 1; height: 4px; border-radius: 999px; background: rgba(22,35,61,.08); overflow: hidden; }
.rm-prot-cubuk i { display: block; height: 100%; width: 0; border-radius: 999px;
  background: linear-gradient(90deg, #3a5a9c, #c9603a); transition: height .45s ease; }

.rm-prot-liste { position: relative; list-style: none; margin: 0; padding: 0; display: grid; gap: 2px; }
.rm-prot-liste::before { content: ""; position: absolute; left: 27px; top: 20px; bottom: 20px; width: 2px;
  background: rgba(22,35,61,.07); border-radius: 2px; }
.rm-prot-liste button { position: relative; z-index: 1; display: flex; align-items: center; gap: 12px; width: 100%;
  cursor: pointer; padding: 10px 12px; border: 0; border-radius: 12px; background: none; text-align: left;
  transition: background .24s ease, transform .24s cubic-bezier(.22,1,.36,1); }
.rm-prot-liste button:hover { background: rgba(22,35,61,.04); transform: translateX(3px); }
.rm-prot-liste button:focus-visible { outline: 2px solid #c9603a; outline-offset: -2px; }
.rm-prot-no { flex: none; display: grid; place-items: center; width: 30px; height: 30px; border-radius: 10px;
  font-family: 'Space Grotesk', sans-serif; font-size: .8rem; font-weight: 700; color: #6a7488;
  background: #fff; border: 1px solid rgba(22,35,61,.12);
  transition: color .26s ease, background .26s ease, border-color .26s ease, box-shadow .26s ease, transform .26s cubic-bezier(.22,1,.36,1); }
.rm-prot-ad { flex: 1; font-family: 'Inter', sans-serif; font-size: .89rem; font-weight: 600; color: #4d5768;
  line-height: 1.35; transition: color .26s ease; }
.rm-prot-ok { flex: none; font-size: .8rem; color: #c9603a; opacity: 0; transform: translateX(-4px);
  transition: opacity .26s ease, transform .26s ease; }

.rm-prot-liste button.tamam .rm-prot-no { color: #1f6b4a; background: rgba(31,107,74,.1);
  border-color: rgba(31,107,74,.24); font-size: 0; }
.rm-prot-liste button.tamam .rm-prot-no::after { content: "✓"; font-size: .82rem; }
.rm-prot-liste button.tamam .rm-prot-ad { color: #7b8494; }

.rm-prot-liste button.aktif { background: linear-gradient(100deg, rgba(90,124,196,.1), rgba(90,124,196,.02)); }
.rm-prot-liste button.aktif .rm-prot-no { color: #fff; border-color: transparent; transform: scale(1.06);
  background: linear-gradient(135deg, #1d2a44, #3a5a9c);
  box-shadow: 0 10px 20px -10px rgba(29,42,68,.9), 0 0 0 4px rgba(90,124,196,.12); }
.rm-prot-liste button.aktif .rm-prot-ad { color: #16233d; font-weight: 700; }
.rm-prot-liste button.aktif .rm-prot-ok { opacity: 1; transform: none; }

/* orta: adım kartı */
.rm-prot-govde { display: grid; grid-template-columns: 1.18fr .82fr; gap: 18px; align-items: start; }
.rm-prot-kart, .rm-prot-gor { position: relative; background: #fff; border: 1px solid rgba(22,35,61,.08);
  border-radius: 20px; padding: 24px; box-shadow: 0 22px 44px -34px rgba(22,35,61,.55); overflow: hidden; }
.rm-prot-kart.gec, .rm-prot-gor.gec { animation: rmProtGir .5s cubic-bezier(.22,1,.36,1); }
.rm-prot-kart.gec.geri, .rm-prot-gor.gec.geri { animation: rmProtGeri .5s cubic-bezier(.22,1,.36,1); }
@keyframes rmProtGir { from { opacity: 0; transform: translateX(14px); } to { opacity: 1; transform: none; } }
@keyframes rmProtGeri { from { opacity: 0; transform: translateX(-14px); } to { opacity: 1; transform: none; } }

.rm-prot-bar { position: absolute; top: 0; left: 0; right: 0; height: 3px; background: rgba(22,35,61,.06); }
.rm-prot-bar i { display: block; height: 100%; width: 11%;
  background: linear-gradient(90deg, #3a5a9c, #c9603a); transition: width .5s cubic-bezier(.22,1,.36,1); }
.rm-prot-et { display: inline-block; font-family: 'Inter', sans-serif; font-size: .66rem; font-weight: 700;
  letter-spacing: .12em; text-transform: uppercase; color: #b3603f; margin-bottom: 6px; }
.rm-prot-kart h3 { font-family: 'Newsreader', serif; font-weight: 600; font-size: 1.38rem; color: #16233d; margin: 0 0 10px; }
.rm-prot-kart p { font-size: .92rem; line-height: 1.72; color: #4d5768; margin: 0; }
.rm-prot-kontrol { margin-top: 16px; padding-top: 14px; border-top: 1px dashed rgba(22,35,61,.12); }
.rm-prot-kontrol ul { list-style: none; margin: 10px 0 0; padding: 0; display: grid; gap: 7px; }
.rm-prot-kontrol li { position: relative; padding-left: 26px; font-size: .88rem; line-height: 1.55; color: #4d5768;
  animation: rmKGir .45s cubic-bezier(.22,1,.36,1) backwards; }
.rm-prot-kontrol li::before { content: "✓"; position: absolute; left: 0; top: -1px; display: grid; place-items: center;
  width: 18px; height: 18px; border-radius: 6px; font-size: .68rem; font-weight: 700;
  color: #1f6b4a; background: rgba(31,107,74,.1); border: 1px solid rgba(31,107,74,.18); }
@keyframes rmKGir { from { opacity: 0; transform: translateX(-8px); } to { opacity: 1; transform: none; } }
.rm-prot-uyari { margin-top: 14px; padding: 11px 13px; border-radius: 11px; font-size: .86rem; line-height: 1.6;
  color: #a8452b; background: rgba(201,96,58,.07); border-left: 3px solid #c9603a; }

/* gezinme */
.rm-prot-nav { display: flex; align-items: center; justify-content: space-between; gap: 10px;
  margin-top: 18px; padding-top: 16px; border-top: 1px solid rgba(22,35,61,.07); }
.rm-prot-nb { display: inline-flex; align-items: center; gap: 6px; cursor: pointer; padding: 9px 14px;
  border-radius: 11px; border: 1px solid rgba(22,35,61,.1); background: #fff;
  font-family: 'Inter', sans-serif; font-size: .84rem; font-weight: 600; color: #33405c;
  transition: transform .24s cubic-bezier(.22,1,.36,1), border-color .24s ease, box-shadow .24s ease, opacity .24s ease; }
.rm-prot-nb svg { width: 16px; height: 16px; }
.rm-prot-nb:hover:not(:disabled) { border-color: rgba(90,124,196,.4); box-shadow: 0 12px 22px -16px rgba(22,35,61,.6);
  transform: translateY(-1px); }
.rm-prot-nb:disabled { opacity: .38; cursor: not-allowed; }
.rm-prot-oynat { display: inline-flex; align-items: center; gap: 9px; cursor: pointer; padding: 9px 16px;
  border-radius: 11px; border: 0; color: #fff; background: linear-gradient(135deg, #1d2a44, #3a5a9c);
  font-family: 'Inter', sans-serif; font-size: .84rem; font-weight: 700;
  box-shadow: 0 14px 26px -16px rgba(29,42,68,.95);
  transition: transform .24s cubic-bezier(.22,1,.36,1), box-shadow .24s ease; }
.rm-prot-oynat:hover { transform: translateY(-1px); box-shadow: 0 20px 32px -16px rgba(29,42,68,1); }
.rm-prot-oy-ik { width: 0; height: 0; border-style: solid; border-width: 5px 0 5px 8px;
  border-color: transparent transparent transparent #fff; transition: all .2s ease; }
.rm-prot-oynat.calisiyor .rm-prot-oy-ik { width: 8px; height: 10px; border: 0; background: #fff;
  -webkit-mask: linear-gradient(#000 0 0) left/3px 10px no-repeat, linear-gradient(#000 0 0) right/3px 10px no-repeat;
  mask: linear-gradient(#000 0 0) left/3px 10px no-repeat, linear-gradient(#000 0 0) right/3px 10px no-repeat; }

/* sağ: şema */
.rm-prot-gor { display: flex; flex-direction: column; gap: 10px;
  background: linear-gradient(160deg, #fff, #f7f9fd); }
.rm-prot-gor-et { display: inline-block; font-family: 'Inter', sans-serif; font-size: .64rem; font-weight: 700;
  letter-spacing: .12em; text-transform: uppercase; color: #a2aab8; }
#rm-prot-svg { width: 100%; height: auto; display: block; }
.rm-ps .ps-kafa { fill: rgba(90,124,196,.08); stroke: rgba(90,124,196,.3); }
.rm-ps .ps-kanal { fill: rgba(22,35,61,.12); }
.rm-ps .ps-kanal2 { fill: rgba(90,124,196,.1); stroke: rgba(90,124,196,.35); }

/* prob tüp yerleşimi: kulak yolu kesiti */
.ps-kn-doku { stroke: rgba(201,96,58,.28); stroke-width: 1; }
.ps-kn-pinna, .ps-kn-pinna2, .ps-kn-tragus { fill: none; stroke: rgba(201,96,58,.45); stroke-width: 2; stroke-linecap: round; }
.ps-kn-pinna2 { stroke-width: 1.4; opacity: .7; }
.ps-kn-kanal { stroke: rgba(201,96,58,.3); stroke-width: 1; }
.ps-kn-orta { fill: rgba(22,35,61,.1); stroke: rgba(22,35,61,.16); }
.ps-kn-zar { stroke: #8c99ab; stroke-width: 1.2; }
.ps-kn-parlak { fill: none; stroke: rgba(255,255,255,.85); stroke-width: 2; stroke-linecap: round;
  animation: psZarParla 3s ease-in-out infinite; }
@keyframes psZarParla { 0%, 100% { opacity: .25; } 50% { opacity: .9; } }
.ps-kn-tup { stroke: #c9603a; stroke-width: 3; stroke-dasharray: 320; stroke-dashoffset: 320;
  animation: rmPsCiz 1.1s cubic-bezier(.22,1,.36,1) forwards; }
.ps-kn-mark { fill: #16233d; }
.ps-kn-cizgi { stroke: rgba(22,35,61,.3); stroke-width: 1; stroke-dasharray: 3 3; }
.ps-kn-boslu { stroke: #1f6b4a; stroke-width: 3; stroke-linecap: round;
  animation: psBoslu 1.8s ease-in-out infinite; }
@keyframes psBoslu { 0%, 100% { opacity: .45; } 50% { opacity: 1; } }
.ps-kn-olc { stroke: #1f6b4a; stroke-width: 1.4; }
.ps-kn-derin { fill: none; stroke: rgba(22,35,61,.35); stroke-width: 1.2; stroke-dasharray: 5 4; }
.ps-kn-tik { stroke: rgba(22,35,61,.4); stroke-width: 1.4; }
.ps-kan .ps-et { fill: #33405c; }
.rm-ps .ps-zar { fill: rgba(201,96,58,.35); stroke: #c9603a; }
.rm-ps .ps-otoskop { fill: #16233d; opacity: .85; }
.ps-oto-dis { fill: #0f1319; stroke: rgba(22,35,61,.12); stroke-width: 1; }
.ps-oto-g { animation: psOtoGir .7s cubic-bezier(.22,1,.36,1); }
@keyframes psOtoGir { from { opacity: 0; transform: scale(.9); transform-origin: 160px 112px; } to { opacity: 1; transform: none; } }
.ps-oto-halka { fill: none; stroke: rgba(255,255,255,.35); stroke-width: 2; }
.ps-oto-isik { animation: psOtoIsik 3.4s ease-in-out infinite; }
@keyframes psOtoIsik { 0% { transform: translateX(0); } 55% { transform: translateX(190px); } 100% { transform: translateX(190px); opacity: 0; } }
.ps-oto .ps-et { fill: #4d5768; }
.rm-ps .ps-nokta { fill: #c9603a; animation: psNok 1.6s ease-in-out infinite; transform-origin: center; transform-box: fill-box; }
@keyframes psNok { 0%, 100% { opacity: .55; transform: scale(.9); } 50% { opacity: 1; transform: scale(1.2); } }
.rm-ps .ps-oda, .rm-ps .ps-panel { fill: rgba(22,35,61,.03); stroke: rgba(22,35,61,.12); }

/* 2.5D test odası */
.ps-od-zemin { stroke: rgba(22,35,61,.09); }
.ps-od-izgara line { stroke: rgba(22,35,61,.06); stroke-width: 1; }
.ps-od-golge { fill: rgba(22,35,61,.09); }
.ps-od-ayak { stroke: #8b93a3; stroke-width: 2.4; stroke-linecap: round; fill: none; }
.ps-od-hop { fill: #2b3a58; stroke: #16233d; stroke-width: 1; }
.ps-od-koni { fill: #465a80; stroke: rgba(255,255,255,.22); }
.ps-od-koni2 { fill: #e2a08f; }
.ps-od-tw { fill: #5f7398; stroke: rgba(255,255,255,.18); }
.ps-od-dalga path { fill: none; stroke: #c9603a; stroke-width: 2; stroke-linecap: round; opacity: 0;
  animation: psOdDalga 2.4s ease-out infinite; }
.ps-od-dalga path:nth-child(2) { animation-delay: .4s; }
.ps-od-dalga path:nth-child(3) { animation-delay: .8s; }
@keyframes psOdDalga { 0% { opacity: 0; } 30% { opacity: .8; } 100% { opacity: 0; } }
.ps-od-govde { fill: rgba(31,107,74,.2); stroke: #1f6b4a; stroke-width: 1.2; }
.ps-od-bas { fill: rgba(31,107,74,.28); stroke: #1f6b4a; stroke-width: 1.2; }
.ps-od-kulak { fill: rgba(31,107,74,.34); stroke: #1f6b4a; stroke-width: 1.1; }
.ps-od-isik { animation: psOdIsik 2.2s ease-in-out infinite; transform-origin: center; transform-box: fill-box; }
@keyframes psOdIsik { 0%, 100% { opacity: .5; transform: scale(.85); } 50% { opacity: 1; transform: scale(1.05); } }
.ps-od-eks { stroke: rgba(22,35,61,.22); stroke-width: 1.2; stroke-dasharray: 4 3; }
.ps-od-eks2 { stroke: rgba(201,96,58,.55); stroke-width: 1.4; stroke-dasharray: 4 3; }
.ps-od-yay { fill: none; stroke: #c9603a; stroke-width: 1.6; }
.ps-od-mes { stroke: #5f7398; }
.ps-oda3 .ps-et { fill: #33405c; }
.rm-ps .ps-hasta { fill: rgba(31,107,74,.25); stroke: #1f6b4a; }
.rm-ps .ps-hop { fill: rgba(22,35,61,.2); stroke: #16233d; }
.rm-ps .ps-ok { stroke: #7b8494; stroke-width: 1.6; stroke-dasharray: 5 4; animation: psOk 1.4s linear infinite; }
@keyframes psOk { to { stroke-dashoffset: -18; } }
.rm-ps .ps-egri { fill: none; stroke: #1f6b4a; stroke-width: 2.6; stroke-linecap: round; stroke-linejoin: round;
  stroke-dasharray: 400; stroke-dashoffset: 400; animation: rmPsCiz 1.2s cubic-bezier(.22,1,.36,1) forwards; }
.rm-ps .ps-hedef { fill: none; stroke: #b3872f; stroke-width: 2.2; }
.rm-ps .ps-kal { fill: none; stroke: #5a7cc4; stroke-width: 2.4; stroke-dasharray: 300; stroke-dashoffset: 300;
  animation: rmPsCiz 1s ease forwards; }
.rm-ps .ps-tup { fill: none; stroke: #c9603a; stroke-width: 2.4; stroke-dasharray: 260; stroke-dashoffset: 260;
  animation: rmPsCiz .9s ease forwards; }
.rm-ps .ps-sifir { stroke: rgba(22,35,61,.25); stroke-width: 1.4; stroke-dasharray: 4 3; }
.rm-ps .ps-carpi { stroke: #c8503f; stroke-width: 2.6; stroke-linecap: round; }
@keyframes rmPsCiz { to { stroke-dashoffset: 0; } }
.rm-ps .ps-et { font-family: 'Inter', sans-serif; font-size: 11px; font-weight: 600; fill: #4d5768; }
.rm-ps .ps-et2 { font-family: 'Inter', sans-serif; font-size: 10px; fill: #8b93a3; }
.rm-prot-gor-not { font-size: .82rem; line-height: 1.55; color: #7b8494; margin: 0; padding-top: 10px;
  border-top: 1px dashed rgba(22,35,61,.1); }

/* ---- ideal ayar ---- */
.rm-ideal { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 16px; }
.rm-ideal-kart { position: relative; overflow: hidden; background: #fff; border: 1px solid rgba(22,35,61,.08);
  border-radius: 20px; padding: 24px 22px;
  box-shadow: 0 22px 44px -34px rgba(22,35,61,.55);
  transition: transform .3s cubic-bezier(.22,1,.36,1), box-shadow .3s ease, border-color .3s ease; }
.rm-ideal-kart:hover { transform: translateY(-4px); box-shadow: 0 36px 60px -36px rgba(22,35,61,.7); }
.rm-ideal-kart::before { content: ""; position: absolute; inset: 0 0 auto 0; height: 3px; }
.rm-ideal-kart[data-l="50"]::before { background: linear-gradient(90deg, #3a5a9c, #7fa2e0); }
.rm-ideal-kart[data-l="65"]::before { background: linear-gradient(90deg, #1a5c40, #6cc39a); }
.rm-ideal-kart[data-l="90"]::before { background: linear-gradient(90deg, #a8452b, #e2a08f); }
.rm-ideal-db { display: inline-block; font-family: 'Space Grotesk', sans-serif; font-size: 1.5rem; font-weight: 700;
  color: #16233d; margin-bottom: 4px; }
.rm-ideal-kart h3 { font-family: 'Inter', sans-serif; font-size: .98rem; font-weight: 700; color: #33405c; margin: 0 0 8px; }
.rm-ideal-kart p { font-size: .89rem; line-height: 1.66; color: #4d5768; margin: 0 0 14px; }
.rm-ideal-olcut { display: inline-block; padding: 6px 12px; border-radius: 999px;
  font-family: 'Inter', sans-serif; font-size: .78rem; font-weight: 700; color: #16233d;
  background: rgba(22,35,61,.06); border: 1px solid rgba(22,35,61,.08); }
.rm-ideal-kart[data-l="50"] .rm-ideal-olcut { color: #33507f; background: rgba(58,90,156,.1); border-color: rgba(58,90,156,.18); }
.rm-ideal-kart[data-l="65"] .rm-ideal-olcut { color: #1a5c40; background: rgba(31,107,74,.1); border-color: rgba(31,107,74,.18); }
.rm-ideal-kart[data-l="90"] .rm-ideal-olcut { color: #a8452b; background: rgba(201,96,58,.1); border-color: rgba(201,96,58,.18); }

/* ---- RECD ölçüm adımları ---- */
.rm-recd-adim { display: grid; grid-template-columns: 1fr auto 1fr auto 1fr auto 1fr; align-items: stretch; gap: 10px; }
.rm-ra-kart { background: #fff; border: 1px solid rgba(22,35,61,.08); border-radius: 18px; padding: 20px 18px;
  box-shadow: 0 20px 40px -34px rgba(22,35,61,.55);
  transition: transform .3s cubic-bezier(.22,1,.36,1), box-shadow .3s ease; }
.rm-ra-kart:hover { transform: translateY(-4px); box-shadow: 0 32px 54px -34px rgba(22,35,61,.7); }
.rm-ra-kart.vurgu { background: linear-gradient(160deg, #16233d, #24365c); border-color: transparent; }
.rm-ra-kart.vurgu h3, .rm-ra-kart.vurgu p { color: #e6ecf7; }
.rm-ra-kart.vurgu .rm-ra-no { background: rgba(255,255,255,.14); border-color: rgba(255,255,255,.24); color: #fff; }
.rm-ra-no { display: grid; place-items: center; width: 32px; height: 32px; border-radius: 10px; margin-bottom: 10px;
  font-family: 'Space Grotesk', sans-serif; font-size: .82rem; font-weight: 700; color: #6a7488;
  background: rgba(22,35,61,.05); border: 1px solid rgba(22,35,61,.08); }
.rm-ra-kart h3 { font-family: 'Inter', sans-serif; font-size: .96rem; font-weight: 700; color: #16233d; margin: 0 0 6px; }
.rm-ra-kart p { font-size: .86rem; line-height: 1.62; color: #4d5768; margin: 0; }
.rm-ra-ok { align-self: center; color: #c3c9d4; font-size: 1.1rem; }

.rm-recd-iki { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 16px; margin-top: 18px; }
.rm-ri-kart { background: #fff; border: 1px solid rgba(22,35,61,.08); border-radius: 18px; padding: 22px;
  box-shadow: 0 20px 40px -34px rgba(22,35,61,.5); }
.rm-ri-kart.iyi { border-color: rgba(31,107,74,.28); background: linear-gradient(160deg, rgba(31,107,74,.05), #fff); }
.rm-ri-et { display: inline-block; font-family: 'Inter', sans-serif; font-size: .68rem; font-weight: 700;
  letter-spacing: .1em; text-transform: uppercase; color: #97a0b0; margin-bottom: 6px; }
.rm-ri-kart.iyi .rm-ri-et { color: #1f6b4a; }
.rm-ri-kart h3 { font-family: 'Inter', sans-serif; font-size: 1rem; font-weight: 700; color: #16233d; margin: 0 0 6px; }
.rm-ri-kart p { font-size: .88rem; line-height: 1.65; color: #4d5768; margin: 0; }

/* ---- ölçümden sonra ---- */
.rm-son-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 16px; }
.rm-son-kart { position: relative; background: #fff; border: 1px solid rgba(22,35,61,.08); border-radius: 20px;
  padding: 24px 22px; box-shadow: 0 22px 44px -34px rgba(22,35,61,.55);
  transition: transform .3s cubic-bezier(.22,1,.36,1), box-shadow .3s ease; }
.rm-son-kart:hover { transform: translateY(-4px); box-shadow: 0 36px 60px -36px rgba(22,35,61,.7); }
.rm-son-ik { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 13px; margin-bottom: 12px;
  font-size: 1.15rem; color: #3f5fa6;
  background: linear-gradient(140deg, rgba(90,124,196,.14), rgba(90,124,196,.05));
  border: 1px solid rgba(90,124,196,.18); }
.rm-son-kart h3 { font-family: 'Inter', sans-serif; font-size: 1.02rem; font-weight: 700; color: #16233d; margin: 0 0 8px; }
.rm-son-kart p { font-size: .89rem; line-height: 1.7; color: #4d5768; margin: 0; }

@media (max-width: 1080px) {
  .rm-prot { grid-template-columns: 1fr; }
  .rm-prot-yan { padding: 14px; }
  .rm-prot-liste { display: flex; overflow-x: auto; gap: 6px; padding-bottom: 6px; scroll-snap-type: x mandatory; }
  .rm-prot-liste::before { display: none; }
  .rm-prot-liste li { flex: 0 0 auto; scroll-snap-align: center; }
  .rm-prot-liste button { min-width: 210px; }
  .rm-prot-govde { grid-template-columns: 1fr; }
  .rm-recd-adim { grid-template-columns: 1fr; }
  .rm-ra-ok { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  .rm-prot-kart.gec, .rm-prot-gor.gec, .rm-prot-kontrol li { animation: none; }
  .rm-ps .ps-egri, .rm-ps .ps-kal, .rm-ps .ps-tup { animation: none; stroke-dashoffset: 0; }
}

/* ---- bölüm geçişleri: renkler birbirine erisin ---- */
.rm-sayfa .rm-gecis { position: relative; width: 100vw; margin-left: calc(50% - 50vw);
  background: linear-gradient(180deg, var(--ust, #fff) 0%, var(--alt, #fff) 100%); }
.rm-sayfa .rm-gecis.bos { height: 54px; }
.rm-sayfa .rm-gecis .fa-ayrac { max-width: 1160px; margin: 0 auto; padding: 28px 26px; gap: 24px; }
.rm-sayfa .rm-gecis .rm-kopru { max-width: 940px; margin: 0 auto; padding: 24px 26px; }
.rm-sayfa .rm-gecis .fa-ayrac::before { background: linear-gradient(90deg, transparent, rgba(22,35,61,.14) 92%); }
.rm-sayfa .rm-gecis .fa-ayrac::after { background: linear-gradient(90deg, rgba(22,35,61,.14) 8%, transparent); }
.rm-sayfa .fa-ayrac-logo { position: relative; padding: 0 14px; opacity: .92; }
.rm-sayfa .fa-ayrac-logo::before { content: ""; position: absolute; inset: -22px -26px; border-radius: 999px;
  background: radial-gradient(closest-side, rgba(255,255,255,.9), rgba(255,255,255,0)); z-index: 0; }
.rm-sayfa .fa-ayrac-logo img { position: relative; z-index: 1; }
.rm-sayfa .fa-ayrac-logo img:first-child { height: 26px; }
.rm-sayfa .fa-ayrac-logo img:last-child { height: 17px; }
@media (max-width: 720px) {
  .rm-sayfa .rm-gecis .fa-ayrac { padding: 20px 20px; gap: 14px; }
  .rm-sayfa .rm-gecis .rm-kopru { padding: 18px 20px; }
  .rm-sayfa .rm-gecis.bos { height: 34px; }
}

/* ---- protokol kartı indirme ---- */
.rm-prot-indir { display: inline-flex; align-items: center; gap: 12px; float: right; margin: 0 0 12px 20px;
  padding: 12px 18px; border-radius: 14px; text-decoration: none;
  background: linear-gradient(150deg, #fff, #f7f9fd); border: 1px solid rgba(22,35,61,.1);
  box-shadow: 0 20px 38px -30px rgba(22,35,61,.6);
  transition: transform .28s cubic-bezier(.22,1,.36,1), box-shadow .28s ease, border-color .28s ease; }
.rm-prot-indir:hover { transform: translateY(-2px); border-color: rgba(201,96,58,.35);
  box-shadow: 0 28px 48px -30px rgba(22,35,61,.7); }
.rm-pi-ik { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 12px;
  color: #b3603f; background: linear-gradient(140deg, rgba(201,96,58,.14), rgba(201,96,58,.04));
  border: 1px solid rgba(201,96,58,.2); transition: transform .28s cubic-bezier(.22,1,.36,1); }
.rm-pi-ik svg { width: 18px; height: 18px; }
.rm-prot-indir:hover .rm-pi-ik { transform: translateY(2px); }
.rm-pi-tx b { display: block; font-family: 'Inter', sans-serif; font-size: .88rem; font-weight: 700; color: #16233d; }
.rm-pi-tx i { display: block; font-style: normal; font-size: .76rem; color: #8b93a3; margin-top: 1px; }
@media (max-width: 720px) { .rm-prot-indir { float: none; margin: 0 0 14px; width: 100%; } }

/* ---- kısaltma sözlüğü: işaretli terim + cam tooltip ---- */
.rm-sz { position: relative; cursor: help; font-weight: 600; color: #16233d;
  border-bottom: 1px dashed rgba(201,96,58,.5); border-radius: 2px;
  transition: color .2s ease, background .2s ease, border-color .2s ease; }
.rm-sz:hover, .rm-sz.aktif { color: #a8452b; background: rgba(201,96,58,.07); border-bottom-color: #c9603a; }
.rm-sz:focus-visible { outline: 2px solid #c9603a; outline-offset: 2px; }

.rm-sz-kart { position: fixed; top: 0; left: 0; z-index: 300; width: max-content; max-width: 320px;
  padding: 15px 17px 16px; border-radius: 18px; pointer-events: none;
  background: linear-gradient(155deg, rgba(255,255,255,.9), rgba(255,255,255,.76));
  -webkit-backdrop-filter: blur(20px) saturate(170%); backdrop-filter: blur(20px) saturate(170%);
  border: 1px solid rgba(255,255,255,.75);
  box-shadow: 0 30px 60px -30px rgba(22,35,61,.55), 0 0 0 1px rgba(22,35,61,.05),
              inset 0 1px 0 rgba(255,255,255,.9);
  opacity: 0; visibility: hidden; transform-origin: 50% 100%;
  transition: opacity .22s ease, visibility .22s; }
.rm-sz-kart.acik { opacity: 1; visibility: visible; animation: rmSzGir .26s cubic-bezier(.22,1,.36,1); }
@keyframes rmSzGir { from { filter: blur(2px); } to { filter: none; } }
.rm-sz-kart::before { content: ""; position: absolute; left: var(--ok, 50%); width: 12px; height: 12px;
  margin-left: -6px; transform: rotate(45deg);
  background: rgba(255,255,255,.86); border: 1px solid rgba(255,255,255,.75); }
.rm-sz-kart[data-yon="ust"]::before { bottom: -7px; border-top: 0; border-left: 0;
  box-shadow: 3px 3px 8px -6px rgba(22,35,61,.5); }
.rm-sz-kart[data-yon="alt"]::before { top: -7px; border-bottom: 0; border-right: 0; }

.rm-sz-b { display: flex; align-items: baseline; flex-wrap: wrap; gap: 8px; }
.rm-sz-kis { font-family: 'Space Grotesk', 'Inter', sans-serif; font-size: 1rem; font-weight: 700; color: #16233d;
  letter-spacing: .01em; }
.rm-sz-en { font-family: 'Newsreader', serif; font-style: italic; font-size: .92rem; color: #a8452b; }
.rm-sz-tr { display: block; margin-top: 3px; font-family: 'Inter', sans-serif; font-size: .74rem; font-weight: 700;
  letter-spacing: .06em; text-transform: uppercase; color: #8b93a3; }
.rm-sz-kart p { margin: 9px 0 0; font-size: .87rem; line-height: 1.62; color: #3f4a5e; }

@media (max-width: 720px) { .rm-sz-kart { max-width: min(300px, calc(100vw - 28px)); } }
@media (prefers-reduced-motion: reduce) { .rm-sz-kart.acik { animation: none; } }

/* ---- sahneye giriş ---- */
.rm-sayfa .rm-gir { opacity: 0; transform: translateY(16px);
  transition: opacity .6s ease, transform .6s cubic-bezier(.22,1,.36,1); will-change: opacity, transform; }
.rm-sayfa .rm-gir.gor { opacity: 1; transform: none; }

/* ---- okuma ilerlemesi ---- */
.rm-ilerleme { position: fixed; top: 0; left: 0; right: 0; height: 3px; z-index: 400; pointer-events: none;
  background: rgba(22,35,61,.06); opacity: 0; transition: opacity .35s ease; }
.rm-ilerleme.gor { opacity: 1; }
.rm-ilerleme i { display: block; height: 100%; width: 100%; transform: scaleX(0); transform-origin: left;
  background: linear-gradient(90deg, #3a5a9c, #c9603a);
  box-shadow: 0 0 12px rgba(201,96,58,.45); }

/* ---- odak halkası (klavye) ---- */
.rm-sayfa button:focus-visible, .rm-sayfa a:focus-visible, .rm-sayfa input:focus-visible,
.rm-sayfa summary:focus-visible { outline: 2px solid #c9603a; outline-offset: 3px; border-radius: 8px; }

@media (prefers-reduced-motion: reduce) {
  .rm-sayfa .rm-gir { opacity: 1; transform: none; transition: none; }
  .rm-ilerleme i { transition: none; }
}


/* ================== Mobil ince ayar + erişilebilirlik ================== */
@media (max-width: 560px) {
  /* dört sütunlu okuma satırları iki sütuna insin */
  .rm-hd-sat { grid-template-columns: 1fr 1fr; gap: 8px; }
  .rm-sik-oku { grid-template-columns: 1fr 1fr; }
  .tk-rm-eksen { grid-template-columns: repeat(2, 1fr); }
  .rm-zn-adimlar { grid-template-columns: 1fr 1fr; }
  .tk-kt-cb { grid-template-columns: 1fr 56px 28px; font-size: .74rem; }
  .tk-bin-kulaklar { grid-template-columns: 1fr; }
  .rm-fl-notlar { grid-template-columns: 1fr; }
  .tk-baglanti { grid-template-columns: 1fr; }
  /* modül kartlarının iç boşlukları */
  .rm-sec-ic, .rm-band-ic { padding-left: 16px; padding-right: 16px; }
  .tk-yon-plot, .tk-fb-sahne, .tk-kn-plot, .tk-gc-plot, .tk-tn-plot,
  .rm-dyn-plot, .rm-sik-plot, .rm-snr-sahne, .rm-fl-plot, .rm-kp-plot { padding: 12px; }
  .tk-quiz { padding: 16px 14px 14px; }
  .tk-q-soru { font-size: 1.08rem; }
  /* yatay taşmayı kes */
  .rm-sayfa { overflow-x: hidden; }
  .rm-yol::before { width: 100%; }
}

/* dokunmatik hedefler: en az 44×44 px */
@media (pointer: coarse) {
  .rm-seg button, .tk-sbtn, .tk-q-s, .tk-kt-hazir button, .tk-ar-sec button,
  .rm-fl-vbtn button, .tk-dl-vaka button, .rm-hk-bas, .rm-prot-nav button {
    min-height: 44px;
  }
  .rm-sii-sl input[type=range], .tk-yon-blok input[type=range] { height: 30px; }
  /* sürüklenebilir SVG tutamakları dokunmatikte daha büyük */
  .tk-yon-gtut, .tk-bin-ktut { r: 26; }
}

/* klavye odağı: her etkileşimli öğede görünür */
.rm-seg button:focus-visible, .tk-sbtn:focus-visible, .tk-q-s:focus-visible,
.tk-ar-sec button:focus-visible, .rm-fl-vbtn button:focus-visible,
.tk-dl-vaka button:focus-visible, .tk-kt-hazir button:focus-visible,
.rm-hk-bas:focus-visible, .tk-kb-btn:focus-visible, .tk-q-btn:focus-visible,
.rm-prot-indir:focus-visible, input[type=range]:focus-visible {
  outline: 2px solid #c9603a; outline-offset: 2px; border-radius: 8px;
}

/* hareket azaltma: kalan tüm süsleme animasyonları */
@media (prefers-reduced-motion: reduce) {
  .rm-sayfa *, .rm-sayfa *::before, .rm-sayfa *::after {
    animation-duration: .001ms !important; animation-iteration-count: 1 !important;
    transition-duration: .001ms !important; scroll-behavior: auto !important;
  }
}

/* >>> ATOLYE-MOBIL-BASI (atolye_mobil.py) <<< */
/* ================= MOBİL DÜZELTMELERİ ================= */
@media (max-width: 900px){
  /* kompresyon: grafik sütunu 0px'e çöküp kartlar üst üste biniyordu */
  .rm-sik{ grid-template-columns: minmax(0,1fr) !important; }
  .rm-sik > *{ min-width:0 !important; }
  .rm-sik-yan{ width:auto !important; max-width:100% !important; }
  .rm-sik-plot{ width:100% !important; }
  .rm-sik-oku{ grid-template-columns: repeat(2, minmax(0,1fr)) !important; }

  /* protokol ve hedef bölümleri tek sütun */
  .rm-prot, .rm-prot-govde, .rm-hedef, .rm-zn-govde, .rm-sii, .rm-recd{
    grid-template-columns: minmax(0,1fr) !important; }
  .rm-prot > *, .rm-prot-govde > *, .rm-hedef > *{ min-width:0 !important; }
  .rm-prot-liste li, .rm-prot-liste button, .rm-prot-ad{ min-width:0 !important; }

  /* cihaz teknoloji: yönlülük/binaural modülleri */
  .tk-yon, .tk-bin, .tk-kb, .tk-dl{ grid-template-columns: minmax(0,1fr) !important; }
  .tk-yon > *, .tk-bin > *{ min-width:0 !important; }
}

/* reçete tablosu: dört sütun tek satırda kalsın (2 sütuna düşünce karışıyordu) */
@media (max-width: 720px){
  .rm-hd-sat{ grid-template-columns: 46px repeat(3, minmax(0,1fr)) !important;
    gap: 6px !important; font-size: .78rem !important; padding: 8px 10px !important;
    text-align: center; }
  .rm-hd-sat > *:first-child{ text-align: left; }
  .rm-hd-bas{ font-size: .66rem !important; letter-spacing: .04em; }
}
/* <<< ATOLYE-MOBIL-SONU >>> */
