/* Raporlar — NatraPOS Shared/Rapor (rp-*, gr-*) portu, NOSCloud temasına bağlı.
   Vurgu rengi rapor başına --rp (varsayılan tema rengi --ana); tablo/kart/çizgi renkleri tema değişkenlerinden.
   Grafik paleti --seri-1..8: dataviz kategorik paleti (NatraPOS GrafikStil ile aynı sıra). */

.rp-wrap {
    --rp: var(--ana);
    --seri-1: #2a78d6; --seri-2: #eb6834; --seri-3: #1baf7a; --seri-4: #eda100;
    --seri-5: #e87ba4; --seri-6: #008300; --seri-7: #6250d6; --seri-8: #e34948;
    --gr-gri: #a8a29e; --gr-izgara: #eef1f4; --gr-metin: var(--metin); --gr-metin2: var(--soluk); --gr-yuzey: var(--kart);
    padding: 4px 2px 28px;
}
.rp-wrap .mi { font-size: inherit; line-height: 1; }
.rp-head { display: flex; align-items: center; gap: 12px; margin-bottom: 14px; }
.rp-geri { width: 38px; height: 38px; border-radius: 12px; display: flex; align-items: center; justify-content: center; color: var(--soluk);
    background: var(--kart); border: 1px solid var(--cizgi); text-decoration: none; flex: 0 0 auto; font-size: 22px; }
.rp-geri:hover { border-color: var(--rp); color: var(--rp); }
.rp-ikon { width: 46px; height: 46px; border-radius: 14px; display: flex; align-items: center; justify-content: center; flex: 0 0 auto;
    color: #fff; background: linear-gradient(135deg, var(--rp), color-mix(in srgb, var(--rp) 60%, #000)); font-size: 26px;
    box-shadow: 0 6px 16px color-mix(in srgb, var(--rp) 35%, transparent); }
