/* Sprint 13: Yeni section tiplerinin (metrics / media / timeline) görsel stili.
   Tokens.css'i (--bg, --fg, --accent, ...) referans alır — light/dark/auto
   modlarda otomatik dönüşür. Templates'in kendi site.css'inden tamamen bağımsız;
   class isimleri `erp-*` prefiksi ile sandbox'lanmış (Bootstrap class'larıyla
   çatışmaz). */

/* ===== Metrics ===== */
.erp-metrics {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 1.5rem;
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 1rem;
}
.erp-metric {
    text-align: center;
    padding: 1.5rem 1rem;
    border-radius: var(--radius);
    border: 1px solid var(--border);
    background: var(--surface);
    transition: transform .25s var(--ease-out), border-color .25s;
}
.erp-metric:hover {
    transform: translateY(-3px);
    border-color: var(--border-strong);
}
.erp-metric__value {
    font-family: var(--font-display);
    font-weight: 800;
    font-size: clamp(2rem, 3.5vw, 3rem);
    line-height: 1;
    color: var(--accent);
    letter-spacing: -.02em;
}
.erp-metric__label {
    margin-top: .5rem;
    color: var(--fg-muted);
    font-size: .95rem;
}

/* ===== Media Showcase ===== */
.erp-media {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 1rem;
    display: grid;
    gap: 2rem;
    grid-template-columns: 1fr;
    align-items: center;
}
@media (min-width: 768px) {
    .erp-media--split { grid-template-columns: 1fr 1fr; }
}
.erp-media__frame {
    position: relative;
    border-radius: var(--radius-lg);
    overflow: hidden;
    background: var(--bg-soft);
    box-shadow: var(--shadow-lg);
    border: 1px solid var(--border);
    aspect-ratio: 16 / 9;
}
.erp-media__frame iframe,
.erp-media__frame video,
.erp-media__frame img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    border: 0;
}
.erp-media__caption {
    color: var(--fg);
}
.erp-media__caption h3 {
    font-size: var(--type-h2);
    margin: 0 0 1rem;
    color: var(--fg);
    letter-spacing: -.02em;
}
.erp-media__caption p {
    color: var(--fg-muted);
    line-height: 1.65;
    margin: 0 0 1rem;
}
.erp-media__cta {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    padding: .75rem 1.5rem;
    background: var(--accent);
    color: var(--accent-fg);
    border-radius: 999px;
    text-decoration: none;
    font-weight: 600;
    transition: transform .2s var(--ease-out);
}
.erp-media__cta:hover { transform: translateY(-2px); color: var(--accent-fg); }

/* ===== Timeline ===== */
.erp-timeline {
    max-width: 800px;
    margin: 0 auto;
    padding: 0 1rem;
    position: relative;
}
.erp-timeline::before {
    content: "";
    position: absolute;
    left: 1.5rem;
    top: 0; bottom: 0;
    width: 2px;
    background: var(--border);
}
.erp-timeline__item {
    position: relative;
    padding-left: 4rem;
    padding-bottom: 2.5rem;
}
.erp-timeline__item::before {
    content: "";
    position: absolute;
    left: calc(1.5rem - 6px);
    top: .35rem;
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background: var(--accent);
    box-shadow: 0 0 0 4px var(--bg);
}
.erp-timeline__year {
    font-family: var(--font-display);
    font-weight: 800;
    font-size: 1.1rem;
    color: var(--accent);
    letter-spacing: .02em;
}
.erp-timeline__title {
    margin: .15rem 0 .35rem;
    color: var(--fg);
    font-size: 1.15rem;
    font-weight: 600;
}
.erp-timeline__desc {
    color: var(--fg-muted);
    line-height: 1.6;
    margin: 0;
}

/* ===== Scroll Reveal ===== */
[data-reveal] {
    opacity: 0;
    transform: translateY(24px);
    transition:
        opacity .8s var(--ease-out),
        transform .8s var(--ease-out);
    will-change: opacity, transform;
}
[data-reveal="fade-right"] { transform: translateX(-24px); }
[data-reveal="fade-left"]  { transform: translateX(24px); }
[data-reveal="fade-in"]    { transform: none; }
[data-reveal="zoom-in"]    { transform: scale(.95); }

