body { background: #f2f4f8; -webkit-tap-highlight-color: transparent; overscroll-behavior-y: none; }
.ust-bant { background: linear-gradient(160deg, #0d6efd, #0a58ca); color: #fff; padding: calc(env(safe-area-inset-top) + 1rem) 1.25rem 1rem; }
.saat { font-size: 3.5rem; font-weight: 700; line-height: 1; font-variant-numeric: tabular-nums; }
.durum-nokta { width: 14px; height: 14px; border-radius: 50%; flex: none; box-shadow: 0 0 0 4px rgba(0,0,0,.06); }
.btn-okut { display: flex; flex-direction: column; align-items: center; padding: 1.4rem; border-radius: 1.25rem; font-size: 1.6rem; font-weight: 700; letter-spacing: .05em; }
.btn-okut i { font-size: 3.2rem; line-height: 1; }
.btn-okut small { font-size: .8rem; font-weight: 400; letter-spacing: 0; opacity: .85; }
#okuyucu { border-radius: 1rem; overflow: hidden; }
#okuyucu video { border-radius: 1rem; }
.sonuc-basarili { background: #198754; color: #fff; }
.sonuc-hata { background: #dc3545; color: #fff; }
.sonuc-bekle { background: #0d6efd; color: #fff; }
.sonuc-saat { font-size: 4.5rem; font-weight: 800; font-variant-numeric: tabular-nums; }
/* Alt menü (sekme çubuğu) */
body.alt-menulu { padding-bottom: calc(64px + env(safe-area-inset-bottom)); }
body.alt-menu-gizli { padding-bottom: 0; }
body.alt-menu-gizli .alt-menu { display: none; }
.alt-menu { position: fixed; left: 0; right: 0; bottom: 0; z-index: 1030; display: flex; background: #fff; border-top: 1px solid #e3e6ec;
    padding-bottom: env(safe-area-inset-bottom); box-shadow: 0 -2px 12px rgba(0,0,0,.05); }
.alt-menu a { flex: 1; display: flex; flex-direction: column; align-items: center; gap: 2px; padding: 8px 0 6px; color: #6c757d; text-decoration: none; font-size: .68rem; }
.alt-menu a i { font-size: 1.35rem; line-height: 1; }
.alt-menu a.active { color: #0d6efd; font-weight: 600; }
.alt-rozet, .zil-rozet { position: absolute; top: 2px; left: 55%; min-width: 18px; height: 18px; padding: 0 5px; border-radius: 9px; background: #dc3545; color: #fff;
    font-size: .65rem; line-height: 18px; text-align: center; font-weight: 700; }
.zil-rozet { top: -4px; left: 60%; border: 2px solid #0a58ca; height: 20px; line-height: 16px; }
/* Kartlar ve listeler */
.kutu-ikon { width: 42px; height: 42px; border-radius: 12px; display: inline-flex; align-items: center; justify-content: center; color: #fff; font-size: 1.25rem; flex: none; }
.hizli-islem { display: grid; grid-template-columns: repeat(4, 1fr); gap: .5rem; }
.hizli-islem a { display: flex; flex-direction: column; align-items: center; gap: .35rem; padding: .7rem .2rem; background: #fff; border-radius: 14px;
    text-decoration: none; color: #212529; font-size: .72rem; text-align: center; box-shadow: 0 1px 3px rgba(0,0,0,.06); }
.bakiye-kart .kalan { font-size: 1.8rem; font-weight: 700; line-height: 1; font-variant-numeric: tabular-nums; }
.bakiye-cubuk { height: 6px; border-radius: 3px; background: #e9ecef; overflow: hidden; }
.bakiye-cubuk > span { display: block; height: 100%; background: #0d6efd; }
.liste-satir { display: flex; align-items: center; gap: .75rem; padding: .75rem 1rem; text-decoration: none; color: inherit; border-bottom: 1px solid #eef0f4; }
.liste-satir:last-child { border-bottom: 0; }
.okunmamis { background: #f1f6ff; }
.onemli-serit { border-left: 4px solid #dc3545; }
.zaman-cizgisi { list-style: none; padding-left: 1.25rem; border-left: 2px solid #dee2e6; margin: 0; }
.zaman-cizgisi li { position: relative; padding: 0 0 1rem .5rem; }
.zaman-cizgisi li::before { content: ""; position: absolute; left: -1.62rem; top: .25rem; width: 12px; height: 12px; border-radius: 50%; background: var(--nokta, #adb5bd); border: 2px solid #fff; }
.fis-onizleme { max-height: 220px; border-radius: 10px; object-fit: contain; background: #f8f9fa; }
.duyuru-metni { white-space: pre-wrap; }
/* Görüntüleme tercihleri: yazı boyutu ve koyu tema */
body.yazi-buyuk { font-size: 1.12rem; }
body.yazi-cok-buyuk { font-size: 1.25rem; }
body.yazi-buyuk .small, body.yazi-buyuk small { font-size: .92em; }
body.yazi-cok-buyuk .small, body.yazi-cok-buyuk small { font-size: .95em; }
[data-bs-theme=dark] body { background: #12151b; }
[data-bs-theme=dark] .alt-menu { background: #1b1f27; border-top-color: #2b313c; }
[data-bs-theme=dark] .hizli-islem a { background: #1b1f27; color: #e9ecef; }
[data-bs-theme=dark] .liste-satir { border-bottom-color: #2b313c; }
[data-bs-theme=dark] .bg-white { background-color: var(--bs-tertiary-bg) !important; color: var(--bs-body-color); }
[data-bs-theme=dark] .okunmamis { background: #1c2a40; }
[data-bs-theme=dark] .ust-bant { background: linear-gradient(160deg, #1e3a8a, #172554); }
/* Raporlarım */
.sabit-p { position: sticky; top: 0; z-index: 5; background: var(--bs-body-bg, #f2f4f8); margin: -1rem -12px .5rem; padding: .75rem 12px .25rem; box-shadow: 0 6px 8px -8px rgba(0,0,0,.25); }
body:not([data-tema=koyu]) .sabit-p { background: #f2f4f8; }
[data-bs-theme=dark] .sabit-p { background: #12151b; }
/* Mağaza uygulaması ve iPhone ana ekran uygulaması: sayfa durum çubuğunun altına uzanır (viewport-fit=cover). Yapışkan başlık
   çentiğin altında durur, üstteki boşluk zemin rengiyle kapanır; tam ekranlar çentik payı kadar aşağıdan başlar. */
.sabit-p { top: env(safe-area-inset-top, 0px); box-shadow: 0 calc(-1 * env(safe-area-inset-top, 0px)) 0 0 #f2f4f8, 0 6px 8px -8px rgba(0,0,0,.25); }
[data-bs-theme=dark] .sabit-p { box-shadow: 0 calc(-1 * env(safe-area-inset-top, 0px)) 0 0 #12151b, 0 6px 8px -8px rgba(0,0,0,.25); }
#tarayiciEkrani > div:first-child { padding-top: calc(env(safe-area-inset-top, 0px) + 1rem) !important; }
#sonucEkrani, #molaEkrani { padding-top: calc(env(safe-area-inset-top, 0px) + 1.5rem) !important; padding-bottom: calc(env(safe-area-inset-bottom, 0px) + 1.5rem) !important; }
.rapor-sekmeler { display: flex; gap: .35rem; overflow-x: auto; padding-bottom: 2px; scrollbar-width: none; }
.rapor-sekmeler .btn { white-space: nowrap; flex: none; }
.rapor-alanlar { display: flex; flex-wrap: wrap; gap: .15rem 1rem; font-size: .9em; }
.rapor-alanlar small { margin-right: .2rem; }
.p-zebra-kart > .rapor-kart:nth-child(even) { background: rgba(13,110,253,.05); }
.p-renkli-kart > .rapor-kart:nth-child(6n+1) { border-left: 4px solid #0d6efd; }
.p-renkli-kart > .rapor-kart:nth-child(6n+2) { border-left: 4px solid #198754; }
.p-renkli-kart > .rapor-kart:nth-child(6n+3) { border-left: 4px solid #fd7e14; }
.p-renkli-kart > .rapor-kart:nth-child(6n+4) { border-left: 4px solid #6f42c1; }
.p-renkli-kart > .rapor-kart:nth-child(6n+5) { border-left: 4px solid #d63384; }
.p-renkli-kart > .rapor-kart:nth-child(6n) { border-left: 4px solid #20c997; }
table.p-renkli > tbody > tr:nth-child(6n+1) > td { --bs-table-bg-type: rgba(13,110,253,.07); }
table.p-renkli > tbody > tr:nth-child(6n+2) > td { --bs-table-bg-type: rgba(25,135,84,.07); }
table.p-renkli > tbody > tr:nth-child(6n+3) > td { --bs-table-bg-type: rgba(253,126,20,.08); }
table.p-renkli > tbody > tr:nth-child(6n+4) > td { --bs-table-bg-type: rgba(111,66,193,.07); }
table.p-renkli > tbody > tr:nth-child(6n+5) > td { --bs-table-bg-type: rgba(214,51,132,.07); }
table.p-renkli > tbody > tr:nth-child(6n) > td { --bs-table-bg-type: rgba(32,201,151,.08); }
@media print { .alt-menu, .ust-bant a, .sabit-p form, .rapor-sekmeler, .sabit-p .d-flex { display: none !important; } .sabit-p { position: static; box-shadow: none; } body.alt-menulu { padding-bottom: 0; } }
/* Özlük Bilgilerim: şirket logosu, evrak sayfaları ve yükleme göstergesi */
/* Logonun kenar boşluğu sunucuda kırpılır (/p/logo?kirp=1); kutu iç boşluksuzdur ve logonun kendi en / boy oranını alır,
   logo alanı kenardan kenara doldurur. Beyaz zemin yalnız saydam logolar mavi bantta okunsun diyedir. */
.p-logo { display: inline-block; flex: none; background: #fff; border-radius: 8px; overflow: hidden; line-height: 0; box-shadow: 0 1px 4px rgba(0,0,0,.18); }
.p-logo img { display: block; width: auto; height: auto; max-height: 46px; max-width: min(220px, 58vw); }
.p-logo-buyuk { border-radius: 12px; }
.p-logo-buyuk img { max-height: 84px; max-width: min(320px, 82vw); }
.evrak-sayfalar { display: flex; flex-wrap: wrap; gap: .5rem; }
.evrak-sayfa { position: relative; width: 84px; height: 84px; border-radius: 10px; overflow: hidden; background: #f1f3f5; border: 1px solid #e3e6ec; }
.evrak-sayfa img { width: 100%; height: 100%; object-fit: cover; display: block; }
.evrak-sayfa form { position: absolute; top: 3px; right: 3px; margin: 0; }
.evrak-sil { width: 24px; height: 24px; border-radius: 50%; border: 0; background: rgba(220,53,69,.92); color: #fff; display: flex; align-items: center; justify-content: center; font-size: 1rem; padding: 0; }
.evrak-pdf { width: 100%; height: 100%; display: flex; flex-direction: column; align-items: center; justify-content: center; color: #dc3545; text-decoration: none; }
.evrak-pdf i { font-size: 2rem; line-height: 1; }
.evrak-yukleniyor { position: fixed; inset: 0; z-index: 1100; background: rgba(0,0,0,.45); display: flex; align-items: center; justify-content: center; }
.evrak-yukleniyor.d-none { display: none !important; }
[data-bs-theme=dark] .evrak-sayfa { background: #1b1f27; border-color: #2b313c; }

/* İlk açılış: kamera ve konum izni */
.izin-ikon { width: 2.5rem; height: 2.5rem; flex: 0 0 2.5rem; border-radius: .75rem; display: grid; place-items: center; font-size: 1.25rem;
    background: rgba(13, 110, 253, .1); color: #0d6efd; }
.izin-durum:empty { display: none; }