.rp-baslik { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; }
.rp-baslik h2 { margin: 0; font-size: 1.4rem; font-weight: 900; color: var(--metin); letter-spacing: -.01em; }
.rp-baslik small { color: var(--soluk); font-weight: 600; font-size: .84rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.rp-araclar { display: flex; gap: 8px; flex: 0 0 auto; }
.rp-arac { display: inline-flex; align-items: center; gap: 6px; border: 1px solid var(--cizgi); background: var(--kart); color: var(--metin); border-radius: 11px;
    padding: 8px 12px; font-weight: 800; font-size: .85rem; cursor: pointer; font-family: inherit; text-decoration: none; }
.rp-arac:hover { border-color: var(--rp); color: var(--rp); }
.rp-arac.pasif { opacity: .45; pointer-events: none; }
.rp-arac .mi { font-size: 19px; }
.rp-arac.excel .mi { color: #15803d; }
.rp-arac.pdf .mi { color: #dc2626; }

.rp-filtre { background: var(--kart); border: 1px solid var(--cizgi); border-radius: 16px; padding: 12px 14px; margin-bottom: 14px; box-shadow: 0 2px 10px rgba(15,23,42,.04); }
.rp-filtre-ac { display: none; }
.rp-filtre-ic { display: flex; flex-wrap: wrap; gap: 10px 14px; align-items: flex-end; }
.rp-fld { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.rp-fld > label { font-size: .7rem; font-weight: 800; color: var(--soluk); text-transform: uppercase; letter-spacing: .04em; }
.rp-wrap .rp-inp, .rp-wrap .rp-sel { height: 38px; border: 1.5px solid var(--cizgi); border-radius: 10px; padding: 0 10px; font-family: inherit; font-size: .9rem;
    color: var(--metin); background-color: var(--kart); outline: none; min-width: 0; }
.rp-wrap .rp-sel { min-width: 150px; padding-right: 28px; }
.rp-inp:focus, .rp-sel:focus { border-color: var(--rp); box-shadow: 0 0 0 3px color-mix(in srgb, var(--rp) 15%, transparent); }
.rp-inp.genis { width: 200px; }
.rp-onay { display: inline-flex; align-items: center; gap: 7px; height: 38px; padding: 0 12px; border: 1.5px solid var(--cizgi); border-radius: 10px; font-weight: 700;
    font-size: .85rem; color: var(--metin); cursor: pointer; user-select: none; background: var(--kart); }
.rp-onay input { accent-color: var(--rp); width: 16px; height: 16px; }
.rp-onay.secili { border-color: var(--rp); background: color-mix(in srgb, var(--rp) 8%, var(--kart)); color: var(--rp); }
.rp-listele { height: 38px; border: 0; border-radius: 10px; padding: 0 18px; background: var(--rp); color: #fff; font-weight: 900; font-size: .9rem; cursor: pointer;
    display: inline-flex; align-items: center; gap: 6px; font-family: inherit; margin-left: auto; box-shadow: 0 4px 12px color-mix(in srgb, var(--rp) 30%, transparent); }
.rp-listele .mi { font-size: 19px; }
.rp-listele:disabled { opacity: .6; }

.rp-tarih { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.rp-cipler { display: flex; gap: 6px; overflow-x: auto; scrollbar-width: none; }
.rp-cipler::-webkit-scrollbar { display: none; }
.rp-cip { flex: 0 0 auto; border: 1.5px solid var(--cizgi); background: var(--kart); color: var(--soluk); border-radius: 999px; padding: 5px 12px; font-weight: 700;
    font-size: .8rem; cursor: pointer; font-family: inherit; white-space: nowrap; }
.rp-cip:hover { border-color: var(--rp); }
.rp-cip.secili { border-color: var(--rp); background: color-mix(in srgb, var(--rp) 12%, var(--kart)); color: var(--rp); font-weight: 900; }
.rp-tarih-ikili { display: flex; align-items: center; gap: 6px; }
.rp-tarih-ikili .rp-inp { width: 150px; }

.rp-ozetler { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 10px; margin-bottom: 14px; }
.rp-ozet { position: relative; background: var(--kart); border-radius: 16px; padding: 12px 14px 12px 16px; border: 1px solid var(--cizgi);
    box-shadow: 0 2px 10px rgba(15,23,42,.05); overflow: hidden; min-width: 0; }
.rp-ozet::before { content: ""; position: absolute; inset: 0 auto 0 0; width: 4px; background: var(--oz); }
.rp-ozet-ust { display: flex; align-items: center; gap: 8px; color: var(--soluk); font-size: .72rem; font-weight: 800; text-transform: uppercase; letter-spacing: .03em; }
.rp-ozet-ust .mi { font-size: 18px; color: var(--oz); background: color-mix(in srgb, var(--oz) 12%, var(--kart)); border-radius: 8px; padding: 4px; }
.rp-ozet b { display: block; margin-top: 6px; font-size: 1.28rem; font-weight: 900; color: var(--metin); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.rp-ozet small { display: block; color: var(--soluk); font-weight: 700; font-size: .74rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; opacity: .85; }

.rp-kart { background: var(--kart); border: 1px solid var(--cizgi); border-radius: 16px; box-shadow: 0 2px 10px rgba(15,23,42,.05); overflow: hidden; min-width: 0; }
.rp-kart-bas { display: flex; align-items: center; gap: 10px; padding: 12px 14px; border-bottom: 1px solid color-mix(in srgb, var(--cizgi) 60%, transparent); }
.rp-kart-bas h3 { margin: 0; font-size: 1rem; font-weight: 900; color: var(--metin); flex: 1; min-width: 0; }
.rp-kart-bas h3 small { font-weight: 700; color: var(--soluk); font-size: .76rem; margin-left: 6px; }
.rp-kart-bas > .mi { color: var(--rp); font-size: 22px; }
.rp-izgara2 { display: grid; grid-template-columns: repeat(auto-fit, minmax(380px, 1fr)); gap: 14px; margin-bottom: 14px; }
.rp-izgara3 { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 14px; margin-bottom: 14px; }
.rp-tam { margin-bottom: 14px; }

.rp-sekmeler { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 14px; }
.rp-sekme { flex: 0 0 auto; border: 1.5px solid var(--cizgi); background: var(--kart); padding: 8px 14px; border-radius: 10px; font-weight: 700; color: var(--metin);
    cursor: pointer; display: inline-flex; align-items: center; gap: 7px; font-family: inherit; font-size: .88rem; }
.rp-sekme .mi { font-size: 18px; color: var(--soluk); }
.rp-sekme:hover:not(.secili) { border-color: color-mix(in srgb, var(--rp) 45%, var(--kart)); }
.rp-sekme.secili { background: var(--rp); border-color: var(--rp); color: #fff; box-shadow: 0 4px 12px color-mix(in srgb, var(--rp) 30%, transparent); }
.rp-sekme.secili .mi { color: #fff; }

.rp-uyari { background: #fffbeb; border: 1px solid #fde68a; color: #92400e; border-radius: 12px; padding: 10px 12px; margin-bottom: 12px; font-weight: 700; font-size: .85rem;
    display: flex; gap: 8px; align-items: center; }
.rp-uyari .mi { font-size: 20px; }
.rp-hata { background: #fef2f2; border-color: #fecaca; color: #b91c1c; }
.rp-yukleniyor { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 10px; }
.rp-iskelet { height: 78px; border-radius: 16px; background: linear-gradient(90deg, #f1f5f9 25%, #e2e8f0 50%, #f1f5f9 75%); background-size: 200% 100%; animation: rp-parla 1.2s infinite; }
.rp-iskelet.uzun { grid-column: 1 / -1; height: 280px; }
@keyframes rp-parla { to { background-position: -200% 0; } }
.rp-bos { padding: 40px 16px; text-align: center; color: var(--soluk); font-weight: 800; display: flex; flex-direction: column; align-items: center; gap: 6px; opacity: .8; }
.rp-bos .mi { font-size: 40px; opacity: .5; }

/* tablo */
.rp-arac-cubuk { display: flex; align-items: center; gap: 10px; padding: 10px 12px; border-bottom: 1px solid color-mix(in srgb, var(--cizgi) 60%, transparent); flex-wrap: wrap; }
.rp-ara { display: flex; align-items: center; gap: 6px; background: var(--zemin); border-radius: 10px; padding: 0 10px; flex: 1 1 220px; max-width: 360px; }
.rp-ara input { border: 0; background: transparent; height: 36px; outline: none; flex: 1; min-width: 0; font-family: inherit; font-size: .9rem; color: var(--metin); }
.rp-ara .mi { color: var(--soluk); font-size: 20px; }
.rp-sayac { color: var(--soluk); font-size: .8rem; font-weight: 700; margin-left: auto; }
.rp-tablo-kap { overflow: auto; max-height: 70vh; }
.rp-tablo { width: 100%; border-collapse: separate; border-spacing: 0; font-size: .85rem; }
.rp-tablo th { position: sticky; top: 0; z-index: 2; background: var(--zemin); color: var(--soluk); font-weight: 800; font-size: .72rem; text-transform: uppercase;
    letter-spacing: .03em; text-align: left; padding: 10px; border-bottom: 2px solid var(--cizgi); white-space: nowrap; cursor: pointer; user-select: none; }
.rp-tablo th.sag, .rp-tablo td.sag { text-align: right; }
.rp-tablo th .mi { font-size: 14px; vertical-align: middle; color: var(--rp); }
.rp-tablo td { padding: 8px 10px; border-bottom: 1px solid color-mix(in srgb, var(--cizgi) 60%, transparent); color: var(--metin); white-space: nowrap;
    max-width: 320px; overflow: hidden; text-overflow: ellipsis; }
.rp-tablo td.sag { font-variant-numeric: tabular-nums; }
.rp-tablo tbody tr:hover td { background: color-mix(in srgb, var(--rp) 5%, var(--kart)); }
.rp-tablo tbody tr.tik { cursor: pointer; }
.rp-tablo tfoot td { position: sticky; bottom: 0; background: var(--rp); color: #fff; font-weight: 900; padding: 10px; white-space: nowrap; }
.rp-tablo .sira { color: var(--soluk); font-weight: 800; width: 34px; }
.rp-tablo .sira b { display: inline-grid; place-items: center; width: 22px; height: 22px; border-radius: 7px; background: var(--rp); color: #fff; font-size: .72rem; }
.rp-tablo .cubuk { display: inline-block; height: 6px; border-radius: 3px; background: color-mix(in srgb, var(--rp) 55%, var(--kart)); vertical-align: middle; margin-right: 6px; }
.rp-rozet { display: inline-block; padding: 2px 8px; border-radius: 999px; font-size: .72rem; font-weight: 800; background: color-mix(in srgb, var(--rk, var(--rp)) 12%, var(--kart));
    color: var(--rk, var(--rp)); }
.rp-daha { display: block; width: calc(100% - 24px); margin: 12px; border: 1.5px dashed var(--cizgi); background: var(--kart); border-radius: 12px; padding: 10px;
    font-weight: 800; color: var(--metin); cursor: pointer; font-family: inherit; }
.rp-mobil { display: none; }
.rp-mkart { background: var(--kart); border: 1px solid var(--cizgi); border-radius: 14px; padding: 11px 12px; display: flex; flex-direction: column; gap: 4px;
    box-shadow: 0 2px 8px rgba(15,23,42,.05); text-align: left; font-family: inherit; color: var(--metin); width: 100%; }
.rp-mkart.tik { cursor: pointer; }
.rp-mkart-ust { display: flex; align-items: baseline; gap: 10px; }
.rp-mkart-ust b { flex: 1; min-width: 0; font-weight: 900; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.rp-mkart-ust em { font-style: normal; font-weight: 900; color: var(--rp); white-space: nowrap; }
.rp-mkart small { color: var(--soluk); font-weight: 700; font-size: .76rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.rp-mkart-cip { display: flex; flex-wrap: wrap; gap: 4px 10px; font-size: .74rem; color: var(--soluk); font-weight: 700; }
.rp-mkart-cip span b { color: var(--metin); font-weight: 800; }
.rp-mtoplam { background: var(--rp); color: #fff; border-radius: 14px; padding: 12px 14px; display: flex; flex-direction: column; gap: 4px; font-weight: 800; }
.rp-mtoplam div { display: flex; justify-content: space-between; gap: 10px; font-size: .85rem; }

/* hub */
.rv-grup { margin: 18px 2px 10px; font-size: .78rem; font-weight: 900; color: var(--soluk); text-transform: uppercase; letter-spacing: .06em; }
.rv-izgara { display: grid; grid-template-columns: repeat(auto-fill, minmax(270px, 1fr)); gap: 10px; }
.rv-kart { display: flex; align-items: center; gap: 14px; background: var(--kart); border: 1px solid var(--cizgi); border-radius: 18px; padding: 13px 14px; text-decoration: none;
    box-shadow: 0 2px 10px rgba(15,23,42,.05); transition: transform .12s, box-shadow .12s, border-color .12s; position: relative; overflow: hidden; }
.rv-kart::after { content: ""; position: absolute; right: -30px; top: -30px; width: 110px; height: 110px; border-radius: 50%; background: color-mix(in srgb, var(--rv) 8%, transparent); }
.rv-kart:hover { transform: translateY(-2px); box-shadow: 0 10px 24px rgba(15,23,42,.1); border-color: color-mix(in srgb, var(--rv) 40%, var(--kart)); }
.rv-kart.amiral { grid-column: span 2; padding: 18px; }
.rv-kart.amiral .rv-ikon { width: 56px; height: 56px; font-size: 30px; border-radius: 17px; }
.rv-kart.amiral .rv-metin b { font-size: 1.15rem; }
.rv-ikon { width: 46px; height: 46px; border-radius: 14px; display: flex; align-items: center; justify-content: center; font-size: 25px; color: #fff; flex: 0 0 auto;
    background: linear-gradient(135deg, var(--rv), color-mix(in srgb, var(--rv) 60%, #000)); box-shadow: 0 6px 14px color-mix(in srgb, var(--rv) 35%, transparent); }
.rv-metin { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 3px; z-index: 1; }
.rv-metin b { color: var(--metin); font-size: .98rem; font-weight: 900; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.rv-metin small { color: var(--soluk); font-weight: 600; font-size: .78rem; line-height: 1.35; }
.rv-ok { color: var(--cizgi); z-index: 1; font-size: 24px; }

/* ── grafikler ── */
.gr-ipucu { position: absolute; z-index: 5; pointer-events: none; opacity: 0; transition: opacity .1s; background: #0f172a; color: #fff; border-radius: 10px;
    padding: 7px 10px; font-size: .74rem; font-weight: 600; white-space: nowrap; box-shadow: 0 8px 20px rgba(15,23,42,.25); line-height: 1.45; }
.gr-ipucu b { font-weight: 900; }
.gr-ipucu i { display: inline-block; width: 8px; height: 8px; border-radius: 2px; margin-right: 5px; }
.gr-bos { padding: 34px 14px; text-align: center; color: var(--soluk); font-weight: 700; font-size: .85rem; opacity: .8; }

.gh-kap { display: flex; align-items: center; gap: 16px; padding: 14px; }
.gh-svg { flex: 0 0 auto; width: 170px; height: 170px; overflow: visible; }
.gh-dilim path { transition: transform .15s; transform-origin: 100px 100px; }
.gh-dilim:hover path { transform: scale(1.05); }
.gh-dilim .gh-orta { opacity: 0; transition: opacity .12s; pointer-events: none; }
.gh-dilim:hover .gh-orta { opacity: 1; }
.gh-svg:hover .gh-varsayilan { opacity: 0; }
.gh-varsayilan { transition: opacity .12s; pointer-events: none; }
.gh-orta-ad { font-size: 10px; font-weight: 800; fill: var(--gr-metin2); text-transform: uppercase; }
.gh-orta-deger { font-size: 15px; font-weight: 900; fill: var(--gr-metin); }
.gh-orta-pay { font-size: 11px; font-weight: 800; fill: var(--gr-metin2); }
.gh-lejant { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 7px; }
.gh-l { display: grid; grid-template-columns: 10px minmax(0,1fr) auto; gap: 8px; align-items: center; font-size: .8rem; }
.gh-l i { width: 10px; height: 10px; border-radius: 3px; }
.gh-l span { color: var(--gr-metin); font-weight: 700; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.gh-l em { font-style: normal; color: var(--gr-metin2); font-weight: 700; font-variant-numeric: tabular-nums; text-align: right; white-space: nowrap; }
.gh-l em b { color: var(--gr-metin); font-weight: 900; margin-left: 6px; }

.gc-kap { position: relative; margin: 14px 14px 30px 66px; }
.gc-svg { display: block; width: 100%; overflow: visible; }
.gc-svg path, .gc-svg line { vector-effect: non-scaling-stroke; }
.gc-y { position: absolute; left: -64px; width: 58px; white-space: nowrap; text-align: right; font-size: .68rem; color: var(--gr-metin2); font-weight: 700; transform: translateY(-50%); }
.gc-x { position: absolute; bottom: -22px; font-size: .68rem; color: var(--gr-metin2); font-weight: 700; transform: translateX(-50%); white-space: nowrap; }
.gc-nk { position: absolute; top: 0; bottom: 0; }
.gc-nk .gc-cizgi { position: absolute; left: 50%; top: 0; bottom: 0; border-left: 1px dashed #94a3b8; opacity: 0; }
.gc-nk .gc-nokta { position: absolute; left: 50%; width: 10px; height: 10px; margin: -5px 0 0 -5px; border-radius: 50%; border: 2px solid var(--gr-yuzey); opacity: 0; }
.gc-nk:hover .gc-cizgi, .gc-nk:hover .gc-nokta, .gc-nk:hover .gr-ipucu { opacity: 1; }
.gc-nk .gr-ipucu { top: 6px; left: 50%; transform: translateX(-50%); }
.gc-nk.sol .gr-ipucu { left: 0; transform: none; }
.gc-nk.sag .gr-ipucu { left: auto; right: 0; transform: none; }
.gc-etiket { position: absolute; font-size: .7rem; font-weight: 900; color: var(--gr-metin); transform: translate(-50%, -140%); white-space: nowrap; pointer-events: none; }
.gc-lejant { display: flex; gap: 14px; padding: 0 14px 12px; font-size: .76rem; font-weight: 700; color: var(--gr-metin2); flex-wrap: wrap; }
.gc-lejant span { display: inline-flex; align-items: center; gap: 6px; }
.gc-lejant i { width: 16px; height: 0; border-top: 3px solid; display: inline-block; }
.gc-lejant i.kesik { border-top-style: dashed; border-top-width: 2px; }
.gc-lejant i.kutu { width: 10px; height: 10px; border: 0; border-radius: 3px; }

.gb-yatay { display: flex; flex-direction: column; gap: 9px; padding: 14px; }
.gb-y { position: relative; display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 2fr) auto; gap: 10px; align-items: center; font-size: .8rem; }
.gb-y.tik { cursor: pointer; }
.gb-y > span { font-weight: 700; color: var(--gr-metin); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.gb-y > div { height: 12px; background: var(--zemin); border-radius: 6px; overflow: hidden; }
.gb-y > div > i { display: block; height: 100%; border-radius: 0 6px 6px 0; background: var(--gb, var(--seri-1)); min-width: 2px; }
.gb-y > em { font-style: normal; font-weight: 900; color: var(--gr-metin); font-variant-numeric: tabular-nums; text-align: right; white-space: nowrap; }
.gb-y > em small { display: block; font-weight: 700; color: var(--gr-metin2); font-size: .68rem; }
.gb-y:hover > div > i { filter: brightness(.9); }
.gb-dikey { display: flex; align-items: flex-end; gap: 6px; height: 210px; padding: 22px 14px 30px; }
.gb-d { position: relative; flex: 1 1 0; min-width: 0; height: 100%; display: flex; flex-direction: column; justify-content: flex-end; align-items: center; }
.gb-d > i { display: block; width: 100%; max-width: 44px; border-radius: 4px 4px 0 0; background: color-mix(in srgb, var(--gb, var(--seri-1)) 60%, var(--kart)); }
.gb-d.tepe > i, .gb-d:hover > i { background: var(--gb, var(--seri-1)); }
.gb-d > i.ust { border-radius: 4px 4px 0 0; }
.gb-d > i.alt { border-radius: 0; }
.gb-d > small { position: absolute; bottom: -20px; font-size: .66rem; font-weight: 700; color: var(--gr-metin2); white-space: nowrap; }
.gb-d > b { font-size: .66rem; font-weight: 900; color: var(--gr-metin); margin-bottom: 3px; white-space: nowrap; }
.gb-d .gr-ipucu { bottom: 100%; left: 50%; transform: translateX(-50%); }
.gb-d:hover .gr-ipucu { opacity: 1; }

/* huni */
.gf-kap { display: flex; flex-direction: column; gap: 8px; padding: 16px 14px; }
.gf-a { display: grid; grid-template-columns: 130px minmax(0,1fr) 120px; gap: 10px; align-items: center; font-size: .82rem; }
.gf-a > span { font-weight: 800; color: var(--gr-metin); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.gf-a > div { display: flex; justify-content: center; }
.gf-a > div > i { display: block; height: 30px; border-radius: 8px; min-width: 4px; background: linear-gradient(90deg, color-mix(in srgb, var(--gf) 70%, var(--kart)), var(--gf)); }
.gf-a > em { font-style: normal; text-align: right; font-weight: 900; color: var(--gr-metin); font-variant-numeric: tabular-nums; }
.gf-a > em small { display: block; color: var(--gr-metin2); font-weight: 700; font-size: .7rem; }

/* ısı haritası */
.gi-kap { padding: 14px; overflow-x: auto; }
.gi-tablo { border-collapse: separate; border-spacing: 3px; width: 100%; min-width: 520px; }
.gi-tablo th { font-size: .66rem; font-weight: 800; color: var(--gr-metin2); padding: 2px 4px; text-align: center; }
.gi-tablo th.gun { text-align: left; width: 38px; }
.gi-tablo td { height: 26px; border-radius: 6px; text-align: center; font-size: .68rem; font-weight: 800; color: var(--gr-metin); position: relative; }
.gi-tablo td.koyu { color: #fff; }
.gi-lejant { display: flex; align-items: center; gap: 6px; justify-content: flex-end; padding: 0 14px 12px; font-size: .7rem; font-weight: 700; color: var(--gr-metin2); }
.gi-lejant i { width: 60px; height: 8px; border-radius: 4px; background: linear-gradient(90deg, color-mix(in srgb, var(--rp) 8%, var(--kart)), var(--rp)); }

/* detay paneli (sağdan kayan) */
.rp-panel-perde { position: fixed; inset: 0; background: rgba(15,23,42,.35); z-index: 1500; animation: rp-sol .15s ease-out; }
.rp-panel { position: fixed; top: 0; right: 0; bottom: 0; width: min(560px, 100vw); background: var(--zemin); z-index: 1501; display: flex; flex-direction: column;
    box-shadow: -12px 0 30px rgba(15,23,42,.18); animation: rp-kay .18s ease-out; padding-bottom: env(safe-area-inset-bottom); }
.rp-panel-bas { display: flex; align-items: center; gap: 12px; padding: 14px 16px; background: var(--kart); border-bottom: 1px solid var(--cizgi); }
.rp-panel-bas h3 { margin: 0; flex: 1; min-width: 0; font-size: 1.05rem; font-weight: 900; color: var(--metin); }
.rp-panel-bas h3 small { display: block; font-size: .78rem; color: var(--soluk); font-weight: 700; }
.rp-panel-kapat { border: 0; background: var(--zemin); width: 36px; height: 36px; border-radius: 10px; cursor: pointer; font-size: 22px; color: var(--soluk); display: grid; place-items: center; }
.rp-panel-govde { flex: 1; overflow-y: auto; padding: 14px; display: flex; flex-direction: column; gap: 12px; }
.rp-panel-govde .rp-ozetler { grid-template-columns: repeat(3, minmax(0,1fr)); margin: 0; }
.rp-satir-link { display: flex; align-items: center; gap: 10px; background: var(--kart); border: 1px solid var(--cizgi); border-radius: 12px; padding: 10px 12px; text-decoration: none; color: var(--metin); }
.rp-satir-link:hover { border-color: var(--rp); }
.rp-satir-link .mi { color: var(--rp); font-size: 22px; }
.rp-satir-link div { flex: 1; min-width: 0; display: flex; flex-direction: column; }
.rp-satir-link b { font-weight: 800; font-size: .9rem; }
.rp-satir-link small { color: var(--soluk); font-weight: 700; font-size: .75rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.rp-satir-link em { font-style: normal; font-weight: 900; white-space: nowrap; }
@keyframes rp-kay { from { transform: translateX(40px); opacity: 0; } }
@keyframes rp-sol { from { opacity: 0; } }

@media (max-width: 860px) {
    .rp-wrap { padding: 2px 0 18px; }
    .rp-head { gap: 8px; margin-bottom: 10px; }
    .rp-ikon { width: 40px; height: 40px; font-size: 22px; border-radius: 12px; }
    .rp-geri { width: 34px; height: 34px; }
    .rp-baslik h2 { font-size: 1.12rem; }
    .rp-baslik small { font-size: .72rem; }
    .rp-arac { padding: 8px; }
    .rp-arac .yazi { display: none; }
    .rp-araclar { gap: 5px; }
    .rp-filtre { padding: 0; overflow: hidden; }
    .rp-filtre-ac { display: flex; width: 100%; align-items: center; gap: 8px; border: 0; background: var(--kart); padding: 12px; font-family: inherit; font-weight: 800;
        color: var(--metin); cursor: pointer; text-align: left; font-size: .95rem; }
    .rp-filtre-ac .mi { color: var(--rp); font-size: 22px; }
    .rp-filtre-ac small { flex: 1; min-width: 0; color: var(--soluk); font-weight: 700; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
    .rp-filtre-ic { display: none; padding: 0 12px 12px; flex-direction: column; align-items: stretch; }
    .rp-filtre.acik .rp-filtre-ic { display: flex; }
    .rp-fld, .rp-tarih { width: 100%; }
    .rp-wrap .rp-inp, .rp-wrap .rp-sel, .rp-inp.genis { width: 100%; height: 44px; font-size: 16px; }
    .rp-tarih-ikili .rp-inp { width: auto; flex: 1; }
    .rp-onay { width: 100%; height: 44px; }
    .rp-listele { width: 100%; justify-content: center; margin: 4px 0 0; height: 48px; font-size: 1rem; }
    .rp-ozetler { grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 8px; }
    .rp-ozet { padding: 10px 10px 10px 13px; border-radius: 14px; }
    .rp-ozet b { font-size: 1.04rem; }
    .rp-ozet-ust { font-size: .64rem; gap: 6px; }
    .rp-ozet-ust .mi { font-size: 16px; padding: 3px; }
    .rp-izgara2, .rp-izgara3 { grid-template-columns: minmax(0,1fr); }
    .rp-sekmeler { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; gap: 6px; }
    .rp-sekme { padding: 8px 11px; font-size: .82rem; }
    .rp-masaustu { display: none !important; }
    .rp-mobil { display: flex; flex-direction: column; gap: 8px; padding: 10px; }
    .rp-ara { max-width: none; }
    .rp-sayac { width: 100%; margin: 0; }
    .gh-kap { flex-direction: column; align-items: stretch; gap: 12px; }
    .gh-svg { align-self: center; width: 180px; height: 180px; }
    .gc-kap { margin-left: 46px; margin-right: 10px; }
    .gc-y { left: -44px; width: 38px; font-size: .6rem; }
    .gc-x { font-size: .58rem; }
    .gb-dikey { gap: 3px; padding-left: 8px; padding-right: 8px; }
    .gb-d > b { font-size: .56rem; }
    .gb-d > small { font-size: .56rem; }
    .gf-a { grid-template-columns: 96px minmax(0,1fr) 84px; font-size: .74rem; }
    .rv-izgara { grid-template-columns: minmax(0,1fr); gap: 8px; }
    .rv-kart.amiral { grid-column: auto; }
    .rv-kart { border-radius: 14px; }
    .rp-panel-govde .rp-ozetler { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media print {
    .nos-yan, .nos-ust, .rp-araclar, .rp-filtre, .alt-sekmeler { display: none !important; }
}