[data-reveal].is-visible {
    opacity: 1;
    transform: none;
}

/* prefers-reduced-motion: animasyonu tamamen kapat, ama içerik görünür kalsın */
@media (prefers-reduced-motion: reduce) {
    [data-reveal] {
        opacity: 1 !important;
        transform: none !important;
        transition: none !important;
    }
}

/* ---------- Y-459 urun link standardi: durum rozeti + fiyat bolumu (tum sablonlar) ---------- */
.product-status {
    display: inline-flex; align-items: center; gap: 6px;
    padding: 5px 12px; margin: 0 0 14px;
    border-radius: 999px; font-size: 12px; font-weight: 700;
    letter-spacing: .4px; text-transform: uppercase; line-height: 1.2;
    border: 1px solid transparent;
}
.product-status--early-access { color: #6d28d9; background: rgba(124,58,237,.10); border-color: rgba(124,58,237,.28); }
.product-status--coming-soon  { color: #b45309; background: rgba(245,158,11,.12); border-color: rgba(245,158,11,.32); }
.theme-dark .product-status--early-access { color: #c4b5fd; }
.theme-dark .product-status--coming-soon  { color: #fcd34d; }
@media (prefers-color-scheme: dark) {
    .theme-auto .product-status--early-access { color: #c4b5fd; }
    .theme-auto .product-status--coming-soon  { color: #fcd34d; }
}
.product-status--tile { margin: 0 0 10px; padding: 3px 9px; font-size: 10.5px; align-self: flex-start; }
.quote-box > .lede { max-width: 640px; margin: -12px auto 22px; text-align: center; opacity: .85; }

.pricing-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 18px; }
.pricing-card {
    border: 1px solid var(--border, rgba(127,127,127,.25)); border-radius: var(--radius, 12px);
    padding: 22px; background: var(--bg-card, transparent); box-shadow: var(--shadow-sm);
    transition: transform .2s cubic-bezier(.4,0,.2,1), box-shadow .2s cubic-bezier(.4,0,.2,1);
}
.pricing-card:hover { transform: translateY(-2px); box-shadow: var(--shadow); }
.pricing-card h3 { font-size: 1.05rem; font-weight: 700; margin: 0 0 6px; }
.pricing-price { font-size: 1.35rem; font-weight: 800; color: var(--accent); margin: 0 0 12px; font-variant-numeric: tabular-nums; }
.pricing-body { font-size: .92rem; line-height: 1.6; opacity: .9; }
.pricing-body ul { padding-left: 18px; margin: 0; }
.pricing-note { margin-top: 16px; font-size: .85rem; opacity: .75; }
@media (prefers-reduced-motion: reduce) { .pricing-card { transition: none; } .pricing-card:hover { transform: none; } }

/* ---------- Plan 12.2: fiyat yayinlanmamis urunde fiyatlandirma karti + talep turu + kiyas (tum sablonlar) ---------- */
.fiyat-yolu {
    max-width: 760px; margin: 0 auto; padding: 26px 28px;
    border: 1px solid var(--border, rgba(127,127,127,.25)); border-radius: var(--radius, 12px);
    background: var(--bg-card, transparent); box-shadow: var(--shadow-sm);
}
.fiyat-yolu__lead { margin: 0 0 14px; line-height: 1.65; }
.fiyat-yolu__maddeler { list-style: none; padding: 0; margin: 0 0 20px; display: grid; gap: 8px; font-size: .95rem; }
.fiyat-yolu__maddeler i { color: var(--accent); margin-right: 6px; }
.fiyat-yolu__aksiyon { display: flex; flex-wrap: wrap; gap: 10px; }

.talep-turleri { border: 0; padding: 0; margin: 0 0 20px; min-width: 0; }
.talep-turleri legend { font-size: .9rem; font-weight: 600; margin-bottom: 10px; padding: 0; float: none; width: auto; }
.talep-turleri { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 10px; }
.talep-turleri legend { grid-column: 1 / -1; }
.talep-turu { position: relative; display: block; cursor: pointer; margin: 0; }
/* .quote-box form label buyuk harf/aralik verir; kart icinde sakin tipografi (Y-409) */
.quote-box .talep-turu, .quote-box .talep-turu * { text-transform: none; letter-spacing: normal; }
.talep-turleri legend { text-transform: none; letter-spacing: normal; }
.talep-turu input { position: absolute; opacity: 0; width: 1px; height: 1px; pointer-events: none; }
.talep-turu__kart {
    display: grid; gap: 3px; height: 100%; padding: 14px 16px;
    border: 1px solid var(--border, rgba(127,127,127,.25)); border-radius: var(--radius, 12px);
    background: var(--bg-card, transparent);
    transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease;
}
.talep-turu__kart i { font-size: 1.2rem; color: var(--accent); }
.talep-turu__kart strong { font-size: .95rem; }
.talep-turu__kart small { font-size: .8rem; opacity: .75; line-height: 1.45; }
.talep-turu:hover .talep-turu__kart { transform: translateY(-1px); box-shadow: var(--shadow-sm); }
.talep-turu input:checked + .talep-turu__kart {
    border-color: var(--accent); box-shadow: 0 0 0 1px var(--accent) inset, var(--shadow-sm);
    background: color-mix(in srgb, var(--accent) 7%, var(--bg-card, transparent));
}
.talep-turu input:focus-visible + .talep-turu__kart { outline: 2px solid var(--accent); outline-offset: 2px; }

.kiyas { display: grid; gap: 12px; }
.kiyas__baslik, .kiyas__satir { display: grid; grid-template-columns: minmax(160px, 1fr) 1.3fr 1.3fr; gap: 16px; align-items: start; }
.kiyas__baslik { padding: 0 18px; font-size: .82rem; font-weight: 600; opacity: .8; }
.kiyas__baslik span:last-child { color: var(--accent); opacity: 1; }
.kiyas__satir {
    padding: 16px 18px; border: 1px solid var(--border, rgba(127,127,127,.25)); border-radius: var(--radius, 12px);
    background: var(--bg-card, transparent); box-shadow: var(--shadow-sm);
}
.kiyas__konu { font-size: .98rem; font-weight: 700; margin: 0; }
.kiyas__bugun, .kiyas__urun { margin: 0; font-size: .92rem; line-height: 1.55; }
.kiyas__bugun { opacity: .78; }
.kiyas__urun { border-left: 3px solid var(--accent); padding-left: 12px; }
.kiyas__etiket { display: none; font-size: .75rem; font-weight: 600; opacity: .8; margin-bottom: 2px; }
@media (max-width: 760px) {
    .kiyas__baslik { display: none; }
    .kiyas__satir { grid-template-columns: 1fr; gap: 8px; }
    .kiyas__etiket { display: block; }
    .fiyat-yolu { padding: 20px 18px; }
}
@media (prefers-reduced-motion: reduce) {
    .talep-turu__kart { transition: none; }
    .talep-turu:hover .talep-turu__kart { transform: none; }
}

/* ---------- 1.2.125 pazara donuk urun anlatimi: sorun -> cozum -> fark + demo bandi (tum sablonlar) ---------- */
.pitch-grid {
    display: grid; gap: 18px;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
}
.pitch-card {
    --pitch-ton: var(--accent, #4f7cff);
    position: relative; overflow: hidden;
    padding: 24px 24px 22px;
    border: 1px solid var(--border, rgba(127,127,127,.22));
    border-radius: var(--radius, 12px);
    background: var(--bg-card, var(--surface, transparent));
    box-shadow: var(--shadow-sm, none);
    transition: transform .25s var(--ease-out, ease), border-color .25s, box-shadow .25s;
}
.pitch-card::before {
    content: ""; position: absolute; inset: 0 0 auto 0; height: 3px;
    background: var(--pitch-ton);
}
.pitch-card:hover { transform: translateY(-2px); border-color: var(--pitch-ton); box-shadow: var(--shadow, none); }
.pitch-card--sorun { --pitch-ton: #e5484d; }
.pitch-card--fark  { --pitch-ton: #12a594; }
.pitch-label {
    display: inline-flex; align-items: center; gap: 6px;
    margin: 0 0 12px; padding: 3px 10px;
    border-radius: 999px; font-size: 11.5px; font-weight: 700;
    letter-spacing: .5px; text-transform: uppercase;
    color: var(--pitch-ton);
    background: color-mix(in srgb, var(--pitch-ton) 12%, transparent);
}
.pitch-card h3 {
    margin: 0 0 10px; font-size: 18px; font-weight: 650; line-height: 1.35;
    letter-spacing: -.01em; color: var(--text, var(--fg, inherit));
}
.pitch-body { color: var(--text-mute, var(--fg-muted, inherit)); font-size: 14.5px; line-height: 1.65; }
.pitch-body p { margin: 0 0 8px; }
.pitch-body p:last-child { margin-bottom: 0; }
.pitch-body ul { margin: 0; padding-left: 0; list-style: none; }
.pitch-body li { position: relative; padding-left: 22px; margin: 0 0 7px; }
.pitch-body li::before {
    content: ""; position: absolute; left: 4px; top: .62em;
    width: 7px; height: 7px; border-radius: 50%;
    background: var(--pitch-ton);
}
.pitch-body strong { color: var(--text, var(--fg, inherit)); font-weight: 600; }

.demo-band {
    display: flex; align-items: center; justify-content: space-between; gap: 24px; flex-wrap: wrap;
    padding: 30px 32px;
    border-radius: var(--radius-lg, 20px);
    border: 1px solid color-mix(in srgb, var(--accent, #4f7cff) 35%, transparent);
    background:
        radial-gradient(120% 140% at 0% 0%, color-mix(in srgb, var(--accent, #4f7cff) 16%, transparent) 0%, transparent 60%),
        var(--bg-card, var(--surface, transparent));
}
.demo-band__text { flex: 1 1 320px; min-width: 0; }
.demo-band__text h2 { margin: 0 0 8px; }
.demo-band__text p { margin: 0; max-width: 620px; color: var(--text-mute, var(--fg-muted, inherit)); line-height: 1.6; }
.demo-band__actions { display: flex; gap: 12px; flex-wrap: wrap; }
@media (max-width: 575.98px) {
    .demo-band { padding: 22px 18px; }
    .demo-band__actions, .demo-band__actions .btn { width: 100%; justify-content: center; }
}
@media (prefers-reduced-motion: reduce) {
    .pitch-card, .pitch-card:hover { transition: none; transform: none; }
}

/* ---------- Plan 1.11: /QuickScan — Hizli Tarama tanitimi + basvuru (default ve ondan turetilen sablonlar) ---------- */
.qs-badge {
    display: inline-flex; align-items: center; gap: 6px;
    margin: 0 0 16px; padding: 5px 12px; border-radius: 999px;
    font-size: 12.5px; font-weight: 700; letter-spacing: .2px;
    color: #047857; background: rgba(16,185,129,.12); border: 1px solid rgba(16,185,129,.32);
}
.theme-dark .qs-badge { color: #6ee7b7; }
@media (prefers-color-scheme: dark) { .theme-auto .qs-badge { color: #6ee7b7; } }
.qs-lead { margin: -14px 0 22px; max-width: 720px; color: var(--text-mute, var(--fg-muted, inherit)); line-height: 1.65; }
.qs-areas {
    list-style: none; margin: 0; padding: 0;
    display: grid; gap: 14px; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
}
.qs-areas li {
    display: flex; gap: 14px; align-items: flex-start;
    padding: 16px 18px; border-radius: var(--radius, 12px);
    border: 1px solid var(--border, rgba(127,127,127,.25)); background: var(--bg-card, transparent);
}
.qs-areas i {
    flex: 0 0 auto; display: inline-grid; place-items: center; width: 36px; height: 36px; border-radius: 10px;
    color: var(--accent, #4f7cff); background: color-mix(in srgb, var(--accent, #4f7cff) 12%, transparent); font-size: 17px;
}
.qs-areas strong { display: block; margin: 0 0 4px; font-weight: 650; color: var(--text, inherit); }
.qs-areas span { display: block; font-size: 14px; line-height: 1.6; color: var(--text-mute, var(--fg-muted, inherit)); }
.qs-req { display: grid; gap: 18px; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); }
.qs-req > div {
    padding: 22px 24px; border-radius: var(--radius, 12px);
    border: 1px solid var(--border, rgba(127,127,127,.25)); background: var(--bg-card, transparent);
}
.qs-req h3 { margin: 0 0 14px; font-size: 16px; font-weight: 650; }
.qs-check { list-style: none; margin: 0; padding: 0; }
.qs-check li { display: flex; gap: 10px; margin: 0 0 10px; line-height: 1.55; font-size: 14.5px; color: var(--text-mute, var(--fg-muted, inherit)); }
.qs-check li:last-child { margin-bottom: 0; }
.qs-check i { flex: 0 0 auto; margin-top: 2px; color: #10b981; }
.qs-check--pilot i { color: #f59e0b; }
.qs-check--yok i { color: #e5484d; }

.quote-box form.qs-form select {
    width: 100%; appearance: none; -webkit-appearance: none;
    padding: 11px 38px 11px 14px; border-radius: 10px;
    border: 1px solid var(--border, rgba(127,127,127,.3)); color: var(--text, inherit);
    background: var(--bg-soft, transparent) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 16 16'%3E%3Cpath fill='%23888' d='M1.6 5.2 8 11.2l6.4-6-1.1-1.1L8 9 2.7 4.1z'/%3E%3C/svg%3E") no-repeat right 14px center;
    font-family: inherit; font-size: 14.5px; cursor: pointer;
    transition: border-color .15s ease, box-shadow .15s ease;
}
.quote-box form.qs-form select:focus { outline: none; border-color: var(--accent, #4f7cff); box-shadow: var(--focus-ring, 0 0 0 3px rgba(79,124,255,.3)); }
.quote-box form.qs-form select option { color: initial; }
/* Y-409 sakin tipografi: bu formda etiketler buyuk harf degil (eski teklif formu stilini ezer). */
.quote-box form.qs-form label, .qs-legend { text-transform: none; letter-spacing: 0; font-size: 13.5px; }
.quote-box form.qs-form label small { font-weight: 500; opacity: .75; }
.qs-field { margin: 0 0 16px; }
.qs-legend {
    display: block; font-size: 12.5px; margin-bottom: 6px; font-weight: 600;
    color: var(--text-mute, var(--fg-muted, inherit));
}
.qs-segment { display: flex; flex-wrap: wrap; gap: 8px; }
.quote-box form.qs-form .qs-segment label { margin: 0; text-transform: none; letter-spacing: 0; font-size: 14px; color: inherit; }
.quote-box form.qs-form .qs-segment input { position: absolute; opacity: 0; width: 1px; height: 1px; pointer-events: none; }
.qs-segment span {
    display: inline-flex; align-items: center; min-height: 40px; padding: 8px 16px; border-radius: 999px; cursor: pointer;
    border: 1px solid var(--border, rgba(127,127,127,.3)); background: var(--bg-soft, transparent); color: var(--text, inherit);
    font-weight: 600; transition: border-color .15s ease, background-color .15s ease, color .15s ease;
}
.qs-segment span:hover { border-color: var(--accent, #4f7cff); }
.qs-segment input:checked + span { border-color: var(--accent, #4f7cff); color: var(--accent, #4f7cff); background: color-mix(in srgb, var(--accent, #4f7cff) 12%, transparent); }
.qs-segment input:focus-visible + span { outline: 2px solid var(--accent, #4f7cff); outline-offset: 2px; }
.quote-box form.qs-form .qs-consent {
    display: flex; gap: 10px; align-items: flex-start; margin: 0; cursor: pointer;
    text-transform: none; letter-spacing: 0; font-weight: 500; font-size: 14px; line-height: 1.55; color: var(--text, inherit);
}
.quote-box form.qs-form .qs-consent input {
    flex: 0 0 auto; width: 18px; height: 18px; margin: 2px 0 0; padding: 0; accent-color: var(--accent, #4f7cff); cursor: pointer;
}
.qs-consent a { color: var(--accent, #4f7cff); text-decoration: underline; }
.qs-note {
    display: flex; gap: 8px; align-items: flex-start;
    max-width: 640px; margin: 18px auto 0; font-size: 13px; line-height: 1.55;
    color: var(--text-mute, var(--fg-muted, inherit));
}
.qs-note i { margin-top: 2px; }
@media (prefers-reduced-motion: reduce) {
    .qs-segment span, .quote-box form.qs-form select { transition: none; }
}

/* ---------- Plan 1.12: /Webinar — e-Defter webinari (qs-* bilesenlerini yeniden kullanir) ---------- */
.wb-when {
    display: flex; flex-wrap: wrap; gap: 10px 18px; align-items: center; justify-content: center;
    width: fit-content; max-width: min(680px, calc(100% - 32px));
    margin: 18px auto 22px; padding: 12px 16px; border-radius: var(--radius, 12px);
    border: 1px solid var(--border, rgba(127,127,127,.25)); background: var(--bg-card, transparent);
    font-size: 14.5px; line-height: 1.5;
}
.wb-when span { display: inline-flex; gap: 8px; align-items: center; }
.wb-when i { color: var(--accent, #4f7cff); }
.wb-when--yakinda i { color: #f59e0b; }
.quote-box form.qs-form .qs-consent + .qs-consent { margin-top: 10px; }

/* ---------- Y-503: urun sayfasi ortak «Dilek ve oneri» bileseni (qs-* bilesenlerini yeniden kullanir) ---------- */
.dilek-box h2 i { color: var(--accent, #4f7cff); margin-right: 6px; }
.dilek-box .dilek-not { margin: -6px 0 16px; font-size: 13px; line-height: 1.55; color: var(--text-mute, var(--fg-muted, inherit)); }

/* ---------- Y-504: «Bilgilendirme isteği» + iletişim formu onay alanı + aydınlatma metni modalı ---------- */
.bilgi-box h2 i { color: var(--accent, #4f7cff); margin-right: 6px; }
.quote-box form.qs-form .form-row small { font-weight: 400; text-transform: none; letter-spacing: 0; opacity: .8; }
.kmp-onay-alani { margin: 4px 0 18px; }
.kmp-onay-alani .qs-consent {
    display: flex; gap: 10px; align-items: flex-start; margin: 0; cursor: pointer;
    text-transform: none; letter-spacing: 0; font-weight: 500; font-size: 14px; line-height: 1.55; color: var(--text, inherit);
}
.kmp-onay-alani .qs-consent input {
    flex: 0 0 auto; width: 18px; height: 18px; margin: 2px 0 0; padding: 0; accent-color: var(--accent, #4f7cff); cursor: pointer;
}
html.kmp-gz-acik { overflow: hidden; }
.kmp-gz-scrim {
    position: fixed; inset: 0; z-index: 2000; display: flex; align-items: center; justify-content: center; padding: 16px;
    background: rgba(15, 18, 30, .5); backdrop-filter: blur(4px); -webkit-backdrop-filter: blur(4px);
    opacity: 0; transition: opacity .18s ease;
}
.kmp-gz-scrim[hidden] { display: none; }
.kmp-gz-scrim.is-open { opacity: 1; }
.kmp-gz-modal {
    display: flex; flex-direction: column; width: min(760px, 100%); height: auto;
    min-width: min(360px, 100%); min-height: 240px; max-width: 100%; max-height: min(85vh, calc(100vh - 32px));
    resize: both; overflow: hidden; border-radius: var(--radius, 14px);
    background: var(--bg-card, var(--bg, #fff)); color: var(--text, inherit);
    border: 1px solid var(--border, rgba(127,127,127,.25)); box-shadow: 0 24px 64px rgba(0,0,0,.28);
    transform: translateY(8px); transition: transform .18s ease;
}
.kmp-gz-scrim.is-open .kmp-gz-modal:not([data-x]) { transform: none; }
.kmp-gz-head {
    display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 14px 18px;
    border-bottom: 1px solid var(--border, rgba(127,127,127,.2)); cursor: move; user-select: none; touch-action: none;
}
.kmp-gz-head h2 { margin: 0; font-size: 17px; font-weight: 650; }
.kmp-gz-x {
    border: 0; background: transparent; color: inherit; width: 34px; height: 34px; border-radius: 8px; cursor: pointer;
    display: inline-flex; align-items: center; justify-content: center;
}
.kmp-gz-x:hover { background: color-mix(in srgb, currentColor 10%, transparent); }
.kmp-gz-x:focus-visible, .kmp-gz-body:focus-visible { outline: 2px solid var(--accent, #4f7cff); outline-offset: 2px; }
.kmp-gz-body { flex: 1 1 auto; overflow: auto; padding: 4px 22px 18px; font-size: 14.5px; line-height: 1.65; }
.kmp-gz-body section, .kmp-gz-body .section { padding: 12px 0 !important; margin: 0 !important; background: none !important; }
.kmp-gz-body .inner, .kmp-gz-body .container { max-width: none; padding: 0; }
.kmp-gz-body h1 { font-size: 20px; }
.kmp-gz-body h2 { font-size: 17px; }
.kmp-gz-body h3 { font-size: 15.5px; }
.kmp-gz-wait { display: flex; justify-content: center; padding: 40px 0; }
.kmp-gz-error { margin: 24px 0; }
.kmp-gz-foot {
    display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px; padding: 12px 18px;
    border-top: 1px solid var(--border, rgba(127,127,127,.2));
}
.kmp-gz-hint { font-size: 13px; color: var(--text-mute, var(--fg-muted, inherit)); }
.kmp-gz-actions { display: flex; gap: 8px; margin-left: auto; }
.kmp-gz-actions .btn[disabled] { cursor: not-allowed; }
@media (max-width: 575.98px) {
    .kmp-gz-scrim { padding: 0; align-items: flex-end; }
    .kmp-gz-modal { width: 100%; height: 88vh; resize: none; border-radius: 16px 16px 0 0; }
    .kmp-gz-head { cursor: default; }
}
@media (prefers-reduced-motion: reduce) {
    .kmp-gz-scrim, .kmp-gz-modal { transition: none; }
}

/* ---------- Y-503: urun sayfasi «Yol haritasi» (roadmap bloklari) ---------- */
.roadmap-list { list-style: none; margin: 18px 0 0; padding: 0; display: grid; gap: 12px; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); }
.roadmap-item {
    padding: 14px 16px; border-radius: var(--radius, 12px);
    border: 1px solid var(--border, rgba(127,127,127,.25)); background: var(--bg-card, transparent);
}
.roadmap-item strong { display: block; margin: 8px 0 4px; font-size: 15.5px; }
.roadmap-item p { margin: 0; font-size: 14px; line-height: 1.55; color: var(--text-mute, var(--fg-muted, inherit)); }
.roadmap-badge {
    display: inline-block; padding: 2px 10px; border-radius: 999px; font-size: 12px; font-weight: 600;
    border: 1px solid currentColor;
}
.roadmap-item--hazir .roadmap-badge { color: #059669; }
.roadmap-item--gelistiriliyor .roadmap-badge { color: var(--accent, #4f7cff); }
.roadmap-item--yakinda .roadmap-badge { color: #b45309; }
.roadmap-item--demoda .roadmap-badge { color: #059669; }
.roadmap-item--pilot .roadmap-badge { color: #0284c7; }
.roadmap-item--planlaniyor .roadmap-badge { color: #64748b; }
.theme-dark .roadmap-item--hazir .roadmap-badge,
.theme-dark .roadmap-item--demoda .roadmap-badge { color: #34d399; }
.theme-dark .roadmap-item--yakinda .roadmap-badge { color: #fcd34d; }
.theme-dark .roadmap-item--pilot .roadmap-badge { color: #7dd3fc; }
.theme-dark .roadmap-item--planlaniyor .roadmap-badge { color: #94a3b8; }
@media (prefers-color-scheme: dark) {
    .theme-auto .roadmap-item--hazir .roadmap-badge,
    .theme-auto .roadmap-item--demoda .roadmap-badge { color: #34d399; }
    .theme-auto .roadmap-item--yakinda .roadmap-badge { color: #fcd34d; }
    .theme-auto .roadmap-item--pilot .roadmap-badge { color: #7dd3fc; }
    .theme-auto .roadmap-item--planlaniyor .roadmap-badge { color: #94a3b8; }
}
