/* AZURE TERAS – Ödeme Planı */
:root {
  --sayfa-w: 1240px;   /* ortak içerik genişliği: TEK kaynak (başlık, sekme çubuğu ve gövde aynı kabuğu kullanır) */
  --sayfa-genis: none;   /* tam genişlik ekranlar (crm, envanter, bina şeması, teklif oluştur, takvim, satış formu…) bilinçli olarak bunu kullanır */
  --sayfa-dar: 820px;   /* okuma / form ekranları (hesabım, giriş sihirbazı) */
  --sayfa-px: 18px;   /* kabuğun yan boşluğu: başlık ve gövde aynı sol kenardan başlar */
  --r-sm: 6px; --r-md: 10px; --r-lg: 14px;   /* köşe yarıçapı ölçeği (T-09) */
  --slate: #565656;      /* Excel başlık grisi */
  --stone: #E7E0DB;      /* Excel değer zemini */
  --red: #C00000;        /* Excel fiyat kırmızısı */
  --navy: #34366B;       /* TÜRKAZ logosu */
  --ink: #232323;
  --line: #D6D1CC;
  --bg: #ECEAE7;
  --panel: #FFFFFF;
  --mut: #67615B;
  --font: "Segoe UI", Calibri, Carlito, "Helvetica Neue", Arial, sans-serif;
}
* { box-sizing: border-box; }
[hidden] { display: none !important; }
html, body { margin: 0; height: 100%; }
body { font: 14px/1.45 var(--font); color: var(--ink); background: var(--bg); }
button, input, select { font: inherit; color: inherit; }
button { cursor: pointer; }
:focus-visible { outline: 2px solid var(--navy); outline-offset: 2px; }

.primary {
  display: inline-flex; align-items: center; justify-content: center;
  background: var(--navy); color: #fff; border: 0; border-radius: var(--r-sm);
  padding: 10px 16px; font-weight: 600;
}
.primary:disabled { background: #A9A8B9; cursor: default; }
.primary:not(:disabled):hover { background: color-mix(in srgb, var(--navy) 82%, #000); }
.link { background: none; border: 0; padding: 0; color: var(--navy); text-decoration: underline; text-underline-offset: 2px; }

/* ---------- Giriş ---------- */
.login { min-height: 100%; display: grid; place-items: center; padding: 24px; }
.login form { width: 100%; max-width: 360px; background: var(--panel); border-radius: var(--r-md); padding: 32px 28px; box-shadow: 0 1px 2px rgba(0,0,0,.06); }
.login img { width: 190px; display: block; margin: 0 auto 18px; }
.login h1 { font-size: 20px; margin: 0 0 4px; text-align: center; }
.login p { margin: 0 0 20px; text-align: center; color: var(--mut); }
.login label { display: block; font-weight: 600; font-size: 13px; margin-bottom: 14px; }
.login input { display: block; width: 100%; margin-top: 6px; padding: 10px 12px; border: 1px solid var(--line); border-radius: var(--r-sm); }
.login .primary { width: 100%; margin-top: 6px; }
.err { color: var(--red); min-height: 20px; margin-top: 12px; text-align: center; }
.fatal { padding: 40px; color: var(--red); }

/* ---------- Üst bar ---------- */
.top { display: flex; align-items: center; gap: 24px; padding: 0 20px; height: 56px; background: var(--bar, var(--slate)); color: var(--bar-yazi, #fff); border-bottom: 1px solid color-mix(in srgb, var(--bar-yazi, #fff) 12%, transparent); }   /* üst çubuk temaya uyar; logo çubuğun renginden seçilir (hesap.js) */
.brand { display: flex; align-items: center; gap: 10px; font-weight: 600; }
.brand img { height: 24px; width: auto; }   /* azatech logosu (beyaz sürüm); proje logosu teklif ve belgelerde kalır */
.brand span { border-left: 1px solid color-mix(in srgb, currentColor 35%, transparent); padding-left: 10px; }

.who { margin-left: auto; display: flex; gap: 14px; align-items: center; font-size: 13px; }
.who em { font-style: normal; background: var(--stone); color: var(--slate); border-radius: var(--r-sm); padding: 1px 6px; margin-left: 6px; font-size: 11px; font-weight: 700; }
.who .link { color: var(--bar-yazi, #fff); }

/* ---------- Plan ekranı ---------- */
.plan-view { display: grid; grid-template-columns: 300px 1fr; min-height: calc(100% - 56px); }
.ctl { background: var(--panel); padding: 22px 20px; border-right: 1px solid var(--line); display: flex; flex-direction: column; gap: 18px; }
.ctl label { font-size: 13px; font-weight: 600; display: block; }
.ctl input[type=number], .ctl #bb, .ctl #fBB { display: block; width: 100%; margin-top: 6px; padding: 9px 11px; border: 1px solid var(--line); border-radius: var(--r-sm); background: #fff; }
.ctl #bb, .ctl #fBB { font-size: 24px; font-weight: 700; letter-spacing: .02em; padding: 8px 12px; }
.unit-info:empty { display: none; }
.unit-info div { display: flex; flex-wrap: wrap; gap: 6px; }
.unit-info span { background: var(--stone); border-radius: var(--r-sm); padding: 3px 8px; font-size: 13px; }
.warn { margin: 10px 0 0; font-size: 12px; color: var(--red); }
.row2 { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.row3 { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 8px; }
.row3 .pct input { font-size: 16px; padding-left: 8px; }
.grp { border: 0; padding: 0; margin: 0; }
.grp legend { font-size: 13px; font-weight: 700; margin-bottom: 6px; color: var(--slate); }
.grp label { font-weight: 500 !important; font-size: 12px !important; color: var(--mut); }
.pct { position: relative; display: block; }
.pct input { padding-right: 28px !important; font-size: 18px; font-weight: 600; }
.pct i { position: absolute; right: 10px; top: 50%; transform: translateY(-25%); font-style: normal; color: var(--mut); }
.plans { border: 0; margin: 0; padding: 0; display: grid; gap: 8px; }
.plans legend { font-size: 13px; font-weight: 600; margin-bottom: 6px; }
.opt { display: flex !important; gap: 10px; align-items: flex-start; border: 1px solid var(--line); border-radius: var(--r-sm); padding: 9px 11px; font-weight: 400 !important; cursor: pointer; }
.opt:has(input:checked) { border-color: var(--navy); box-shadow: inset 3px 0 0 var(--navy); }
.opt input { margin-top: 3px; accent-color: var(--navy); }
.opt b { display: block; font-size: 14px; }
.opt small { color: var(--mut); font-size: 12px; }
.dl { width: 100%; padding: 13px; font-size: 14px; }
.fine { margin: -6px 0 0; font-size: 12px; color: var(--mut); }

.stage { padding: 24px 16px 40px; overflow: auto; display: flex; justify-content: center; align-items: flex-start; }
.scaler { position: relative; flex: none; }
.page { width: 794px; height: 1122px; background: #fff; box-shadow: 0 2px 14px rgba(0,0,0,.12); position: absolute; top: 0; left: 0; transform-origin: top left; }
.page.empty { display: grid; place-items: center; }
.empty-msg { color: var(--mut); font-size: 20px; max-width: 420px; text-align: center; }
.empty-msg b { color: var(--red); font-weight: 600; }

/* ---------- A4 plan (794 × 1122 px) ---------- */
.pl { width: 794px; height: 1122px; padding: 24px 58px 18px; font-family: var(--font); color: #000; background: #fff; display: flex; flex-direction: column; overflow: hidden; }
.pl-head { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; height: 64px; }
.pl-date { font-size: 12px; color: #333; }
.pl-meta { display: flex; flex-direction: column; gap: 1px; font-size: 10.5px; color: #333; line-height: 1.35; }
.pl-meta b { font-size: 11.5px; color: #000; }
.pl-meta .draft { color: #B42318; font-weight: 700; letter-spacing: .02em; }
.pl-qr { justify-self: end; display: flex; flex-direction: column; align-items: center; gap: 1px; }
.pl-qr img { width: 62px; height: 62px; image-rendering: pixelated; }
.pl-qr span:not(.pl-bb) { font-size: 8.5px; font-weight: 700; color: #555; letter-spacing: .04em; }
/* PDF 2. sayfa: daire konumu */
.pl-sema .ps-title { text-align: center; margin: 14px 0 4px; }
.pl-sema .ps-title h2 { margin: 0; font-size: 22px; letter-spacing: .06em; color: var(--slate); }
.pl-sema .ps-title p { margin: 2px 0 0; font-size: 12px; color: #77716B; }
.pl-sema .ps-unit { display: flex; justify-content: center; align-items: baseline; gap: 12px; margin: 10px 0 14px; padding: 8px 12px; background: var(--stone); border: 1px solid #3d3d3d; }
.pl-sema .ps-unit b { font-size: 20px; color: var(--ac, var(--navy)); }
.pl-sema .ps-unit span { font-size: 14px; font-weight: 600; }
.pl-sema .ps-unit em { font-style: normal; font-size: 12px; color: #55504A; }
.pl-sema .ps-draw { flex: 1 1 0; min-height: 0; display: flex; align-items: center; justify-content: center; }
.pl-sema .ps-draw svg { display: block; }
.pl-sema .ps-legend { display: flex; justify-content: center; align-items: center; gap: 8px; font-size: 11.5px; font-weight: 600; color: #444; margin: 10px 0 4px; }
.pl-sema .ps-legend i { width: 22px; height: 14px; border-radius: 3px; background: var(--ac, var(--navy)); display: inline-block; }
.pl-sema .ps-ground { width: 26px; height: 0; border-top: 2px solid #6B665F; margin-left: 14px; display: inline-block; }
.pl-logo { height: 60px; }
.pl-bb { justify-self: end; font-size: 10px; color: #9a9a9a; letter-spacing: .04em; }

.pl-grid { width: 100%; border-collapse: collapse; table-layout: fixed; margin-top: 8px; }
.pl-grid td { text-align: center; font-size: 11.5px; font-weight: 700; padding: 3px 3px; border: 1px solid #3d3d3d; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.pl-grid tr.h td { background: var(--slate); color: #fff; }
.pl-grid tr.v td { background: var(--stone); }
.pl-grid tr.gap td { border: 0; padding: 0; height: 4px; background: none; }

.pl-box { margin-top: 8px; border: 1px solid #3d3d3d; background: var(--stone); text-align: center; }
.pl-box .bar { background: var(--slate); color: #fff; font-weight: 700; font-size: 14px; padding: 3px; }
.pl-box .big { font-size: 24px; font-weight: 700; padding: 1px 0 3px; line-height: 1.25; }
.pl-box .sub { font-size: 16px; padding-top: 2px; }
.red { color: var(--red); }

.pl-sale { display: grid; grid-template-columns: 1fr 1fr 1fr; border: 1px solid #3d3d3d; border-top: 0; text-align: center; align-items: stretch; }
.pl-sale > div { padding: 3px; display: grid; place-items: center; }
.pl-sale .lab { background: var(--slate); color: #fff; font-size: 12px; font-weight: 700; }
.pl-sale .disc { background: var(--stone); color: var(--red); font-size: 18px; font-weight: 700; }
.pl-sale .amt { background: var(--slate); color: #fff; font-size: 18px; font-weight: 700; }

.pl-split { display: grid; grid-template-columns: 1fr 1fr; border: 1px solid #3d3d3d; border-top: 0; background: var(--stone); text-align: center; }
.pl-split > div { padding: 4px 4px 5px; }
.pl-split > div + div { border-left: 1px solid #3d3d3d; }
.pl-split .ttl { font-size: 16px; font-weight: 700; }
.pl-split .sub { font-size: 15px; margin: 2px 0 4px; }
.pl-split .amt { font-size: 17px; font-weight: 700; }
.pl-total { background: var(--slate); color: #fff; text-align: center; font-size: 21px; font-weight: 700; padding: 2px; border: 1px solid #3d3d3d; border-top: 0; }
.pl-box.cash { margin-top: 8px; }
.pl-box.cash .sub { color: var(--red); font-size: 18px; font-weight: 700; }

.pl-note { font-size: 8.4px; line-height: 1.35; font-weight: 700; text-align: center; margin: 8px 8px 6px; }
.pl-photo { flex: 1 1 0; min-height: 0; display: flex; align-items: center; justify-content: center; overflow: hidden; }
.pl-photo img { display: block; width: 100%; height: auto; }

.pl-contact { width: 100%; border-collapse: collapse; margin-top: 8px; font-size: 10.5px; }
.pl-contact th { width: 38%; text-align: center; border: 1px solid #3d3d3d; padding: 4px; font-weight: 700; }
.pl-contact td { border: 1px solid #3d3d3d; padding: 4px 10px; font-weight: 600; }

.pl-foot { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; margin-top: 6px; height: 68px; }
.pl-foot .qr { display: flex; align-items: center; gap: 10px; font-size: 10px; font-weight: 700; }
.pl-foot .qr.r { justify-content: flex-end; }
.pl-foot .qr img { width: 66px; height: 66px; image-rendering: pixelated; }
.pl-foot .turkaz { height: 44px; }

/* ---------- Envanter (admin) ---------- */
.inv-app { display: flex; flex-direction: column; height: calc(100vh - 56px); height: calc(100dvh - 56px); position: relative; }
.inv-bar { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; padding: 10px 16px; background: var(--panel); border-bottom: 1px solid var(--line); }
.inv-bar input[type=search] { padding: 7px 10px; border: 1px solid var(--line); border-radius: var(--r-sm); width: 210px; }
.chips { display: flex; gap: 4px; flex-wrap: wrap; }
.chip { background: #fff; border: 1px solid var(--line); border-radius: 999px; padding: 4px 10px; font-size: 12px; color: var(--mut); }
.chip b { color: var(--ink); margin-left: 3px; }
.chip.on { border-color: var(--navy); color: var(--navy); box-shadow: inset 0 0 0 1px var(--navy); }
.chip.st-opt b { color: #8F6100; } .chip.st-ok b { color: #1D7A46; } .chip.st-res b { color: #8F6100; } .chip.st-sold b { color: var(--red); }
.sp { flex: 1; }
.primary.sm, .ghost.sm, .danger.sm { padding: 6px 11px; font-size: 13px; }
.ghost { background: #fff; border: 1px solid var(--line); color: var(--ink); border-radius: var(--r-sm); padding: 8px 12px; font-weight: 600; }
.ghost:hover:not(:disabled) { border-color: var(--navy); color: var(--navy); }
.ghost:disabled { opacity: .45; cursor: default; }
.danger { background: var(--red); color: #fff; border: 0; border-radius: var(--r-sm); padding: 8px 12px; font-weight: 600; }
.danger-l { color: var(--red); }
.chk-acts { display: flex; gap: 6px; align-items: center; font-size: 13px; background: #FFF6E5; border: 1px solid #F0D9A8; border-radius: var(--r-sm); padding: 3px 8px; }

.fx { display: flex; gap: 14px; align-items: baseline; padding: 7px 16px; background: #FAF9F7; border-bottom: 1px solid var(--line); font-size: 13px; min-height: 34px; flex-wrap: wrap; }
.fx-ref { color: var(--mut); font-weight: 600; min-width: 200px; }
.fx-val code { background: #EFEDF7; color: var(--navy); padding: 1px 6px; border-radius: var(--r-sm); font-size: 12px; }
.fx-val .eq { color: var(--mut); margin: 0 6px; }
.fx-val small { color: var(--mut); }
.fx-hint { margin-left: auto; color: var(--mut); font-size: 12px; }
.errt { color: var(--red); }

.grid-wrap { flex: 1; overflow: auto; background: #fff; outline: none; }
.grid-wrap:focus-visible { box-shadow: inset 0 0 0 2px rgba(52,54,107,.25); }
.loading { padding: 40px; color: var(--mut); }
.loading.err { color: var(--red); }
.grid { border-collapse: separate; border-spacing: 0; table-layout: fixed; font-size: 12px; width: max-content; }
.grid th, .grid td { border-right: 1px solid #E7E3DF; border-bottom: 1px solid #E7E3DF; }
.grid thead th { position: sticky; top: 0; z-index: 3; background: var(--slate); color: #fff; font-weight: 600; text-align: start; padding: 6px 7px; vertical-align: bottom; cursor: pointer; border-color: #6a6a6a; }
.grid thead th:hover { background: #4a4a4a; }
.grid thead th.f { background: #46474F; }
.h-l { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; line-height: 1.25; font-size: 11px; }
.h-m { display: block; font-size: 11px; font-weight: 400; color: rgba(255,255,255,.85); margin-top: 3px; }
.fx-i { font-style: italic; font-weight: 700; color: #DADCF8; margin-right: 4px; }
.lock { font-style: normal; color: var(--stone); margin-right: 4px; font-size: 11px; vertical-align: 2px; }
.grid td { padding: 0 7px; height: 27px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; background: #fff; cursor: cell; }
.grid td.n { text-align: right; font-variant-numeric: tabular-nums; }
.grid td.f { background: #F7F6F3; color: #3F3F3F; }
.grid td.err { color: var(--red); font-weight: 600; text-align: center; }
.grid td.pending { color: var(--mut); font-style: italic; }
.grid td.sel { box-shadow: inset 0 0 0 2px var(--navy); }
.grid td.editing { padding: 0; box-shadow: inset 0 0 0 2px var(--navy); }
.grid td .ed { width: 100%; height: 100%; border: 0; padding: 0 6px; font: inherit; background: #fff; outline: none; }
.grid td.st-opt { color: #8F6100; font-weight: 700; } .grid td.st-ok { color: #1D7A46; font-weight: 600; } .grid td.st-res { color: #8F6100; font-weight: 600; } .grid td.st-sold { color: var(--red); font-weight: 600; }
.grid .chk { position: sticky; left: 0; z-index: 2; width: 34px; text-align: center; padding: 0; background: #FAF9F7; }
.grid thead .chk { z-index: 4; background: var(--slate); }
.grid .stick { position: sticky; left: 34px; z-index: 2; font-weight: 700; box-shadow: 1px 0 0 #D6D1CC; }
.grid thead .stick { z-index: 4; }
.grid tbody tr:hover td { background-color: #FBFAF8; }
.grid tbody tr:hover td.f { background-color: #F2F1EE; }
.grid tr.chkd td { background: #FFF8E8 !important; }
.grid tr.hid td { color: #9A948E; background-image: repeating-linear-gradient(135deg, transparent 0 6px, rgba(0,0,0,.035) 6px 12px); }
.hid-chip { border-style: dashed; }
.grid .none { text-align: center; color: var(--mut); padding: 30px; }
.inv-foot { display: flex; justify-content: space-between; padding: 6px 16px; font-size: 12px; color: var(--mut); background: var(--panel); border-top: 1px solid var(--line); }
#invSave.busy { color: var(--navy); font-weight: 600; }

/* Yan panel */
.drawer { position: absolute; top: 0; right: 0; bottom: 0; width: min(420px, 100%); background: #fff; border-left: 1px solid var(--line); box-shadow: -8px 0 30px rgba(0,0,0,.12); z-index: 10; display: flex; flex-direction: column; }
.drawer header { display: flex; justify-content: space-between; align-items: center; padding: 14px 18px; border-bottom: 1px solid var(--line); }
.drawer h2 { margin: 0; font-size: 16px; }
.drawer h3 { font-size: 13px; margin: 18px 0 8px; color: var(--mut); }
.dr-body { padding: 14px 18px 30px; overflow: auto; flex: 1; }
.help { color: var(--mut); font-size: 13px; line-height: 1.45; max-width: 68ch; margin: 6px 0 10px; }
.cf label { display: block; font-size: 12px; font-weight: 600; margin-bottom: 12px; }
.cf input:not([type=radio]), .cf select, .cf textarea, .pcard input { display: block; width: 100%; margin-top: 5px; padding: 7px 9px; border: 1px solid var(--line); border-radius: var(--r-sm); font: inherit; font-weight: 400; background: #fff; }
.cf textarea.mono { font-family: ui-monospace, Menlo, Consolas, monospace; font-size: 13px; }
.keyline { font-size: 12px; color: var(--mut); margin: -4px 0 14px; }
.keyline code, .pcard code { background: #EFEDF7; color: var(--navy); padding: 1px 5px; border-radius: var(--r-sm); }
.keyline .sys { color: #A86A00; }
.seg-f { border: 0; padding: 0; margin: 0 0 14px; display: flex; flex-wrap: wrap; }
.seg-f legend { font-size: 12px; font-weight: 600; margin-bottom: 5px; }
.seg-f .sg { margin: 0; font-weight: 400; position: relative; }
.seg-f .sg input { position: absolute; opacity: 0; }
.seg-f .sg span { display: block; padding: 6px 12px; border: 1px solid var(--line); margin-left: -1px; cursor: pointer; font-size: 13px; }
.seg-f .sg:first-of-type span { border-radius: var(--r-sm) 0 0 var(--r-sm); margin-left: 0; }
.seg-f .sg:last-of-type span { border-radius: 0 var(--r-sm) var(--r-sm) 0; }
.seg-f .sg input:checked + span { background: var(--navy); color: #fff; border-color: var(--navy); }
.seg-f .sg input:disabled + span { opacity: .4; cursor: not-allowed; }
.seg-f .sg input:focus-visible + span { outline: 2px solid var(--navy); outline-offset: 1px; }
.cf .row2 { display: grid; grid-template-columns: 2fr 1fr; gap: 10px; }
.ins { display: flex; flex-wrap: wrap; gap: 6px; margin-top: -4px; }
.ins select { flex: 1 1 120px; padding: 5px 6px; border: 1px solid var(--line); border-radius: var(--r-sm); font-size: 12px; background: #fff; }
.cf-acts { display: flex; gap: 14px; align-items: center; margin-top: 6px; }
.cf-more { border-top: 1px solid var(--line); margin-top: 18px; }
.btns { display: flex; gap: 6px; flex-wrap: wrap; align-items: center; margin-bottom: 6px; }
.pcard { border: 1px solid var(--line); border-radius: var(--r-md); padding: 10px 12px; margin-bottom: 10px; }
.pc-h { display: flex; gap: 8px; align-items: center; }
.pc-h input { margin-top: 0 !important; font-weight: 600 !important; }
.pc-v, .pc-a { display: flex; gap: 10px; align-items: center; margin-top: 8px; }
.pc-v input { width: 150px !important; margin-top: 0 !important; font-size: 16px; font-weight: 700 !important; }
.ptab { width: 100%; border-collapse: collapse; font-size: 12px; }
.ptab th { text-align: start; color: var(--mut); font-weight: 600; padding: 4px 2px; }
.ptab td { padding: 2px; }
.ptab input { margin-top: 0 !important; padding: 5px 7px !important; }
.pnew { display: flex; gap: 8px; }
.vlist { list-style: none; margin: 10px 0 0; padding: 0; }
.vlist li label { display: flex; gap: 8px; align-items: center; padding: 5px 2px; border-bottom: 1px solid #F0EDEA; font-size: 13px; cursor: pointer; }
.vlist span { flex: 1; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.vlist small { color: var(--mut); }
.blist { list-style: none; margin: 0; padding: 0; }
.blist li { display: flex; gap: 10px; align-items: center; padding: 7px 0; border-bottom: 1px solid #F0EDEA; font-size: 13px; }
.blist li span { flex: 1; }
.blist small { color: var(--mut); }

/* ---------- Kullanıcı grupları ---------- */
.grp-app { display: grid; grid-template-columns: 300px 1fr; height: calc(100vh - 56px); height: calc(100dvh - 56px); }
.grp-side { background: var(--panel); border-right: 1px solid var(--line); padding: 16px; overflow: auto; display: flex; flex-direction: column; gap: 12px; }
.grp-side .def { font-size: 12px; font-weight: 600; }
.grp-side .def select, .gtest input { display: block; width: 100%; margin-top: 5px; padding: 7px 8px; border: 1px solid var(--line); border-radius: var(--r-sm); background: #fff; font-weight: 400; }
.glist { list-style: none; margin: 0; padding: 0; border: 1px solid var(--line); border-radius: var(--r-md); overflow: hidden; }
.glist li { padding: 9px 12px; border-top: 1px solid #F0EDEA; cursor: pointer; }
.glist li:first-child { border-top: 0; }
.glist li:hover { background: #FAF9F7; }
.glist li.on { background: #EFEDF7; box-shadow: inset 3px 0 0 var(--navy); }
.glist li b { display: block; font-size: 14px; }
.glist li small { color: var(--mut); }
.glist li.empty { color: var(--mut); cursor: default; }
.gtest label { font-size: 12px; font-weight: 600; }
.grp-ed { overflow: auto; padding: 20px 26px 40px; }
.empty-ed { color: var(--mut); padding: 40px 0; }
.gf-top { display: flex; gap: 16px; align-items: flex-end; }
.gname { flex: 1; font-size: 12px; font-weight: 600; }
.gname input { display: block; width: 100%; margin-top: 5px; padding: 9px 11px; border: 1px solid var(--line); border-radius: var(--r-sm); font-size: 16px; font-weight: 700; }
.gf-acts { display: flex; gap: 16px; align-items: center; }
.gcols { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 16px; }
.gcols label { font-size: 12px; font-weight: 600; }
.gcols small { color: var(--mut); font-weight: 400; margin-left: 4px; }
.gcols textarea, .gcols input { display: block; width: 100%; margin-top: 5px; padding: 8px 10px; border: 1px solid var(--line); border-radius: var(--r-sm); font: inherit; font-weight: 400; background: #fff; }
.uhint { display: block; font-size: 11px; font-weight: 400; color: var(--mut); margin: 8px 0 4px; }
.uchips { display: flex; flex-wrap: wrap; gap: 4px; }
.uchip { background: #fff; border: 1px solid var(--line); border-radius: 999px; padding: 3px 9px; font-size: 12px; font-weight: 600; }
.uchip small { color: var(--mut); font-weight: 400; }
.uchip.on { background: #EFEDF7; border-color: var(--navy); color: var(--navy); }
.grp-ed h3 { font-size: 14px; margin: 24px 0 2px; }
.fcard { border: 1px solid var(--line); border-radius: var(--r-md); padding: 10px 12px; margin-bottom: 10px; background: #fff; }
.fh { display: flex; justify-content: space-between; align-items: center; margin-bottom: 8px; }
.fh-a { display: flex; gap: 12px; }
.opts { display: flex; flex-wrap: wrap; gap: 6px; }
.opts label { display: inline-flex; gap: 6px; align-items: center; border: 1px solid var(--line); border-radius: var(--r-sm); padding: 4px 9px; font-size: 13px; cursor: pointer; }
.opts label:has(input:checked) { border-color: var(--navy); background: #EFEDF7; }
.opts input { accent-color: var(--navy); }
.opts small { color: var(--mut); }
.range { display: flex; gap: 10px; align-items: flex-end; }
.range label { font-size: 12px; color: var(--mut); }
.range input { display: block; width: 130px; margin-top: 3px; padding: 6px 8px; border: 1px solid var(--line); border-radius: var(--r-sm); }
.addf { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; font-size: 13px; color: var(--mut); margin-top: 4px; }
.addf select { padding: 6px 8px; border: 1px solid var(--line); border-radius: var(--r-sm); background: #fff; }
.gprev { margin-top: 20px; border-top: 1px solid var(--line); }
.gprev p { margin: 6px 0; }
.bbchips { display: flex; flex-wrap: wrap; gap: 4px; margin-top: 8px; }
.bbchips span { font-size: 12px; padding: 2px 7px; border-radius: var(--r-sm); background: #EEEBE7; color: var(--mut); font-variant-numeric: tabular-nums; }
.bbchips span.ok { background: #E3F1E8; color: #1D7A46; font-weight: 600; }
@media (max-width: 860px) { .grp-app { grid-template-columns: 1fr; height: auto; } .gcols { grid-template-columns: 1fr; } }

/* ---------- Daireler listesi (kullanıcı) ---------- */
.list-app { display: flex; flex-direction: column; height: calc(100vh - 56px); height: calc(100dvh - 56px); }
.prev-banner { background: #FFF6E5; border-bottom: 1px solid #F0D9A8; padding: 8px 16px; font-size: 13px; }
.prev-banner .link { margin-left: 10px; }
.list-bar { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; padding: 10px 16px; background: var(--panel); border-bottom: 1px solid var(--line); }
.list-bar input[type=search] { padding: 7px 10px; border: 1px solid var(--line); border-radius: var(--r-sm); width: 230px; }
.lcount { color: var(--mut); font-size: 13px; }
.list-wrap { flex: 1; overflow: auto; background: #fff; }
.ltab { border-collapse: separate; border-spacing: 0; font-size: 13px; width: 100%; }
.ltab th { position: sticky; top: 0; z-index: 1; background: var(--slate); color: #fff; text-align: start; font-weight: 600; font-size: 12px; padding: 8px 10px; cursor: pointer; white-space: nowrap; }
.ltab th.n { text-align: right; }
.ltab td { padding: 6px 10px; border-bottom: 1px solid #EEEAE6; white-space: nowrap; }
.ltab td.n { text-align: right; font-variant-numeric: tabular-nums; }
.ltab td.bbn { font-weight: 700; }
.ltab td.act { text-align: right; padding: 3px 8px; }
.ltab td.st-opt { color: #8F6100; font-weight: 700; } .ltab td.st-ok { color: #1D7A46; font-weight: 600; } .ltab td.st-res { color: #8F6100; font-weight: 600; } .ltab td.st-sold { color: var(--red); font-weight: 600; }
.ltab tbody tr:hover td { background: #FAF9F7; }
.ltab .none { text-align: center; color: var(--mut); padding: 30px; }

/* grup ekranı ekleri */
.glist li.def-item { background: #FAF9F7; }
.glist li.def-item.on { background: #EFEDF7; }
.gname h2 { margin: 0; font-size: 18px; }
.gname .help { margin: 2px 0 0; }
.toggle { display: flex; gap: 8px; align-items: flex-start; font-size: 13px; font-weight: 600; margin: 12px 0 4px; cursor: pointer; }
.toggle input { margin-top: 3px; accent-color: var(--navy); }
.toggle small { color: var(--mut); font-weight: 400; }
.grp-ed h3 .cnt { color: var(--mut); font-weight: 400; font-size: 12px; margin-left: 6px; }
.colgrid { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 2px 14px; margin: 8px 0; border: 1px solid var(--line); border-radius: var(--r-md); padding: 8px 12px; background: #fff; max-height: 320px; overflow: auto; }
.colgrid label { display: flex; gap: 7px; align-items: flex-start; font-size: 12px; padding: 3px 0; cursor: pointer; }
.colgrid label span { overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.colgrid label.isf span::before { content: "ƒ "; color: #6B6EB8; font-style: italic; font-weight: 700; }
.colgrid input { margin-top: 2px; accent-color: var(--navy); }
.warn { color: #A86A00; font-size: 13px; }

/* Excel bağlantısı paneli */
.steps { padding-left: 18px; font-size: 13px; margin: 6px 0 10px; }
.steps li { margin-bottom: 5px; }
.drawer .code { display: block; width: 100%; font-family: ui-monospace, Menlo, Consolas, monospace; font-size: 11px; padding: 7px 9px; border: 1px solid var(--line); border-radius: var(--r-sm); background: #FAF9F7; margin-bottom: 6px; resize: vertical; }

.lims { display: grid; grid-template-columns: repeat(3, minmax(150px, 1fr)); gap: 8px 14px; margin-top: 10px; padding: 10px 12px; background: #FAF9F7; border: 1px solid var(--line); border-radius: var(--r-md); }
.lims .help { grid-column: 1 / -1; margin: 0; }
.lims label { font-size: 12px; font-weight: 600; color: var(--mut); }
.lims .pct input { display: block; width: 100%; margin-top: 4px; padding: 6px 34px 6px 8px; border: 1px solid var(--line); border-radius: var(--r-sm); font-weight: 700; color: var(--ink); }
.lims .pct i { font-size: 11px; }
@media (max-width: 860px) { .lims { grid-template-columns: 1fr 1fr; } }

.xcols { max-height: 220px; overflow: auto; border: 1px solid var(--line); border-radius: var(--r-sm); padding: 6px 8px; margin-bottom: 6px; }
.xcols label { display: flex; gap: 6px; align-items: center; font-size: 12px; padding: 2px 0; }
.fullbk { border: 1px solid var(--line); border-radius: var(--r-md); padding: 10px 12px; margin: 6px 0 14px; background: #FAF9F7; }
.fullbk a.primary { text-decoration: none; display: inline-flex; }

/* ---------- Ortak: menü rozeti, durum etiketi, diyalog ---------- */
.bdg { display: inline-block; min-width: 18px; padding: 0 5px; margin-left: 4px; border-radius: var(--r-md); background: #E8A317; color: #3D2700; font-size: 11px; font-weight: 700; line-height: 18px; text-align: center; }
.st { display: inline-block; padding: 2px 9px; border-radius: 999px; font-size: 12px; font-weight: 700; background: #EEE; }
.st-SATILIK { background: #E3F1E8; color: #1D6B3F; } .st-OPSİYON { background: #FDEFC9; color: #6B4700; }
.st-RESERVED { background: #FBE3E1; color: #8A1C12; } .st-SATILDI { background: #B42318; color: #fff; }
.dlg { border: 0; border-radius: var(--r-md); padding: 0; width: min(420px, 94vw); box-shadow: 0 20px 60px rgba(0,0,0,.25); }
.dlg::backdrop { background: rgba(35,35,35,.45); }
.dlg form { padding: 20px 22px; }
.dlg h2 { margin: 0 0 6px; font-size: 18px; }
.dlg label { display: block; font-size: 12px; font-weight: 600; margin: 10px 0 0; }
.dlg input { display: block; width: 100%; margin-top: 5px; padding: 8px 10px; border: 1px solid var(--line); border-radius: var(--r-sm); font: inherit; }
.dlg-a { display: flex; justify-content: flex-end; gap: 16px; align-items: center; margin-top: 16px; }
.mono { font-family: ui-monospace, Menlo, Consolas, monospace; font-size: 12px; }
.tbl-x { overflow: auto; background: var(--panel); border: 1px solid var(--line); border-radius: var(--r-md); }
/* Yatay kaydırma gerekirse: ilk sütun yapışık, uçta solma ipucu, ince ama görünür kaydırma çubuğu (ortak.js sınıfları ekler) */
@media (min-width: 641px) {
  .tbl-x.kaydirilir { scrollbar-width: thin; scrollbar-color: var(--line) transparent; }
  .tbl-x.kaydirilir::-webkit-scrollbar { height: 10px; }
  .tbl-x.kaydirilir::-webkit-scrollbar-thumb { background: var(--line); border-radius: 999px; }
  .tbl-x.kaydirilir > table :is(th, td):first-child { position: sticky; inset-inline-start: 0; z-index: 2; }
  .tbl-x.kaydirilir > table td:first-child { background: var(--satir-bg, var(--panel)); }
  .tbl-x.kaydirilir > table th:first-child { z-index: 3; }
  .tbl-x.kaydir-bas > table :is(th, td):first-child { box-shadow: 6px 0 8px -6px color-mix(in srgb, var(--navy) 35%, transparent); }
  /* eylem sütunu (son sütun td.acts) kaydırmada da görünür kalır: sağa yapışık */
  .tbl-x.kaydirilir > table:has(td.acts:last-child) :is(th, td):last-child { position: sticky; inset-inline-end: 0; z-index: 2; }
  .tbl-x.kaydirilir > table:has(td.acts:last-child) td:last-child { background: var(--satir-bg, var(--panel)); }
  .tbl-x.kaydirilir > table:has(td.acts:last-child) th:last-child { z-index: 3; }
  .tbl-x.kaydir-son > table:has(td.acts:last-child) :is(th, td):last-child { box-shadow: -6px 0 8px -6px color-mix(in srgb, var(--navy) 35%, transparent); }
  /* eylem sütunu olmayan tablolarda sağ uçta solma ipucu */
  .tbl-x.kaydir-son:not(:has(td.acts:last-child)) { -webkit-mask-image: linear-gradient(to right, #000 calc(100% - 28px), transparent); mask-image: linear-gradient(to right, #000 calc(100% - 28px), transparent); }
  [dir="rtl"] .tbl-x.kaydir-son:not(:has(td.acts:last-child)) { -webkit-mask-image: linear-gradient(to left, #000 calc(100% - 28px), transparent); mask-image: linear-gradient(to left, #000 calc(100% - 28px), transparent); }
}
.loading { padding: 40px; color: var(--mut); }

/* Plan ekranı: müşteri ve sınırlar */
.cust input { display: block; width: 100%; padding: 8px 10px; border: 1px solid var(--line); border-radius: var(--r-sm); margin-bottom: 6px; font: inherit; }
.crmbox { position: relative; }
.crmres { position: absolute; top: 100%; left: 0; right: 0; z-index: 20; background: #fff; border: 1px solid var(--line); border-radius: var(--r-sm); box-shadow: 0 8px 24px rgba(0,0,0,.12); margin-top: -4px; }
.crmres button { display: block; width: 100%; text-align: start; background: none; border: 0; border-bottom: 1px solid #F0EDEA; padding: 7px 10px; }
.crmres button:hover { background: #F4F3FA; }
.crmres small { display: block; color: var(--mut); }
.crmhint { display: block; padding: 6px 10px; font-size: 11px; color: var(--mut); }
.crmtag { display: inline-flex; gap: 8px; align-items: center; background: #EFEDF7; color: var(--navy); border-radius: var(--r-sm); padding: 3px 8px; font-size: 12px; font-weight: 600; }
.crmsel .chk { margin-top: 6px; font-size: 12px !important; }
.limits { font-size: 12px; color: var(--mut); margin: -8px 0 0; line-height: 1.4; }
.dl.warnbtn { background: #B07A00; }
.unit-info .st { font-size: 11px; }
.unit-info .ghost { margin-top: 8px; }
.pdf-host { position: absolute; left: -20000px; top: 0; width: 794px; }

/* ---------- Bina şeması ---------- */
.sema-app { display: grid; grid-template-columns: 1fr 300px; min-height: calc(100vh - 56px); min-height: calc(100dvh - 56px); }
.sema-main { padding: 14px 18px 30px; overflow: auto; }
.sema-bar { display: flex; flex-wrap: wrap; gap: 10px 16px; align-items: center; justify-content: space-between; margin-bottom: 8px; }
.sema-leg { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; }
.lg { display: inline-flex; gap: 7px; align-items: center; background: #fff; border: 1px solid var(--line); border-radius: 999px; padding: 4px 11px 4px 6px; font-size: 12px; }
.lg b { color: var(--mut); font-weight: 600; }
.lg.on { border-color: var(--navy); box-shadow: inset 0 0 0 1px var(--navy); }
.sw { width: 18px; height: 14px; border-radius: var(--r-sm); display: inline-block; }
.sw-tk { background: #1F5FA6; } .sw-km { background: #8A5A2B; } .sw-ops { background: #E8A317; }
.sw-res { background: #FBE3E1; border: 1.5px dashed #B42318; } .sw-sold { background: #B42318; } .sw-hid { background: #E7E4E0; }
.face { background: var(--panel); border: 1px solid var(--line); border-radius: var(--r-md); padding: 12px 14px 8px; margin-bottom: 14px; }
.face h3 { margin: 0 0 8px; font-size: 14px; color: var(--slate); letter-spacing: .02em; }
.face-draw { overflow-x: auto; }
.face-draw svg { min-width: 820px; width: 100%; display: block; }
.face-draw .su { cursor: pointer; transition: opacity .15s; }
.face-draw .su:hover rect { filter: brightness(1.08); }
.face-draw .su.off { cursor: default; }
.face-draw.focus .su { opacity: .18; }
.face-draw.focus-tk .su[data-k=tk], .face-draw.focus-km .su[data-k=km], .face-draw.focus-ops .su[data-k=ops],
.face-draw.focus-res .su[data-k=res], .face-draw.focus-sold .su[data-k=sold], .face-draw.focus-hid .su[data-k=hid] { opacity: 1; }
.sema-side { background: var(--panel); border-left: 1px solid var(--line); padding: 16px; position: sticky; top: var(--top-h, 56px); align-self: start; min-height: calc(100vh - 56px); min-height: calc(100dvh - 56px); }
.side-empty { color: var(--mut); padding: 30px 4px; }
.side-h { display: flex; justify-content: space-between; align-items: baseline; margin-bottom: 8px; }
.side-h b { font-size: 20px; color: var(--navy); }
.sema-side dl { display: grid; grid-template-columns: 96px 1fr; gap: 6px 10px; margin: 14px 0; font-size: 13px; }
.sema-side dt { color: var(--mut); } .sema-side dd { margin: 0; font-weight: 600; }
.optbox { display: flex; flex-direction: column; gap: 2px; background: #FDEFC9; border-radius: var(--r-md); padding: 8px 10px; font-size: 13px; color: #4A3200; margin-bottom: 12px; }
.side-a { display: flex; flex-direction: column; gap: 8px; }

/* ---------- Teklifler / Geçmiş ---------- */
.tk-app, .gc-app { padding: 16px 18px 30px; }
.tk-bar { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; margin-bottom: 10px; }
.tk-bar input[type=search] { padding: 8px 10px; border: 1px solid var(--line); border-radius: var(--r-sm); width: 300px; max-width: 100%; }
.chip.hot { border-color: #E8A317; } .chip.hot b { color: #8A5A00; }
table.tk { width: 100%; border-collapse: collapse; font-size: 13px; }
/* Tablo (ortak): başlıklar kısa kırılabilir (nowrap yalnız .nw / sayı hücrelerinde); hücre dikey ortalı; ikinci satır (small) kompakt */
table.tk th { position: sticky; top: 0; background: var(--slate); color: #fff; text-align: start; font-weight: 600; padding: 8px 9px; line-height: 1.25; vertical-align: bottom; }
table.tk th.nw { white-space: nowrap; }
table.tk td { padding: 7px 9px; border-top: 1px solid #EEEAE6; vertical-align: middle; }
table.tk .mono { white-space: nowrap; }
table.tk td.n { text-align: right; white-space: nowrap; font-variant-numeric: tabular-nums; }
table.tk th.n { text-align: right; font-variant-numeric: tabular-nums; }
.rp-pdf th { white-space: nowrap; }
table.tk small { color: var(--mut); font-size: 12px; line-height: 1.3; }
.cell-trunc { display: block; max-width: var(--trunc-w, 26ch); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cell-2 { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.cell-num { text-align: right; white-space: nowrap; font-variant-numeric: tabular-nums; }
table.tk tr.bekliyor { --satir-bg: #FFFBEF; }
table.tk tr.bekliyor td { background: var(--satir-bg); }
.tk .why { color: #8A5A00; font-size: 12px; margin-top: 3px; }
.tk .note { color: var(--mut); font-size: 12px; margin-top: 3px; }
.tk .crm { background: #EFEDF7; color: var(--navy); border-radius: var(--r-sm); padding: 0 4px; font-size: 11px; font-weight: 700; }
.ts { display: inline-block; border-radius: 999px; padding: 2px 8px; font-size: 11px; font-weight: 700; white-space: nowrap; }
.ts-bekliyor { background: #FDEFC9; color: #6B4700; } .ts-onaylandi { background: #E3F1E8; color: #1D6B3F; } .ts-reddedildi { background: #FBE3E1; color: #8A1C12; }
.tk .by { display: block; margin-top: 1px; }
@media (min-width: 641px) { .tk .by { max-width: 30ch; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; } .tk .by.tek { display: block; max-width: var(--tek-w, 22ch); white-space: nowrap; text-overflow: ellipsis; } }
.tk .exp { color: var(--red); }
.tk td.acts { width: 1%; max-width: none; white-space: nowrap; }   /* td'nin kendisi tablo hücresi kalır (flex DEĞİL); düğmeler satır içi, sığmazsa alt satıra iner */
.tk td.acts > * { vertical-align: middle; white-space: nowrap; margin-block: 2px; }
.tk td.acts > * + * { margin-inline-start: 6px; }
.tk td.acts .sm { padding: 4px 8px; font-size: 12.5px; }
/* ---- Sayfa başlığı bileşeni (.page-head) ve eski başlık kalıpları (.hd-baslik, .ym-baslik, .yt3-baslik) AYNI ölçülerde ---- */
.page-head, .hd-baslik, .ym-baslik, .yt3-baslik { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 6px 12px; margin: 0 0 10px; min-height: 34px; }
.hd-baslik h2, .ym-baslik h2, .yt3-baslik h3, .page-head-t { margin: 0; font-size: 16px; font-weight: 650; line-height: 1.25; }
.hd-baslik > .help, .hd-baslik > .bilgi, .ym-baslik > p, .ym-baslik > .bilgi, .page-head > .bilgi { flex: 1 1 100%; }
@media (min-width: 861px) {   /* başlık bandı kompakt: yeni bant ilk veri satırını aşağı itmesin */
  .tk-app, .th-app { padding-top: 8px; }
  #stBody:not(.sf):not(.fl) { padding-top: 8px; }
  .page-head { min-height: 30px; margin-bottom: 6px; }
}
.page-head-m { min-width: 0; flex: 1 1 280px; display: flex; align-items: baseline; flex-wrap: wrap; gap: 2px 10px; }
.page-head-o { margin: 0; min-width: 0; flex: 1 1 200px; font-size: 13px; line-height: 1.4; color: var(--mut); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.tk-bar:not(:has(> :not([hidden]))) { display: none; }
.page-head-a { display: flex; align-items: center; gap: 8px; margin-inline-start: auto; }
/* ---- Açılır bilgi (.bilgi): tek satır özet + ⓘ düğmesi; ayrıntı yalnız isteyene ---- */
.bilgi { display: flex; align-items: center; flex-wrap: wrap; gap: 6px 10px; margin: 2px 0 10px; font-size: 13px; line-height: 1.4; color: var(--mut); }
.bilgi-oz { flex: 1 1 220px; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.bilgi-d { flex: none; min-height: 28px; border: 1px solid var(--line); background: var(--panel); color: var(--navy); border-radius: 999px; padding: 2px 11px; font-size: 12.5px; font-weight: 600; cursor: pointer; }
.bilgi-d:hover { border-color: var(--navy); }
.bilgi-d:focus-visible { outline: 2px solid var(--navy); outline-offset: 2px; }
.bilgi-g { flex: 1 0 100%; max-width: 68ch; margin: 0 0 2px; padding: 10px 12px; border: 1px solid var(--line); border-radius: var(--r-md); background: var(--panel); color: var(--ink); font-size: 13px; line-height: 1.5; }
.bilgi-g[hidden] { display: none; }
.bilgi-g p { margin: 0 0 6px; } .bilgi-g p:last-child { margin-bottom: 0; }
.acts-more-w { display: inline-block; position: relative; }
.acts-more { min-width: 34px; font-weight: 700; letter-spacing: .06em; }
.acts-menu { z-index: 60; min-width: 190px; display: flex; flex-direction: column; background: var(--panel); border: 1px solid var(--line); border-radius: var(--r-md); box-shadow: 0 8px 24px color-mix(in srgb, var(--navy) 22%, transparent); padding: 4px; }
.acts-menu[hidden] { display: none; }
.acts-menu button { display: block; width: 100%; text-align: start; background: none; border: 0; border-radius: var(--r-sm); padding: 7px 10px; margin: 0; font-size: 13px; font-weight: 500; color: var(--ink); text-decoration: none; white-space: nowrap; }
.acts-menu button.danger-l { color: var(--red); }
.acts-menu button:hover:not(:disabled), .acts-menu button:focus-visible { background: color-mix(in srgb, var(--navy) 8%, transparent); outline: none; }
.tk td.n small, .tk td.n .ap-ikinci { display: block; }
.tk .acts:not(td) { white-space: nowrap; display: flex; gap: 6px; align-items: center; }
.tk .none { text-align: center; color: var(--mut); padding: 30px; }
.gc td.det { font-size: 12px; max-width: 520px; }

/* ---------- Özet ---------- */
.oz-app { padding: 16px 18px 30px; }
.tcmb { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; justify-content: space-between; background: var(--panel); border: 1px solid var(--line); border-radius: var(--r-md); padding: 9px 14px; margin-bottom: 12px; font-size: 13px; }
.tcmb.diff { border-color: #E8A317; background: #FFFBEF; } .tcmb.err { color: var(--mut); }
.tcmb .okk { color: #1D6B3F; font-weight: 600; }
.pendbar { display: block; width: 100%; text-align: start; background: #FFFBEF; border: 1px solid #E8A317; color: #6B4700; border-radius: var(--r-md); padding: 10px 14px; font-weight: 700; margin-bottom: 12px; }
.oz-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 12px; }
.box { background: var(--panel); border: 1px solid var(--line); border-radius: var(--r-md); padding: 12px 14px; overflow: auto; }
.box h3 { margin: 0 0 10px; font-size: 14px; } .box h3 small { color: var(--mut); font-weight: 400; margin-left: 6px; }
table.mx { width: 100%; border-collapse: collapse; font-size: 13px; }
.mx th { text-align: start; color: var(--mut); font-weight: 600; border-bottom: 1px solid var(--line); padding: 5px 6px; white-space: nowrap; }
.mx td { padding: 5px 6px; border-bottom: 1px solid #F0EDEA; }
.mx .n { text-align: right; font-variant-numeric: tabular-nums; }
.bars .bar { display: grid; grid-template-columns: 70px 1fr 90px; gap: 8px; align-items: center; font-size: 12px; margin: 4px 0; }
.bars .track { height: 12px; background: #EAF3EE; border-radius: var(--r-sm); overflow: hidden; display: flex; }
.bars .b-s { background: #B42318; } .bars .b-r { background: #F2B5B0; }
.bars small { color: var(--mut); text-align: right; }
.lg-s, .lg-r { display: inline-block; width: 10px; height: 10px; border-radius: var(--r-sm); background: #B42318; margin: 0 3px 0 8px; vertical-align: -1px; } .lg-r { background: #F2B5B0; }
.cols { display: flex; align-items: flex-end; gap: 8px; height: 160px; padding-top: 18px; }
.cols .col { flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: flex-end; height: 100%; gap: 3px; font-size: 11px; }
.cols .col i { width: 70%; background: var(--navy); border-radius: var(--r-sm) var(--r-sm) 0 0; min-height: 3px; }
.cols .col span { color: var(--mut); }

/* ---------- Mobil ---------- */
@media (max-width: 1100px) { .kpis { grid-template-columns: repeat(3, 1fr); } .oz-grid { grid-template-columns: 1fr; } }
@media (max-width: 860px) {
  .top { height: auto; flex-wrap: wrap; padding: 8px 12px; gap: 6px 12px; }
  
  
  .sema-app { grid-template-columns: 1fr; }
  .sema-side { position: static; min-height: 0; border-left: 0; border-top: 1px solid var(--line); }
  .sema-main { padding: 10px; }
  .face-draw svg { min-width: 680px; }
  .plan-view { min-height: 0; }
  .stage { padding: 12px 6px 30px; }
  .kpis { grid-template-columns: 1fr 1fr; }
  .kpi b { font-size: 20px; }
  .tk-app, .gc-app, .oz-app { padding: 10px; }
  .inv-bar { padding: 8px 10px; }
  .inv-bar input[type=search] { width: 100%; }
  .drawer { width: 100%; }
}
@media (max-width: 480px) { .row3 { grid-template-columns: 1fr 1fr 1fr; gap: 6px; } .ctl { padding: 16px 14px; } .tk-bar input[type=search] { width: 100%; } }

.oz-app .usd { display: inline-block; margin-left: 6px; color: var(--mut); font-weight: 400; font-size: .92em; }
.salesbox { margin-bottom: 12px; }

.pg-sema { background: #fff; padding: 26px 30px 18px; display: flex; flex-direction: column; font-family: var(--font); color: #222; }
.pg-sema header { display: flex; align-items: center; gap: 16px; border-bottom: 2px solid var(--slate); padding-bottom: 10px; }
.pg-sema header img { height: 46px; }
.pg-sema header b { display: block; font-size: 20px; color: var(--slate); }
.pg-sema header span { font-size: 12px; color: #77716B; }
.pgs-leg { display: flex; flex-wrap: wrap; gap: 14px; margin: 12px 0 8px; font-size: 12px; }
.pgs-leg span { display: inline-flex; align-items: center; gap: 6px; }
.pgs-faces { flex: 1; display: grid; grid-template-columns: 1fr 1fr; gap: 20px; align-items: start; }
.pgs-faces h3 { margin: 0 0 6px; font-size: 13px; color: var(--slate); }
.pg-sema footer { font-size: 11px; color: #77716B; border-top: 1px solid #ddd; padding-top: 6px; }

/* ================= SATIŞ ekranı ================= */
.st-app { min-height: calc(100vh - 56px); min-height: calc(100dvh - 56px); display: flex; flex-direction: column; }
.subnav { display: flex; gap: 4px; padding: 10px 18px 0; background: var(--panel); border-bottom: 1px solid var(--line); }
.subnav button { background: none; border: 0; border-bottom: 3px solid transparent; padding: 8px 14px 10px; font-weight: 600; color: var(--mut); }
.subnav button.on { color: var(--navy); border-bottom-color: var(--navy); }
#stBody { flex: 1; }
#stBody.sf { display: grid; grid-template-columns: 320px 1fr; }
.sf-ctl { gap: 14px; }
.seg2 { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-bottom: 10px; }
.segb { display: flex; border: 1px solid var(--line); border-radius: var(--r-sm); overflow: hidden; }
.segb button { flex: 1; background: #fff; border: 0; padding: 8px 6px; font-weight: 600; color: var(--mut); }
.segb button + button { border-left: 1px solid var(--line); }
.segb button.on { background: var(--navy); color: #fff; }
.sf-ctl .row2 { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.sf-ctl .cust input, .sf-ctl .cust select, .sf-ctl .cust textarea { display: block; width: 100%; padding: 7px 9px; border: 1px solid var(--line); border-radius: var(--r-sm); margin-bottom: 6px; font: inherit; background: #fff; }
.sf-ctl label.alisf { display: block; margin: 8px 0 10px; }
.sf-ctl label.alisf .pct { margin-top: 4px; }
.sf-ctl label.alisf .pct input { padding-right: 52px !important; }
.sf-ctl label.alisf .pct i { font-size: 12px; font-weight: 600; }
.sf-ctl .alis-ozet { margin: 6px 0 0; font-size: 12px; color: var(--navy); font-weight: 600; }
.sf-ctl label.sm { display: block; font-size: 11px; font-weight: 600; color: var(--mut); }
.sf-ctl label.sm input { margin-top: 3px; }
.page.land { width: 1122px; height: 794px; }
#stBody:not(.sf):not(.fl) { padding: 16px 18px 30px; }
.sl-k { grid-template-columns: repeat(auto-fit, minmax(min(100%, 148px), 1fr)); }

/* ---- Basılı sayfalar ortak ---- */
.pg { background: #fff; color: #000; font-family: Calibri, Carlito, "Segoe UI", Arial, sans-serif; position: relative; overflow: hidden; }

/* ---- Excel "M. Satış Onay Formu" (A4 yatay 1122×794) ---- */
.pg.xf { width: 1122px; height: 794px; padding: 26px 30px; }
.xf table { width: 100%; border-collapse: collapse; table-layout: fixed; }
.xf td { border: 1px solid #000; text-align: center; vertical-align: middle; padding: 3px 4px; }
.xf-head td { height: 26px; }
.xf-head .logo { width: 17%; } .xf-head .logo img { height: 46px; }
.xf-head .ttl b { display: block; font-size: 16px; line-height: 1.35; }
.xf-head .k { width: 13%; font-size: 11px; text-align: left; } .xf-head .v { width: 11%; font-size: 11px; }
.xf-t { margin-top: 10px; }
.xf-t .hd td { font-weight: 700; font-size: 11px; height: 40px; line-height: 1.15; }
.xf-t .hd small { font-weight: 700; font-size: 11px; }
.xf-t .vl td { font-weight: 700; font-size: 14px; height: 30px; }
.xf .y { background: #FFFF00; }
.xf .r { color: #FF0000; }
.xf .g { background: #C6EFCE; }
.xf-band { margin-top: 12px; border: 1px solid #000; border-bottom: 0; font-weight: 700; font-size: 12px; text-align: left; padding: 3px 6px; }
.xf-band.b1 { background: #DDEBF7; } .xf-band.b2 { background: #FCE4D6; }
.xf-band + .xf-t { margin-top: 0; }
.xf-t.num .hd td { font-size: 11px; height: 54px; }
.xf-t.num td { font-size: 12px; font-weight: 700; height: 26px; }
.xf-t.num td.lb { width: 15%; font-size: 11px; text-align: left; }
.xf-t.num tr.on td { background: #F8CBAD; }
.xf-t.num tr.on td.lb { background: #F4B084; }
.xf-t .nt { width: 15%; font-weight: 700; font-size: 11px; text-align: left; height: 34px; }
.xf-t .nv { text-align: left; font-size: 11px; }
.xf-t.onay td { font-size: 11px; height: 22px; }
.xf-t.onay .hd td { height: 22px; font-size: 12px; }
.xf-t.onay .sig td { height: 54px; }
.xf-st { position: absolute; left: 30px; bottom: 10px; font-size: 11px; color: #555; }

/* ---- Excel "SATIŞ KART" (A4 dikey 794×1122) ---- */
.pg.xk { width: 794px; height: 1122px; padding: 70px 110px; }
.xk-logo { border: 1px solid #000; border-bottom: 0; text-align: center; padding: 22px 0 18px; }
.xk-logo img { height: 92px; }
.xk-t { width: 100%; border-collapse: collapse; table-layout: fixed; font-family: Arial, sans-serif; }
.xk-t td { border: 1px solid #000; padding: 3px 8px; font-size: 14px; text-align: center; height: 27px; }
.xk-t td.k { width: 48%; background: #E7E0DB; }
.xk-t td.v { background: #fff; }
.xk-t tr.b td { font-weight: 700; }
.xk-t tr.bv td.v { font-weight: 700; }
.xk-t tr.red td.v { background: #E7E0DB; color: #FF0000; font-weight: 700; }
.xk-t tr.red td.k { color: #000; }
.xk-f { margin-top: 10px; text-align: right; font-size: 11px; color: #777; }

/* ---- Excel "ÖZET FİYAT LİSTESİ YERLİ / YABANCI" (A4 dikey) ---- */
.pg.xl { width: 794px; height: 1122px; padding: 56px 66px 40px; display: flex; flex-direction: column; }
.xl-logo { text-align: center; margin-bottom: 60px; } .xl-logo img { height: 96px; }
.xl-t { width: 100%; border-collapse: collapse; }
.xl-t td { background: #565656; color: #fff; font-weight: 700; border: 1px solid #8a8a8a; padding: 8px 10px; text-align: center; font-size: 16px; }
.xl-t td:first-child { width: 17%; }
.xl-t td:nth-child(2), .xl-t td:nth-child(3) { width: 15%; }
.xl-t .t td { font-size: 20px; padding: 16px; }
.xl-t .h td { font-size: 18px; }
.xl-t.en td { font-size: 14px; padding: 5px 8px; } .xl-t.en .t td { font-size: 16px; padding: 6px; } .xl-t.en .h td { font-size: 14px; }
.xl-n { font-style: italic; font-size: 11px; margin: 14px 0 0; line-height: 1.5; }
.xl-ph { flex: 1 1 0; min-height: 0; display: flex; align-items: center; justify-content: center; margin: 40px 0 30px; }
.xl-ph img { max-width: 100%; max-height: 100%; border: 4px solid #565656; display: block; }
.xl-w { text-align: center; font-size: 20px; font-weight: 700; color: #1F4E9E; text-decoration: underline; margin: 0; }

/* ---- Vade maliyeti sayfası ---- */
.pg.xf.vd .vd-sum { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0; margin-top: 12px; border: 1px solid #000; }
.vd-sum > div { border: 1px solid #000; padding: 6px 8px; } .vd-sum span { display: block; font-size: 11px; font-weight: 700; } .vd-sum b { font-size: 14px; }
.vd-sum .k { background: #C6EFCE; }
.vd-cols { margin-top: 10px; columns: 3; column-gap: 14px; } .vd-cols table { width: 100%; }

/* ---- Fiyat listesi düzenleme ---- */
#stBody.fl { padding: 16px 18px 30px; display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); gap: 16px; align-items: start; }
.fl-ed h3 small { display: block; font-weight: 400; color: var(--mut); margin: 4px 0 0; font-size: 12px; }
.fl-in input { width: 100%; padding: 5px 6px; border: 1px solid var(--line); border-radius: var(--r-sm); font: inherit; background: #fff; }
.fl-in input[type=checkbox] { width: auto; }
.fl-in input.n { text-align: right; }
.fl-in td { padding: 3px 4px; }
.fl-ed .btns { margin-top: 12px; }
.fl-prev { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 12px; }
.fl-pv { background: #fff; box-shadow: 0 2px 10px rgba(0,0,0,.12); overflow: hidden; position: relative; }
.fl-sc { width: 794px; transform-origin: top left; position: absolute; top: 0; left: 0; }
@media (max-width: 1500px) { #stBody.fl { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 860px) { #stBody.sf { grid-template-columns: 1fr; } .fl-prev { grid-template-columns: 1fr; } }

.onyl .onrow { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; margin-bottom: 6px; }
.onyl input { width: 100%; padding: 6px 8px; border: 1px solid var(--line); border-radius: var(--r-sm); font: inherit; font-size: 12px; background: #FFFDE7; }
.onyl input[data-oa] { font-weight: 700; }
.onact { display: flex; justify-content: space-between; font-size: 12px; }
/* E-imza entegrasyonu (satış formu, satış / teklif listeleri, onaylar) */
.sf-imza-sec { display: flex; align-items: center; gap: 8px; margin-block: 12px 2px; font-size: 13px; cursor: pointer; }
.sf-imza-sec input { inline-size: 18px; block-size: 18px; flex: none; margin: 0; }
.sf-imza-not { margin-block: 0 8px; }
.sl-imza, .tk-imza, .on-imza { display: block; margin-block-start: 4px; }
.sl-imza-b, .tk-imza-b { padding: 0; min-block-size: 0; text-decoration: none; }
.sfstage { flex-direction: column; align-items: center; gap: 18px; }
.vsc { position: relative; flex: none; }
.vsc .page { position: absolute; top: 0; left: 0; transform-origin: top left; width: 1122px; height: 794px; background: #fff; box-shadow: 0 2px 14px rgba(0,0,0,.12); }
/* Excel "Vade Maliyeti" sayfası (A4 yatay) */
.pg.vx { width: 1122px; height: 794px; padding: 18px 26px 12px; background: #fff; color: #000; font-family: Calibri, Carlito, "Segoe UI", Arial, sans-serif; font-size: 11px; display: flex; flex-direction: column; gap: 7px; overflow: hidden; }
.vx table { border-collapse: collapse; }
.vx td { border: 1px solid #000; padding: 0 4px; height: 12.5px; line-height: 12px; white-space: nowrap; }
.vx .r { text-align: right; } .vx .red { color: #C00000; }
.vx-top { display: flex; gap: 26px; align-items: flex-start; }
.vx-k.inp td:first-child { width: 120px; } .vx-k.inp td:last-child { width: 80px; background: #D9D9D9; }
.vx-k.inp tr:first-child td:first-child { color: #4472C4; }
.vx-box .bh { border: 1px solid #000; border-bottom: 0; text-align: center; font-weight: 700; padding: 2px; }
.vx-box.y .bh, .vx-box.y td { background: #FFFF00; }
.vx-box.g .bh, .vx-box.g td { background: #D9D9D9; }
.vx-box td:first-child { width: 150px; } .vx-box td:last-child { width: 90px; text-align: right; }
.vx-ttl { margin-left: auto; text-align: right; display: flex; flex-direction: column; align-items: flex-end; gap: 4px; }
.vx-ttl img { height: 44px; } .vx-ttl b { font-size: 14px; } .vx-ttl span { font-size: 11px; color: #555; }
.vx-mid { flex: 1 1 0; display: flex; gap: 14px; align-items: flex-start; min-height: 0; overflow: hidden; }
.vx-t .hd td { background: #D9D9D9; font-weight: 700; text-align: center; white-space: normal; height: 22px; line-height: 10px; vertical-align: middle; }
.vx-t td:nth-child(1) { width: 44px; } .vx-t td:nth-child(2) { width: 82px; } .vx-t td:nth-child(3) { width: 38px; }
.vx-t td:nth-child(4), .vx-t td:nth-child(5), .vx-t td:nth-child(6) { width: 112px; }
.vx-t .tt td { border-top: 2px solid #000; }
.vx-k.info td { width: 110px; text-align: center; font-size: 11px; }
.vx-k.info td.h { background: #D9D9D9; font-weight: 700; }
.vx-on { width: 100%; }
.vx-on td { text-align: center; }
.vx-on .sig td { height: 26px; }
.vx-on { flex: none; }

/* ======== Yeni görünüm: satış onay formu ve vade maliyeti (içerik aynı) ======== */
.pg.xf, .pg.vx, .pg.op { font-family: "Segoe UI", Calibri, Carlito, Arial, sans-serif; color: #1F2128; }
.pg.xf { padding: 30px 36px; }
.xf td { border: 1px solid #D5D0CA; }
.xf-head td { border-color: #D5D0CA; }
.xf-head .logo { border-right: 0; } .xf-head .logo img { height: 50px; }
.xf-head .ttl b:first-child { font-size: 13px; letter-spacing: .14em; color: #6B6660; font-weight: 600; }
.xf-head .ttl b:last-child { font-size: 20px; letter-spacing: .06em; color: var(--navy); }
.xf-head .k { background: #F4F2EF; color: #55504A; } .xf-head .v { font-weight: 600; }
.xf-t .hd td { background: #3F4250; color: #fff; border-color: #3F4250; font-weight: 600; letter-spacing: .01em; }
.xf-t .hd small { color: #D9D7E8; font-weight: 400; }
.xf-t .vl td { font-size: 14px; }
.xf .y { background: #FFF5D1; color: var(--navy); box-shadow: inset 0 -2px 0 #E8A317; }
.xf .r { color: #B42318; }
.xf .g { background: #E3F1E8; color: #1D6B3F; }
.xf-band { border: 0; border-radius: var(--r-sm) var(--r-sm) 0 0; color: #fff; font-size: 12px; letter-spacing: .06em; padding: 5px 10px; margin-top: 14px; }
.xf-band.b1 { background: var(--navy); } .xf-band.b2 { background: #6B5A4A; }
.xf-t.num td { font-weight: 600; }
.xf-t.num .hd td { background: #F4F2EF; color: #3F4250; border-color: #D5D0CA; font-weight: 600; font-size: 11px; line-height: 1.2; padding: 3px 5px; }
.xf td { overflow-wrap: anywhere; }
.xf-t .hd small { display: block; font-size: 11px; line-height: 1.15; }
.xf-t.num tr.on td { background: #FDEBDD; color: #1F2128; font-weight: 700; }
.xf-t.num tr.on td.lb { background: #F3C9A6; }
.xf-t .nt { background: #F4F2EF; }
.xf-t.onay .hd td { background: var(--navy); border-color: var(--navy); letter-spacing: .12em; }
.xf-t.onay td b { font-size: 12px; color: #1F2128; }
.xf-t.onay .sig td { height: 62px; }
.xf-st { color: #8A847D; }
/* vade maliyeti */
.vx td { border-color: #D5D0CA; }
.vx-k.inp td:last-child { background: #FFF5D1; font-weight: 600; box-shadow: inset 0 -1px 0 #E8A317; }
.vx-k.inp tr:first-child td:first-child { color: var(--navy); font-weight: 600; }
.vx .red { color: #B42318; font-weight: 600; }
.vx-box .bh { border: 0; border-radius: var(--r-sm) var(--r-sm) 0 0; color: #fff; letter-spacing: .05em; padding: 3px; }
.vx-box.y .bh { background: #C98B12; } .vx-box.y td { background: #FFF8E3; }
.vx-box.g .bh { background: #3F4250; } .vx-box.g td { background: #F4F2EF; }
.vx-ttl b { color: var(--navy); font-size: 16px; letter-spacing: .04em; }
.vx-t .hd td { background: #3F4250; color: #fff; border-color: #3F4250; font-weight: 600; }
.vx-t .tt td { border-top: 2px solid var(--navy); background: #EFEDF7; }
.vx-t tr:nth-child(even):not(.hd):not(.tt) td { background: #FAF9F7; }
.vx-k.info td.h { background: #3F4250; color: #fff; border-color: #3F4250; }
.vx-on .hd td { background: var(--navy) !important; color: #fff; border-color: var(--navy); letter-spacing: .12em; font-weight: 600; }
.vx-on td b { color: #1F2128; }

/* ======== Müşteri ödeme planı (A4 dikey) ======== */
.pg.op { width: 794px; height: 1122px; padding: 44px 54px 36px; display: flex; flex-direction: column; gap: 16px; font-size: 12px; }
.op-h { display: flex; align-items: center; justify-content: space-between; border-bottom: 2px solid var(--navy); padding-bottom: 12px; }
.op-h img { height: 56px; }
.op-h h1 { margin: 0; font-size: 24px; letter-spacing: .14em; color: var(--navy); text-align: right; }
.op-h span { display: block; text-align: right; color: #77716B; font-size: 11px; }
.op-info { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.op-info > div { background: #F6F4F1; border-radius: var(--r-md); padding: 9px 12px; }
.op-info span { display: block; font-size: 11px; color: #77716B; text-transform: uppercase; letter-spacing: .06em; }
.op-info b { display: block; font-size: 14px; margin-top: 2px; }
.op-info small { display: block; color: #55504A; margin-top: 2px; }
.op-t { width: 100%; border-collapse: collapse; }
.op-t th { background: var(--navy); color: #fff; font-weight: 600; text-align: start; padding: 6px 10px; font-size: 11px; }
.op-t td { padding: 4px 10px; border-bottom: 1px solid #E7E3DF; font-variant-numeric: tabular-nums; }
.op-t .r { text-align: right; }
.op-t tr.pes td { background: #EFEDF7; font-weight: 700; }
.op-t tr.bal td { background: #FFF5D1; font-weight: 600; }
.op-t tfoot td { border-top: 2px solid var(--navy); border-bottom: 0; font-weight: 700; font-size: 13px; padding-top: 7px; }
.op-n { font-size: 11px; color: #55504A; line-height: 1.5; margin: 4px 0 0; }
.op-sig { margin-top: auto; display: grid; grid-template-columns: 1fr 1fr; gap: 30px; }
.op-sig div { border-top: 1.5px solid #1F2128; padding-top: 8px; display: flex; flex-direction: column; gap: 3px; min-height: 90px; }
.op-sig b { letter-spacing: .1em; } .op-sig i { font-style: normal; color: #77716B; font-size: 11px; }
/* panel: balon girişleri, dikey önizleme, belgeler penceresi */
.balon { margin-top: 8px; font-size: 12px; }
.balon small { color: var(--mut); }
.brow { display: grid; grid-template-columns: 70px 1fr auto; gap: 6px; align-items: end; margin: 4px 0; }
.brow label { font-size: 11px; color: var(--mut); }
.brow input { display: block; width: 100%; padding: 5px 7px; border: 1px solid var(--line); border-radius: var(--r-sm); background: #FFF5D1; }
.vsc.port .page { width: 794px; height: 1122px; }
.dlg.docs { width: min(520px, 94vw); }
.dlg.docs ul { list-style: none; margin: 10px 0; padding: 0; }
.dlg.docs li { display: flex; justify-content: space-between; align-items: center; padding: 7px 2px; border-bottom: 1px solid #F0EDEA; }
.dlg.docs li { gap: 10px; }
.dlg.docs li label { display: flex; flex: 1 1 auto; min-width: 0; gap: 8px; align-items: center; margin: 0; font-weight: 600; }
.dlg.docs li label input[type=checkbox] { flex: none; width: 18px; height: 18px; margin: 0; }
.dlg.docs li > small, .dlg.docs li label small { white-space: nowrap; flex: none; }
.dlg.docs li small { color: var(--mut); font-weight: 400; }

/* ======== Vade maliyeti (yeni tasarım, A4 yatay) ======== */
.pg.vm { width: 1122px; height: 794px; padding: 24px 30px 18px; display: flex; flex-direction: column; gap: 12px; font-family: "Segoe UI", Calibri, Carlito, Arial, sans-serif; color: #1F2128; font-size: 11px; }
.vm-h { display: grid; grid-template-columns: auto auto 1fr; align-items: center; gap: 22px; border-bottom: 2px solid var(--navy); padding-bottom: 10px; }
.vm-h img { height: 46px; }
.vm-tt h1 { margin: 0; font-size: 20px; letter-spacing: .14em; color: var(--navy); }
.vm-tt span { color: #77716B; font-size: 11px; }
.vm-id { margin: 0; display: grid; grid-template-columns: repeat(4, auto); gap: 4px 18px; justify-content: end; }
.vm-id dt { font-size: 11px; text-transform: uppercase; letter-spacing: .08em; color: #8A847D; }
.vm-id dd { margin: 0; font-weight: 600; font-size: 11px; }
.vm-body { flex: 1 1 0; min-height: 0; display: grid; grid-template-columns: 318px 1fr; gap: 16px; }
.vm-side { display: flex; flex-direction: column; gap: 8px; }
.vm-card { background: #F6F4F1; border-radius: var(--r-md); padding: 8px 11px 6px; }
.vm-card h3 { margin: 0 0 4px; font-size: 11px; text-transform: uppercase; letter-spacing: .1em; color: var(--navy); }
.vm-card > div { display: flex; justify-content: space-between; align-items: baseline; gap: 10px; padding: 2.5px 0; border-bottom: 1px solid #E6E1DB; }
.vm-card > div:last-child { border-bottom: 0; }
.vm-card > div span { color: #55504A; }
.vm-card > div b { font-variant-numeric: tabular-nums; text-align: right; }
.vm-card > div b small { display: block; font-weight: 400; color: #8A847D; font-size: 11px; }
.vm-card .tot b { color: var(--navy); font-size: 11px; }
.vm-card.tz { background: #EFEDF7; }
.vm-key { margin-top: 6px; background: var(--navy); color: #fff; border-radius: var(--r-sm); padding: 7px 10px; display: grid !important; grid-template-columns: 1fr auto; border: 0 !important; }
.vm-key span { color: #D9D7E8 !important; font-weight: 600; } .vm-key b { font-size: 18px; color: #fff; grid-row: span 2; align-self: center; }
.vm-key small { color: #B9B7D0; font-size: 11px; }
.vm-tables { display: flex; gap: 12px; align-items: flex-start; min-width: 0; }
.vm-tables.full { flex: 1 1 0; }
.vm-t { border-collapse: collapse; flex: 1; font-size: 11px; font-variant-numeric: tabular-nums; }
.vm-t th { background: var(--navy); color: #fff; font-weight: 600; padding: 4px 5px; text-align: start; white-space: nowrap; }
.vm-t td { padding: 2.6px 5px; border-bottom: 1px solid #ECE8E3; white-space: nowrap; }
.vm-t .r { text-align: right; }
.vm-t tbody tr:nth-child(even) td { background: #FAF9F7; }
.vm-t tr.pes td { background: #EFEDF7 !important; font-weight: 700; }
.vm-t tr.bal td { background: #FFF5D1 !important; font-weight: 600; }
.vm-t tfoot td { border-top: 2px solid var(--navy); border-bottom: 0; font-weight: 700; padding-top: 4px; }
.vm-sig { display: grid; grid-template-columns: repeat(3, 1fr); gap: 26px; padding-top: 4px; }
.vm-sig div { border-top: 1px solid #C9C4BE; padding-top: 5px; display: flex; flex-direction: column; min-height: 58px; }
.vm-sig span { font-size: 11px; letter-spacing: .08em; color: #77716B; text-transform: uppercase; }
.vm-sig b { font-size: 12px; margin-top: 1px; }

.inv-app, .grp-app, .sema-app { min-height: calc(100vh - 100px); min-height: calc(100dvh - 100px); }
.inv-app { height: calc(100vh - 100px); height: calc(100dvh - 100px); }

.phn { display: grid; grid-template-columns: minmax(96px, 38%) 1fr; gap: 6px; margin-bottom: 6px; }
.phn select { padding: 7px 6px; border: 1px solid var(--line); border-radius: var(--r-sm); background: #fff; font: inherit; font-size: 13px; min-width: 0; }
.phn input { width: 100%; padding: 8px 10px; border: 1px solid var(--line); border-radius: var(--r-sm); font: inherit; margin: 0 !important; }
.phn.bad input { border-color: var(--red); box-shadow: 0 0 0 2px rgba(192,0,0,.12); }
.dlg .phn { margin-top: 5px; }

.foffer label { display: block; font-size: 12px; font-weight: 600; margin: -6px 0 10px; }
.foffer small { color: var(--mut); font-weight: 400; }
.foffer select { display: block; width: 100%; margin-top: 4px; padding: 7px 8px; border: 1px solid var(--navy); border-radius: var(--r-sm); background: #EFEDF7; font: inherit; font-size: 13px; }

/* ======== Onay formu: yukarıdan aşağı akan sayfa; alt bilgi her zaman en altta, imza tablosu taşmaz ======== */
.pg.xf { padding: 22px 32px 12px; display: flex; flex-direction: column; }
.xf-band { margin-top: 10px; }
.xf-t.onay { margin-top: 10px; }
.xf-t.onay .sig td { height: 44px; }
.xf-st { position: static; margin-top: auto; padding-top: 6px; font-size: 11px; }

/* ======== Satış kartı (A4 dikey) ======== */
.pg.xk2 { width: 794px; height: 1122px; padding: 46px 54px 34px; display: flex; flex-direction: column; gap: 16px; font-family: "Segoe UI", Calibri, Carlito, Arial, sans-serif; color: #1F2128; font-size: 12px; }
.k2-h { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 18px; border-bottom: 2px solid var(--navy); padding-bottom: 14px; }
.k2-h img { height: 56px; width: auto; }
.k2-h h1 { margin: 0; font-size: 24px; letter-spacing: .14em; color: var(--navy); }
.k2-h span { color: #77716B; font-size: 11px; }
.k2-st { font-style: normal; font-size: 11px; font-weight: 700; padding: 4px 10px; border-radius: 999px; background: #F1EFEC; color: #55504A; }
.k2-st.st-onaylandi { background: #E3F1E8; color: #1D6B3F; } .k2-st.st-bekliyor { background: #FDEFC9; color: #6B4700; }
.k2-st.st-reddedildi, .k2-st.st-iptal { background: #FBE3E1; color: #8A1C12; }
.k2-hero { display: grid; grid-template-columns: 1.35fr 1fr; gap: 12px; }
.k2-hero > div { border-radius: var(--r-md); padding: 14px 16px; background: #F6F4F1; display: flex; flex-direction: column; gap: 3px; }
.k2-hero span { font-size: 11px; text-transform: uppercase; letter-spacing: .08em; color: #77716B; }
.k2-hero b { font-size: 16px; }
.k2-hero small { color: #55504A; font-size: 11px; }
.k2-hero .pr { background: var(--navy); color: #fff; }
.k2-hero .pr span { color: #C9C7E2; } .k2-hero .pr b { font-size: 24px; letter-spacing: .01em; } .k2-hero .pr small { color: #D9D7E8; }
.k2-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.k2-card { border: 1px solid #E3DED8; border-radius: var(--r-md); padding: 10px 14px 6px; }
.k2-card.wide { grid-column: 1 / -1; }
.k2-card h3 { margin: 0 0 6px; font-size: 11px; text-transform: uppercase; letter-spacing: .1em; color: var(--navy); }
.k2-card > div { display: flex; justify-content: space-between; gap: 12px; padding: 5px 0; border-bottom: 1px solid #F0ECE7; }
.k2-card > div:last-child { border-bottom: 0; }
.k2-card > div span { color: #55504A; }
.k2-card > div b { text-align: right; font-variant-numeric: tabular-nums; }
.k2-card .tot b { color: var(--navy); font-size: 13px; }
.k2-net { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.k2-net > div { background: #EFEDF7; border-left: 4px solid var(--navy); border-radius: var(--r-md); padding: 12px 16px; }
.k2-net span { display: block; font-size: 11px; text-transform: uppercase; letter-spacing: .08em; color: #55504A; }
.k2-net b { display: block; font-size: 20px; color: var(--navy); margin-top: 3px; font-variant-numeric: tabular-nums; }
.k2-n { margin: 0; font-size: 11px; color: #77716B; }
.k2-sig { margin-top: auto; display: grid; grid-template-columns: 1fr 1fr; gap: 40px; }
.k2-sig div { border-top: 1.5px solid #1F2128; padding-top: 7px; min-height: 70px; display: flex; flex-direction: column; gap: 2px; }
.k2-sig span { font-size: 11px; text-transform: uppercase; letter-spacing: .08em; color: #77716B; }
.k2-sig b { font-size: 12px; }

.s3y { border-radius: var(--r-md); padding: 8px 14px; margin-bottom: 10px; font-size: 13px; border: 1px solid var(--line); background: var(--panel); }
.s3y.ok { border-color: #BFE0CB; background: #F2FAF5; color: #1D6B3F; }
.s3y.warn { border-color: #F0C2BD; background: #FDF3F2; color: #8A1C12; }

.th-app { padding: 16px 18px 30px; }
.th-body { display: grid; grid-template-columns: minmax(0, 1fr) clamp(300px, 24vw, 380px); gap: 14px; align-items: start; }
.th-t tbody tr { cursor: pointer; } .th-t tbody tr.on td { background: #EFEDF7; } .th-t tr.late td:first-child { box-shadow: inset 3px 0 0 #B42318; }
.th-t .red { color: #B42318; } .th-t .mut { color: var(--mut); }
/* Tahsilat listesi: sayı sütunları sağa hizalı ve taşmaz; "Kalan" hücresinde ana tutar normal, gecikme altında küçük kırmızı; "Sıradaki vade" sola hizalı */
.th-t th.n, .th-t td.n { text-align: right; white-space: nowrap; font-variant-numeric: tabular-nums; vertical-align: top; }
.th-t td .ap-ana { font-weight: 600; }
.th-t td .by.red { font-weight: 400; font-size: 12px; white-space: nowrap; }
.th-t td .by.red b, .th-t td .by.red .ap-ana { font-weight: 600; color: inherit; }
.th-t th:last-child, .th-t td:last-child { text-align: left; white-space: nowrap; min-width: 100px; padding-left: 12px; vertical-align: top; }
.th-t td:last-child .by { font-weight: 400; color: var(--mut); }
.hk { display: inline-block; font-size: 11px; padding: 1px 6px; border-radius: var(--r-sm); background: #FBE3E1; color: #8A1C12; margin: 1px 0; }
.hk.ok { background: #E3F1E8; color: #1D6B3F; }
.th-side { background: var(--panel); border: 1px solid var(--line); border-radius: var(--r-md); padding: 14px; position: sticky; top: calc(var(--top-h, 56px) + 10px); max-height: calc(100vh - var(--top-h, 56px) - 24px); max-height: calc(100dvh - var(--top-h, 56px) - 24px); overflow: auto; }
.th-sub { color: var(--mut); font-size: 12px; margin: 0 0 10px; }
.th-side h4 { margin: 14px 0 6px; font-size: 12px; text-transform: uppercase; letter-spacing: .08em; color: var(--navy); }
.th-f { background: #FAF9F7; border: 1px solid var(--line); border-radius: var(--r-md); padding: 10px; display: flex; flex-direction: column; gap: 6px; }
.th-f > div { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; }
.th-f label { font-size: 11px; color: var(--mut); font-weight: 600; }
.th-f input { display: block; width: 100%; margin-top: 3px; padding: 6px 8px; border: 1px solid var(--line); border-radius: var(--r-sm); font: inherit; }
.th-s { width: 100%; border-collapse: collapse; font-size: 12px; }
.th-s th { text-align: start; color: var(--mut); font-weight: 600; border-bottom: 1px solid var(--line); padding: 4px; }
.th-s td { padding: 4px; border-bottom: 1px solid #F0ECE7; } .th-s .n { text-align: right; font-variant-numeric: tabular-nums; }
.ds { font-size: 11px; font-weight: 700; padding: 1px 6px; border-radius: 999px; }
.ds-odendi { background: #E3F1E8; color: #1D6B3F; } .ds-kismen { background: #FDEFC9; color: #6B4700; }
.ds-gecikti { background: #FBE3E1; color: #8A1C12; } .ds-bekliyor { background: #F1EFEC; color: #55504A; }
.th-p { list-style: none; margin: 0; padding: 0; } .th-p li { display: grid; grid-template-columns: 80px 1fr auto; gap: 2px 8px; padding: 5px 0; border-bottom: 1px solid #F0ECE7; font-size: 12px; }
.th-p small { grid-column: 1 / 3; color: var(--mut); } .th-p button { grid-row: 1 / 3; grid-column: 3; }
.hkr { display: grid; grid-template-columns: auto 1fr auto; gap: 2px 8px; align-items: center; padding: 6px 0; border-bottom: 1px solid #F0ECE7; font-size: 12px; cursor: pointer; }
.hkr small { grid-column: 2 / 4; color: var(--mut); }
.thbox { margin-bottom: 12px; }
@media (max-width: 1100px) { .th-body { grid-template-columns: 1fr; } .th-side { position: static; max-height: none; } }

.tk-bar .xls { order: 9; margin-left: auto; }

.brand select { background: color-mix(in srgb, currentColor 12%, transparent); color: inherit; border: 1px solid color-mix(in srgb, currentColor 35%, transparent); border-radius: var(--r-sm); padding: 5px 8px; font: inherit; font-weight: 600; margin-left: 4px; }
.brand select option { color: #222; }

.ay-app { padding: 16px var(--sayfa-px) 40px; display: flex; flex-direction: column; gap: 14px; }
.kr-app { padding: 16px var(--sayfa-px) 30px; }
.ay-card { background: var(--panel); border: 1px solid var(--line); border-radius: var(--r-md); padding: 16px 18px; }
.ay-card h2 { margin: 0 0 12px; font-size: 16px; } .ay-card h2 small { font-weight: 400; color: var(--mut); margin-left: 8px; font-size: 13px; }
.ay-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px 14px; }
.ay-grid label, .ay-pf label { font-size: 12px; font-weight: 600; } .ay-grid small { font-weight: 400; color: var(--mut); }
.ay-grid input, .ay-grid select, .mrow input { display: block; width: 100%; margin-top: 4px; padding: 7px 9px; border: 1px solid var(--line); border-radius: var(--r-sm); font: inherit; font-weight: 400; background: #fff; }
.ay-grid .w2 { grid-column: 1 / -1; } .ay-a { display: flex; justify-content: flex-end; gap: 14px; align-items: center; margin-top: 6px; }
.ay-pr { margin-bottom: 10px; } .ay-pr .acts { display: flex; gap: 12px; }
.mk { display: inline-flex; flex-direction: column; background: #F6F4F1; border-radius: var(--r-sm); padding: 2px 8px; margin: 1px; font-size: 12px; }
.mk small { color: var(--mut); font-size: 11px; }
.ay-pf { margin-top: 12px; border: 1px solid var(--navy); border-radius: var(--r-md); padding: 12px 14px; background: #FBFBFE; }
.ay-pf h3 { margin: 0 0 10px; font-size: 14px; } .mlb { display: inline-block; margin-top: 12px; font-size: 12px; }
.mrow { display: grid; grid-template-columns: 1fr 1.4fr auto; gap: 8px; align-items: center; margin-top: 4px; } .mrow input { margin-top: 0; }
.ay-img { display: grid; grid-template-columns: repeat(5, 1fr); gap: 12px; }
.ay-img .im { border: 1px solid var(--line); border-radius: var(--r-md); padding: 10px; display: flex; flex-direction: column; gap: 4px; }
.ay-img .pv { height: 110px; display: grid; place-items: center; background: repeating-conic-gradient(#F3F1EE 0% 25%, #fff 0% 50%) 50% / 16px 16px; border-radius: var(--r-sm); overflow: hidden; }
.ay-img .pv img { max-width: 100%; max-height: 110px; object-fit: contain; }
.ay-img small { color: var(--mut); font-size: 11px; } .ia { display: flex; gap: 10px; align-items: center; margin-top: auto; }
.up { cursor: pointer; } .up input { display: none; }
@media (max-width: 900px) { .ay-img { grid-template-columns: 1fr 1fr; } .ay-grid { grid-template-columns: 1fr; } }

.crm-app { padding: 14px 18px 30px; }
.crm-body { display: grid; grid-template-columns: minmax(0, 1fr) 360px; gap: 14px; align-items: start; }
.crm-body:not(:has(> .crm-side)) { grid-template-columns: minmax(0, 1fr); }   /* yan panelsiz sekme (Görevlerim): tablo tüm genişliği kullanır */
.crm-body tr[data-id] { cursor: pointer; } .crm-body tr.on { --satir-bg: #EFEDF7; } .crm-body tr.on td { background: #EFEDF7; } .crm-body tr.late td:first-child { box-shadow: inset 3px 0 0 #B42318; }
.crm-side { background: var(--panel); border: 1px solid var(--line); border-radius: var(--r-md); padding: 14px; position: sticky; top: calc(var(--top-h, 56px) + 10px); max-height: calc(100vh - var(--top-h, 56px) - 24px); max-height: calc(100dvh - var(--top-h, 56px) - 24px); overflow: auto; }
.crm-side dl { display: grid; grid-template-columns: 80px 1fr; gap: 5px 10px; margin: 10px 0; font-size: 13px; } .crm-side dt { color: var(--mut); } .crm-side dd { margin: 0; font-weight: 600; }
.crm-side h4 { margin: 14px 0 6px; font-size: 12px; text-transform: uppercase; letter-spacing: .08em; color: var(--navy); }
.crm-side .side-a { flex-direction: row; align-items: center; gap: 12px; }
.cfld { display: block; font-size: 12px; font-weight: 600; margin-bottom: 8px; } .cfld select { display: block; width: 100%; margin-top: 4px; padding: 6px; border: 1px solid var(--line); border-radius: var(--r-sm); }
.cr-l { list-style: none; margin: 0; padding: 0; } .cr-l li { display: grid; grid-template-columns: auto 1fr; gap: 0 10px; padding: 5px 0; border-bottom: 1px solid #F0ECE7; font-size: 12px; }
.cr-l small { grid-column: 1 / -1; color: var(--mut); }
.cr-n textarea { width: 100%; padding: 7px 9px; border: 1px solid var(--line); border-radius: var(--r-sm); font: inherit; margin-bottom: 6px; }
@media (max-width: 1100px) { .crm-body { grid-template-columns: 1fr; } .crm-side { position: static; max-height: none; } }

.who select.dil { background: color-mix(in srgb, currentColor 12%, transparent); color: inherit; border: 1px solid color-mix(in srgb, currentColor 35%, transparent); border-radius: var(--r-sm); padding: 3px 5px; font: inherit; font-size: 12px; }
.who select.dil option { color: #222; }

.ay-ol { display: flex; flex-wrap: wrap; gap: 6px 18px; margin: 10px 0 4px; font-size: 13px; }
.ay-code { background: #1F2128; color: #E8E6F5; padding: 8px 12px; border-radius: var(--r-sm); font-size: 12px; overflow-x: auto; white-space: pre; }
.ay-card details { margin-top: 8px; } .ay-card details ol { margin: 6px 0 0 18px; padding: 0; line-height: 1.7; }

.fg-app { padding: 14px var(--sayfa-px) 40px; display: flex; flex-direction: column; gap: 14px; }
.fg-tabs { display: flex; gap: 6px; } .fg-tabs button { border: 1px solid var(--line); background: #fff; border-radius: 999px; padding: 6px 14px; font: inherit; font-weight: 600; cursor: pointer; color: var(--ink); }
.fg-tabs button.on { background: var(--navy); border-color: var(--navy); color: #fff; }
.fg-card { background: var(--panel); border: 1px solid var(--line); border-radius: var(--r-md); padding: 14px 16px; }
.fg-card h3 { margin: 14px 0 6px; font-size: 14px; } .fg-card h3:first-child { margin-top: 0; }
.fg-kpis { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 10px; }
.fg-kpis > div { background: #F6F4F1; border-radius: var(--r-md); padding: 9px 12px; display: flex; flex-direction: column; gap: 2px; }
.fg-kpis small { color: var(--mut); font-size: 12px; } .fg-kpis b { font-size: 18px; font-variant-numeric: tabular-nums; } .fg-kpis b.warn { color: #B42318; } .fg-kpis em { font-style: normal; color: var(--mut); font-size: 12px; }
.fg-chart { display: block; max-height: 320px; } .fg-leg { display: flex; gap: 16px; font-size: 12px; color: var(--mut); margin: 2px 0 4px 64px; }
.fg-leg i { display: inline-block; width: 14px; height: 3px; border-radius: var(--r-sm); vertical-align: middle; margin-right: 6px; }
.fg-act { display: flex; gap: 12px; align-items: center; flex-wrap: wrap; margin-top: 8px; }
.fg-split { display: grid; grid-template-columns: 1fr 400px; gap: 14px; align-items: start; }
.fg-t tr[data-bb] { cursor: pointer; } .fg-t tr.on td { background: #EFEDF7; } .fg-t td.up { color: #1D7A46; font-weight: 600; } .fg-t td.dn { color: #B42318; font-weight: 600; }
.fg-side { background: #FBFAF8; border: 1px solid var(--line); border-radius: var(--r-md); padding: 12px; position: sticky; top: calc(var(--top-h, 56px) + 10px); max-height: calc(100vh - var(--top-h, 56px) - 24px); max-height: calc(100dvh - var(--top-h, 56px) - 24px); overflow: auto; }
.fg-side .fg-leg { margin-left: 0; } .fg-h { font-size: 12px; }
@media (max-width: 1100px) { .fg-split { grid-template-columns: 1fr; } .fg-side { position: static; max-height: none; } }

.sy-back { position: fixed; inset: 0; background: rgba(20,20,30,.45); z-index: 200; display: grid; place-items: start center; overflow: auto; padding: 30px 12px; }
.sy-dlg { background: #fff; border-radius: var(--r-lg); width: min(1100px, 100%); padding: 16px 18px; box-shadow: 0 10px 40px rgba(0,0,0,.25); }
.sy-a { display: flex; gap: 12px; align-items: center; flex-wrap: wrap; margin: 10px 0; } .sy-a.end { justify-content: flex-end; }
.sy-ok, .sy-warn, .sy-err { border-radius: var(--r-md); padding: 8px 12px; margin: 8px 0; font-size: 13px; }
.sy-ok { background: #E3F1E8; color: #1D6B3F; font-weight: 600; } .sy-warn { background: #FFF4DC; color: #7A5200; } .sy-err { background: #FCEBEB; color: #9B2C2C; }
.sy-face { border: 1px solid var(--line); border-radius: var(--r-md); padding: 10px 12px; margin: 10px 0; }
.sy-face label { font-size: 12px; font-weight: 600; } .sy-face input { margin-left: 8px; padding: 5px 8px; border: 1px solid var(--line); border-radius: var(--r-sm); font: inherit; width: 280px; max-width: 60%; }
.sy-face small { display: block; color: var(--mut); margin: 4px 0 6px; } .sy-draw { overflow-x: auto; }
.sema-empty { background: #fff; border: 1px dashed var(--line); border-radius: var(--r-md); padding: 30px; text-align: center; color: var(--mut); margin-top: 14px; }

.th-pt { display: flex; flex-direction: column; gap: 6px; } .th-pt input { width: 100%; padding: 6px 8px; border: 1px solid var(--line); border-radius: var(--r-sm); font: 12px ui-monospace, Consolas, monospace; background: #F6F4F1; }
.th-pa { display: flex; gap: 12px; align-items: center; flex-wrap: wrap; } .th-pt small { color: var(--mut); font-size: 12px; }

.yt-app { padding: 14px var(--sayfa-px) 40px; display: flex; flex-direction: column; gap: 14px; }
.yt-card { background: var(--panel); border: 1px solid var(--line); border-radius: var(--r-md); padding: 14px 16px; }
.yt-card h2 { margin: 0 0 6px; font-size: 16px; color: var(--navy); }
.yt-roller { display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 8px; margin: 10px 0; }
.yt-roller div { background: #F6F4F1; border-radius: var(--r-md); padding: 8px 11px; } .yt-roller dt { font-weight: 700; } .yt-roller dd { margin: 2px 0 0; font-size: 12px; color: var(--mut); }
.yt-add { display: inline-flex; gap: 6px; } .yt-add input { padding: 6px 8px; border: 1px solid var(--line); border-radius: var(--r-sm); font: inherit; width: 200px; }
.yt-t { border-collapse: collapse; font-size: 13px; min-width: 100%; } .yt-t th, .yt-t td { border-bottom: 1px solid var(--line); padding: 7px 8px; text-align: start; vertical-align: top; }
.yt-t th { background: var(--navy); color: #fff; font-weight: 600; white-space: nowrap; } .yt-t th small { display: block; font-weight: 400; opacity: .8; font-size: 11px; }
.yt-t td small { display: block; color: var(--mut); font-size: 11px; margin-top: 3px; max-width: 220px; } .yt-t td > b { display: block; }
.yt-t select { font: inherit; padding: 4px 6px; border: 1px solid var(--line); border-radius: var(--r-sm); background: #fff; min-width: 140px; } .yt-t select.on { border-color: var(--navy); background: #EFEDF7; font-weight: 600; }
.yt-admin { color: var(--mut); font-style: italic; } .yt-no { color: #9B2C2C; }

.koruma { border-radius: var(--r-md); padding: 8px 10px; font-size: 12px; line-height: 1.4; background: #EEF0F7; color: var(--navy); margin-top: 6px; }
.koruma b { display: block; } .koruma small { display: block; margin-top: 3px; font-weight: 600; }
.koruma.k-catisma { background: #FFF4DC; color: #7A5200; border: 1px solid #F1D48A; } .koruma.k-ayni { background: #E3F1E8; color: #1D6B3F; }
#dan { margin-top: 6px; width: 100%; } #wa { margin-top: 6px; }
.help.ok { color: #1D6B3F; } .help.warn { color: #9B5C00; }

.kor-w { display: block; color: #9B5C00; font-weight: 600; font-size: 11px; white-space: normal; max-width: 280px; }

#toast { position: fixed; bottom: 22px; left: 50%; transform: translate(-50%, 20px); background: var(--ink); color: #fff; padding: 10px 16px; border-radius: var(--r-sm); opacity: 0; pointer-events: none; transition: .2s; font-size: 13px; }
#toast.show { opacity: 1; transform: translate(-50%, 0); }
#toast.bad { background: var(--red); }

@media (max-width: 860px) {
  .plan-view { grid-template-columns: 1fr; }
  .ctl { border-right: 0; border-bottom: 1px solid var(--line); }
  .top { gap: 12px; padding: 0 12px; }
  .brand span, .who span { display: none; }
}
@media (prefers-reduced-motion: reduce) { #toast { transition: none; } }

/* Acenta ilişkileri */
.ac-ozet{display:flex;flex-wrap:wrap;gap:8px 20px;margin:6px 0 10px;font-size:13px}
.ac-sum b{margin-right:6px}
.ac-bulk{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:8px 0;padding:8px 12px;border:1px solid var(--line,#ddd);border-radius:var(--r-md);background:rgba(0,0,0,.03)}
.ac td{vertical-align:top}
.ac-formrow td{background:rgba(0,0,0,.025)}
.ac-f{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end}
.ac-f label{display:flex;flex-direction:column;font-size:12px;gap:3px}
.ac-f .ac-not{flex:1;min-width:180px}
.ac-kisi{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:6px 18px;font-size:13px}

/* Hedefler ve raporlar */
.hd-ust{display:flex;align-items:center;gap:16px;margin:8px 0}
.hd-uyum{display:flex;flex-direction:column;align-items:center;padding:10px 18px;border-radius:var(--r-lg);border:2px solid #ccc}
.hd-uyum b{font-size:28px;line-height:1}.hd-uyum span{font-size:12px;opacity:.7}
.hd-uyum.hd-ok,.hd-pill.hd-ok{border-color:#2e9e5b;color:#1f7a44}.hd-uyum.hd-orta,.hd-pill.hd-orta{border-color:#d9a21b;color:#9a6f00}.hd-uyum.hd-dusuk,.hd-pill.hd-dusuk{border-color:#d04a4a;color:#b02a2a}
.hd-pill{display:inline-block;padding:2px 8px;border:1px solid;border-radius:var(--r-md);font-weight:600}
.hd-bars{display:grid;gap:12px;max-width:640px}
.hd-bh{display:flex;justify-content:space-between;font-size:13px;margin-bottom:3px}
.hd-track{height:10px;border-radius:var(--r-sm);background:rgba(0,0,0,.08);overflow:hidden;flex:1}
.hd-fill{height:100%;border-radius:var(--r-sm)}
.hd-fill.hd-ok{background:#2e9e5b}.hd-fill.hd-orta{background:#d9a21b}.hd-fill.hd-dusuk{background:#d04a4a}.hd-fill.hd-yok{background:#bbb}
td.hd-c-ok{background:rgba(46,158,91,.14)}td.hd-c-orta{background:rgba(217,162,27,.16)}td.hd-c-dusuk{background:rgba(208,74,74,.13)}
.hd small{opacity:.65}
.rp-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px;margin:10px 0}
.rp-card{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border:1px solid var(--line,#ddd);border-radius:var(--r-md)}
.rp-card span{font-size:12px;opacity:.7}.rp-card b{font-size:18px}.rp-card small{font-size:11px;opacity:.78}
.rp-bar{display:flex;align-items:center;gap:10px;margin:5px 0;max-width:720px}
.rp-bar .rp-l{width:200px;flex:none;font-size:13px}
.rp-gun{display:flex;align-items:flex-end;gap:3px;height:80px;margin:6px 0}
.rp-gun div{display:flex;flex-direction:column;align-items:center;gap:2px}
.rp-gun i{display:block;width:12px;background:#4a8fe0;border-radius:var(--r-sm) var(--r-sm) 0 0}
.rp-gun small{font-size:11px;opacity:.6}
.rp-app h3{margin:18px 0 6px}

/* Rapor PDF'i */
.rp-pdf .tbl-x{overflow:visible}
.rp-pdf table{width:100%;border-collapse:collapse;font-size:11px}
.rp-pdf th,.rp-pdf td{border-bottom:1px solid #ddd;padding:4px 6px;text-align:left}
.rp-pdf h1{font-size:20px;margin:0 0 2px}.rp-pdf-h p{margin:0 0 12px;color:#555}
.rp-pdf h3{margin:14px 0 6px}

/* Hakediş ve tahsilat ek alanları */
.ts.hk-hakedildi{background:rgba(46,158,91,.16);color:#1f7a44}.ts.hk-kismen{background:rgba(217,162,27,.18);color:#9a6f00}.ts.hk-odendi{background:rgba(120,120,120,.16);color:#555}.ts.hk-bekliyor{background:rgba(74,143,224,.15);color:#2b63a8}
.th-pa2{display:flex;gap:10px;margin-top:2px}.th-pa2 .up{cursor:pointer}
.th-f label{display:flex;flex-direction:column;font-size:12px;gap:3px;margin:4px 0}
.th-f input,.th-f select{max-width:100%}
.hk-app .th-p li{display:grid;grid-template-columns:auto auto 1fr;gap:4px 12px;align-items:baseline}

/* Sağdan sola diller (Farsça, Arapça) teklif sayfası */
.pl[dir=rtl] { direction: rtl; text-align: right; font-family: "Segoe UI", Tahoma, Arial, sans-serif; }
.pl[dir=rtl] .amt, .pl[dir=rtl] .big, .pl[dir=rtl] .pl-total, .pl[dir=rtl] .disc { direction: ltr; unicode-bidi: isolate; }

/* Taksitsiz projede tek satış fiyatı kutusu: sayfayı dolduran, dengeli görünüm */
.pl-tek { margin-top: 12px; }
.pl-tek .bar { font-size: 15px; padding: 5px; }
.pl-tek .sub { font-size: 20px; padding-top: 6px; }
.pl-tek .big { font-size: 38px; padding: 4px 0 12px; }

/* Seçim kutuları: bütün panelde alanlar gibi (kenarlıklı, tam genişlik, etiketin altında) */
select { padding: 8px 10px; border: 1px solid var(--line); border-radius: var(--r-sm); background: #fff; }
label > select, .plans select, .ctl select { display: block; width: 100%; margin-top: 6px; }
.plans .row2 { align-items: start; }
.plans .row2 label { display: block; font-size: 13px; font-weight: 600; }
.plans { padding: 0; }

/* Satış onay formu ve diğer formlar: alanlar panelin geri kalanıyla aynı (yumuşak köşeli, beyaz, tam genişlik) */
.sf-ctl .bb { font-size: 13px; font-weight: 600; display: block; }
.sf-ctl .foffer select { border: 1px solid var(--line); background: #fff; padding: 9px 11px; font-size: 14px; }
.sf-ctl input:not([type=checkbox]):not([type=radio]), .sf-ctl select, .sf-ctl textarea { border-radius: var(--r-md); }
.sf-ctl .cust input, .sf-ctl .cust select, .sf-ctl .cust textarea { padding: 9px 11px; margin-bottom: 8px; }
.sf-ctl .grp { border-radius: var(--r-md); }
.ctl input:not([type=checkbox]):not([type=radio]), .ctl select, .ctl textarea, .phn select, .phn input, .foffer select, .ay-card input:not([type=checkbox]), .ay-card select, .ay-card textarea { border-radius: var(--r-md); }

/* Taksitsiz teklif sayfası: boş kalan yer fiyat bölümüne ve fotoğrafa dağıtılır */
.pl.tek .pl-grid td { font-size: 12.5px; padding: 6px 4px; }
.pl.tek .pl-box { margin-top: 14px; }
.pl.tek .pl-box .bar { font-size: 15px; padding: 6px; }
.pl.tek .pl-box .big { font-size: 40px; padding: 8px 0 12px; }
.pl.tek .pl-box.pl-tek { margin-top: 14px; }
.pl.tek .pl-box.pl-tek .bar { font-size: 17px; padding: 8px; }
.pl.tek .pl-box.pl-tek .sub { font-size: 22px; padding-top: 8px; }
.pl.tek .pl-box.pl-tek .big { font-size: 52px; padding: 6px 0 16px; }
.pl.tek .pl-note { margin: 14px 8px 10px; font-size: 9px; }
.pl.tek .pl-photo { margin-top: 2px; }
.pl.tek .pl-contact { margin-top: 12px; font-size: 11.5px; }
.pl.tek .pl-contact th, .pl.tek .pl-contact td { padding: 6px 10px; }

/* Kur kutuları: alanlar panelin geri kalanıyla aynı (yumuşak köşeli, beyaz) */
.tcmb input:not([type=checkbox]) { padding: 7px 11px; border: 1px solid var(--line); border-radius: var(--r-md); background: #fff; width: 130px; }
.tcmb .kur-ct { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
.tcmb label.chk { display: flex; gap: 6px; align-items: center; font-weight: 600; margin: 0; }
/* Başka hiçbir kural almayan metin kutuları ve seçimler de aynı görünsün */
:where(input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range]):not([type=color]), select, textarea) { border: 1px solid var(--line); border-radius: var(--r-md); background: #fff; padding: 8px 11px; }

/* Satış onay formu: telefon alanı tam satır (ülke kodu + numara), WhatsApp ve uyruk altta yan yana */
.sf-ctl .row2 > .phn { grid-column: 1 / -1; grid-template-columns: minmax(120px, 36%) 1fr; margin-bottom: 0; }
.sf-ctl .phn select { padding: 9px 8px; font-size: 14px; }
.sf-ctl .phn input { padding: 9px 11px; font-size: 14px; }

/* Satış formu: bütün kutular aynı yükseklikte (42 px), aynı iç boşluk ve yazı boyutu; satır aralıkları eşit */
.sf-ctl .cust input:not([type=checkbox]):not([type=radio]), .sf-ctl .cust select,
.sf-ctl label.sm input:not([type=checkbox]), .sf-ctl label.sm select,
.sf-ctl .phn select, .sf-ctl .phn input { height: 42px; padding: 0 12px; font-size: 14px; line-height: 1.2; box-sizing: border-box; }
.sf-ctl .cust input:not([type=checkbox]):not([type=radio]), .sf-ctl .cust select { margin: 0 0 8px; width: 100%; }
.sf-ctl .phn select, .sf-ctl .phn input { margin: 0 !important; width: 100%; }
.sf-ctl .row2 > .phn { grid-template-columns: minmax(150px, 38%) 1fr; margin-bottom: 8px; gap: 8px; }
.sf-ctl .row2 { gap: 0 8px; }
.sf-ctl label.sm input:not([type=checkbox]), .sf-ctl label.sm select { margin-top: 3px; width: 100%; }
.sf-ctl .cust textarea, .sf-ctl > .grp textarea { padding: 10px 12px; font-size: 14px; }

/* Ülke kodu seçimi dar; numara kutusu geniş */
.sf-ctl .row2 > .phn { grid-template-columns: 104px 1fr; gap: 8px; }
.sf-ctl .phn select { padding: 0 4px 0 8px; font-size: 13px; text-overflow: ellipsis; }

/* Telefon alanı ve müşteri kutuları: panelin her yerinde aynı ölçü (Teklif oluştur, Satış formu, Opsiyon penceresi) */
.phn { grid-template-columns: 104px 1fr; gap: 8px; margin-bottom: 8px; }
.phn select, .phn input { height: 42px; padding: 0 12px; font-size: 14px; line-height: 1.2; box-sizing: border-box; width: 100%; margin: 0 !important; border-radius: var(--r-md); }
.phn select { padding: 0 4px 0 8px; font-size: 13px; text-overflow: ellipsis; }
.ctl .cust input:not([type=checkbox]):not([type=radio]), .ctl .cust select { height: 42px; padding: 0 12px; font-size: 14px; line-height: 1.2; box-sizing: border-box; width: 100%; margin: 0 0 8px; border-radius: var(--r-md); display: block; }
.ctl .cust .crmbox input { margin-bottom: 8px; }
.ctl #wa, .ctl #dan, .ctl #acn, .ctl #cus { margin-top: 0; }
.dlg input:not([type=checkbox]):not([type=radio]), .dlg select { height: 42px; padding: 0 12px; font-size: 14px; box-sizing: border-box; border-radius: var(--r-md); }
.dlg .phn { margin-top: 5px; }
.dlg textarea { padding: 10px 12px; font-size: 14px; border-radius: var(--r-md); }

/* Proje ayarında ortak satırı: tür, firma adı, kod */
.mrow { display: grid; grid-template-columns: 1fr 1.3fr 1fr auto; gap: 8px; align-items: center; margin-bottom: 8px; }
.mrow input { height: 40px; padding: 0 11px; border: 1px solid var(--line); border-radius: var(--r-md); background: #fff; width: 100%; box-sizing: border-box; }

/* ===== Form alanları: bütün panelde tek düzen =====
   Etiket üstte, alan altında ve tam genişlikte; metin kutuları ve seçimler 42 px, yumuşak köşeli; çok satırlı kutular geniş. */
label:has(> input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range]):not([type=color])),
label:has(> select), label:has(> textarea) { display: block; font-size: 13px; font-weight: 600; }
label > input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range]):not([type=color]), label > select, label > textarea {
  display: block; width: 100%; margin-top: 6px; box-sizing: border-box; border: 1px solid var(--line); border-radius: var(--r-md); background: #fff; font: inherit; font-weight: 400; color: var(--ink); }
label > input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range]):not([type=color]), label > select { height: 42px; padding: 0 12px; }
label > textarea, textarea { min-height: 84px; padding: 10px 12px; resize: vertical; box-sizing: border-box; width: 100%; border-radius: var(--r-md); line-height: 1.4; }
.cr-n textarea { min-height: 70px; margin-bottom: 8px; }
:where(input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range]):not([type=color]), select) { min-height: 38px; }
/* tablo içi ve çubuk içi alanlar: biraz daha kompakt ama aynı dil */
.fl-in input:not([type=checkbox]):not([type=radio]), table input:not([type=checkbox]):not([type=radio]) { height: var(--girdi-h-tablo, 32px); min-height: var(--girdi-h-tablo, 32px); padding: 0 8px; border: 1px solid var(--line); border-radius: var(--r-sm); background: #fff; box-sizing: border-box; min-width: 52px; }
table input[type=checkbox], table input[type=radio], .fl-in input[type=checkbox] { width: 16px; height: 16px; min-width: 0; min-height: 0; margin: 0; vertical-align: middle; }
.fl-in input.n { text-align: right; }
.sf-ctl .onay input, .sf-ctl [data-ou], .sf-ctl [data-oa] { height: 42px; padding: 0 12px; border-radius: var(--r-md); box-sizing: border-box; }
select#gAddOther, .tk-bar select, .inv-bar select, .list-bar select { height: 36px; padding: 0 10px; border-radius: var(--r-md); }
/* küçük satır içi seçimler (örn. "Liste: [15] acenta") dar kalır */
label.help > select { display: inline-block; width: auto; min-width: 70px; margin: 0 4px; height: 36px; }

/* ===== Rapor PDF şablonu (A4 yatay 1122×794): açık başlık, ince vurgu şeridi, bilgi şeridi, kartlar, sade tablolar, alt bilgi =====
   Alt bilgi, PDF'e sonradan basılan "azatech.co" damgasının (sayfa dibinden ~11 px) ÜSTÜNDE kalır; sayfa numarası sağdadır, damgayla çakışmaz. */
.rp-pg { width: 1122px; height: 793px; box-sizing: border-box; position: relative; background: #fff; color: #1f2430; font-family: "Segoe UI", Calibri, Arial, sans-serif; overflow: hidden; display: block; --ac: var(--navy); }
.rp-hd { height: 86px; padding: 0 36px; display: flex; align-items: center; gap: 22px; color: #1f2430; background: #fff; }
.rp-logo { width: 150px; height: 56px; display: flex; align-items: center; justify-content: flex-start; flex: none; }
.rp-logo img { max-width: 100%; max-height: 100%; display: block; }
.rp-logo b { font-size: 18px; color: var(--ac); }
.rp-tt { flex: 1; min-width: 0; border-left: 3px solid var(--ac); padding-left: 16px; }
.rp-tt small { display: block; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: #7a8294; margin-bottom: 3px; }
.rp-tt h1 { margin: 0; font-size: 24px; line-height: 1.1; font-weight: 700; color: var(--ac); }
.rp-rt { text-align: right; display: flex; flex-direction: column; align-items: flex-end; gap: 6px; }
.rp-pill { background: #eef1f8; border-radius: 999px; padding: 4px 14px; font-size: 12px; font-weight: 600; color: var(--ac); }
.rp-rt small { font-size: 11px; color: #8a92a3; }
.rp-line { height: 4px; background: linear-gradient(90deg, var(--ac) 0%, var(--ac) 38%, #c9ced9 100%); margin: 0 36px; border-radius: var(--r-sm); }
.rp-body { position: absolute; left: 36px; right: 36px; top: 112px; height: 610px; overflow: hidden; }
.rp-meta { display: grid; grid-template-columns: 1fr 1.6fr 1fr 1.2fr; gap: 0; border: 1px solid #e4e8f0; border-radius: var(--r-md); margin-bottom: 14px; background: #f8f9fc; }
.rp-meta div { padding: 9px 14px; border-right: 1px solid #e4e8f0; }
.rp-meta div:last-child { border-right: 0; }
.rp-meta small { display: block; font-size: 11px; text-transform: uppercase; letter-spacing: .09em; color: #8a92a3; }
.rp-meta b { font-size: 13px; color: #1f2430; font-weight: 600; }
.rp-ft { position: absolute; left: 36px; right: 36px; bottom: 26px; height: 30px; border-top: 1px solid #e4e8f0; display: flex; align-items: center; font-size: 11px; color: #8a92a3; gap: 16px; }
.rp-ft .rp-gz { flex: 1; } .rp-ft .rp-hz { flex: none; }
.rp-ft .rp-pn { flex: none; min-width: 92px; text-align: right; font-weight: 700; color: var(--ac); }
.rp-u { margin-bottom: 12px; }
.rp-pg h3 { margin: 0 0 8px; font-size: 14px; color: var(--ac); font-weight: 700; display: flex; align-items: center; gap: 8px; }
.rp-pg h3::before { content: ""; width: 4px; height: 16px; border-radius: var(--r-sm); background: var(--ac); display: inline-block; }
.rp-pg .rp-cards { display: grid; grid-template-columns: repeat(5, 1fr); gap: 10px; margin: 0 0 6px; }
.rp-pg .rp-card { border: 1px solid #e4e8f0; border-top: 3px solid var(--ac); border-radius: var(--r-md); padding: 10px 13px; background: #fff; display: flex; flex-direction: column; gap: 3px; }
.rp-pg .rp-card > :first-child:not(b) { order: 0; font-size: 11px; color: #7a8294; text-transform: uppercase; letter-spacing: .06em; opacity: 1; font-weight: 400; }
.rp-pg .rp-card b { order: 1; font-size: 20px; color: #1f2430; font-weight: 700; }
.rp-pg .rp-card > :not(:first-child):not(b) { order: 2; font-size: 11px; color: #8a92a3; opacity: 1; text-transform: none; letter-spacing: 0; }
.rp-pg .tbl-x { overflow: visible; border: 1px solid #e4e8f0; border-radius: var(--r-md); background: #fff; }
.rp-pg table { width: 100%; border-collapse: collapse; font-size: 11px; }
.rp-pg thead th { background: #f1f3f9; color: var(--ac); text-align: start; padding: 8px 10px; font-size: 11px; text-transform: uppercase; letter-spacing: .06em; font-weight: 700; position: static; white-space: normal; border-bottom: 2px solid var(--ac); }
.rp-pg tbody td { padding: 7px 10px; border-bottom: 1px solid #edf0f5; vertical-align: top; color: #1f2430; text-align: start; }
.rp-pg tbody tr:last-child td { border-bottom: 0; }
.rp-pg tbody tr:nth-child(even) td { background: #fafbfd; }
.rp-pg tbody td:first-child { font-weight: 600; }
.rp-pg td.n, .rp-pg th.n { text-align: right; white-space: nowrap; font-variant-numeric: tabular-nums; }
.rp-pg td small, .rp-pg small.by { color: #8a92a3; font-weight: 400; }
.rp-pg .none { text-align: center; color: #8a92a3; padding: 14px; }
.rp-pg .rp-bar { display: flex; align-items: center; gap: 12px; margin: 6px 0; max-width: none; }
.rp-pg .rp-bar .rp-l { width: 190px; flex: none; font-size: 12px; }
.rp-pg .hd-track { flex: 1; height: 10px; background: #eceff6; border-radius: var(--r-sm); overflow: hidden; }
.rp-pg .hd-fill { height: 100%; background: var(--ac); border-radius: var(--r-sm); }
.rp-pg .rp-bar b { width: 120px; font-size: 12px; text-align: right; flex: none; }
.rp-pg .rp-gun { display: flex; align-items: flex-end; gap: 4px; height: 84px; margin: 4px 0; }
.rp-pg .rp-gun i { background: var(--ac); width: 14px; border-radius: var(--r-sm) var(--r-sm) 0 0; display: block; }
.rp-pg .rp-gun small { font-size: 11px; color: #8a92a3; }
.rp-pg p.help { max-width: none; font-size: 11px; color: #8a92a3; margin: 6px 0 0; line-height: 1.4; }
.rp-pg .hd-pill { display: inline-block; padding: 1px 9px; border-radius: 999px; font-weight: 700; font-size: 11px; }
.rp-pg .hd-ok { background: #dff3e6; color: #17653a; } .rp-pg .hd-orta { background: #fff1cf; color: #8a5a00; } .rp-pg .hd-dusuk { background: #fde1de; color: #a4261b; }
.rp-pg td.hd-c-ok { background: #eef8f1 !important; } .rp-pg td.hd-c-orta { background: #fff8e6 !important; } .rp-pg td.hd-c-dusuk { background: #fdeeec !important; }
.rp-pg .hd-fill, .rp-pg .hd-fill.hd-ok { background: var(--ac) !important; }

.rp-logo b { color: var(--ac); font-size: 14px; line-height: 1.15; text-align: center; }

/* ---- Potansiyel müşteri: son not, takip, 7 gün temas yok (kırmızı) ---- */
.bv-not{display:block;margin-top:4px;color:var(--ink-2,#555);font-size:12px;line-height:1.35}
.bv-not b{color:var(--ink,#222)}
.bv-gec{color:#c62828;font-weight:600}
.bv-soguk,.soguk-e{display:inline-block;margin-top:4px;color:#b71c1c;font-weight:700;font-size:12px;font-style:normal}
tr.soguk{background:#fdecec}
tr.soguk td:first-child{box-shadow:inset 4px 0 0 #d32f2f}
.bv-gecmis{width:min(560px,94vw)}
.bv-gecmis .bv-z{max-height:46vh;overflow:auto;margin-bottom:10px}
.bv-notlar li{display:block}
.bv-notlar li span{display:block;font-size:11px;color:#777}
.bv-notlar li div{white-space:pre-wrap;margin-top:2px}


/* ---- Takvim, Akış, Satış sonrası ---- */
.tv-app .tv-ay{min-width:140px;text-align:center}
.tv-body{display:grid;grid-template-columns:minmax(300px,420px) 1fr;gap:18px;align-items:start}
@media (max-width:820px){.tv-body{grid-template-columns:1fr}}
.tv-h,.tv-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}
.tv-h span{text-align:center;font-size:12px;color:#777;padding:4px 0}
.tv-g{position:relative;min-height:54px;border:1px solid var(--line,#e3dfda);border-radius:var(--r-md);background:var(--card,#fff);padding:4px 5px;text-align: start;cursor:pointer;font:inherit;color:inherit}
.tv-g.dis{opacity:.45}.tv-g.bugun{border-color:var(--navy);box-shadow:inset 0 0 0 1px var(--navy)}.tv-g.on{background:#eef0f7}
.tv-g span{font-size:13px;font-weight:600}.tv-g b{position:absolute;right:5px;bottom:4px;background:var(--navy);color:#fff;border-radius:99px;font-size:11px;min-width:18px;text-align:center;padding:0 4px}
.tv-g.gec b{background:#d32f2f}.tv-g .soguk-n{position:absolute;left:5px;bottom:4px;font-style:normal;font-size:11px;color:#b71c1c;font-weight:700}
.tv-gun h3{margin:0 0 6px;text-transform:capitalize}.tv-gun h4{margin:14px 0 6px}
.tv-l,.tv-soguk ul{list-style:none;margin:0;padding:0}.tv-l li,.tv-soguk li{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:8px 10px;border:1px solid var(--line,#e3dfda);border-radius:var(--r-md);margin-bottom:6px;background:var(--card,#fff)}
.tv-l li.bitti{opacity:.55;text-decoration:line-through}.tv-l li.gec{border-color:#d32f2f;background:#fdecec}
.tv-l small,.tv-soguk small{display:block;color:#777;font-size:12px}
.tv-soguk{border:1px solid #d32f2f;background:#fdecec;border-radius:var(--r-md);padding:10px 12px;margin-bottom:10px}.tv-soguk>b{color:#b71c1c;display:block;margin-bottom:6px}
.tv-soguk li{background:#fff}
.tv-ara{list-style:none;margin:4px 0 8px;padding:0;max-height:180px;overflow:auto}.tv-ara li{padding:6px 8px;border-bottom:1px solid #eee;cursor:pointer}.tv-ara li:hover{background:#eef0f7}.tv-ara small{margin-left:6px;color:#777}.tv-ara .none{cursor:default;color:#777}
.tv-sec{margin:4px 0}
.ak-u{list-style:none;margin:0 0 10px;padding:0}.ak-u li{border:1px solid var(--line,#e3dfda);border-radius:var(--r-md);padding:8px 10px;margin-bottom:6px;background:var(--card,#fff)}
.ak-h{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap}.ak-h small{color:#777;font-size:12px}
.ak-m{margin-top:3px;font-size:14px}.ak-not{white-space:pre-wrap}
.ak-Create{border-left:4px solid #1d7a46}.ak-Assign{border-left:4px solid var(--navy)}.ak-Status{border-left:4px solid #b26a00}.ak-Post{border-left:4px solid #777}
.sn-b{margin-bottom:4px}


/* ---- Takvim: geniş, büyük, bilgi dolu görünüm ---- */
.tv-app{width:100%;max-width:var(--sayfa-genis);margin:0 auto;padding-inline:var(--sayfa-px)}
.tv-app .tk-bar{align-items:center;gap:10px;margin-bottom:14px}
.tv-app .tv-ay{font-size:20px;font-weight:700;min-width:210px;text-align:center;color:var(--navy,var(--navy))}
.tv-app .tv-body{grid-template-columns:minmax(0,1.9fr) minmax(320px,1fr);gap:20px;align-items:start}
.tv-app .tv-cal{background:var(--card,#fff);border:1px solid var(--line,#e3dfda);border-radius:var(--r-lg);padding:14px;box-shadow:0 1px 3px rgba(0,0,0,.05)}
.tv-app .tv-h{gap:6px;margin-bottom:6px}.tv-app .tv-h span{font-size:13px;font-weight:700;color:#666;text-transform:uppercase;letter-spacing:.04em;padding:6px 0}
.tv-app .tv-grid{gap:6px}
.tv-app .tv-g{min-height:112px;display:flex;flex-direction:column;align-items:stretch;gap:3px;padding:7px 8px;border-radius:var(--r-md);transition:background .12s,box-shadow .12s,transform .12s;overflow:hidden}
.tv-app .tv-g:hover{background:#f5f6fb;box-shadow:0 2px 8px rgba(52,54,107,.12)}
.tv-app .tv-g.on{background:#eef0f7;box-shadow:inset 0 0 0 2px var(--navy)}
.tv-app .tv-g.bugun .tv-d{background:var(--navy);color:#fff}
.tv-app .tv-g.hs{background:#faf9f7}.tv-app .tv-g.dis{opacity:1}.tv-app .tv-g.dis .tv-d{color:var(--mut)}.tv-app .tv-g.dis .tv-c{opacity:.55}
.tv-app .tv-d{display:inline-flex;width:28px;height:28px;align-items:center;justify-content:center;border-radius:50%;font-size:14px;font-weight:700}
.tv-app .tv-c{display:flex;flex-direction:column;gap:3px;min-width:0}
.tv-app .tv-i{display:block;font-style:normal;font-size:12px;line-height:1.3;padding:2px 6px;border-radius:var(--r-sm);background:#e6e9f6;color:#27295a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tv-app .tv-i.ac{background:#e1f2e8;color:#175c36}.tv-app .tv-i.gec{background:#fbdada;color:#9b1c1c}.tv-app .tv-i.bitti{background:#eee;color:#888;text-decoration:line-through}
.tv-app .tv-m{font-style:normal;font-size:11px;color:#666;padding-left:4px}
.tv-app .tv-g b.tv-n{display:none}
.tv-app .tv-g .soguk-n{position:absolute;right:8px;top:8px;left:auto;bottom:auto;background:#fdecec;border-radius:99px;padding:1px 7px;font-size:11px}
.tv-app .tv-g{position:relative}
.tv-app .tv-gun{background:var(--card,#fff);border:1px solid var(--line,#e3dfda);border-radius:var(--r-lg);padding:16px 18px;box-shadow:0 1px 3px rgba(0,0,0,.05);position:sticky;top:calc(var(--top-h,56px) + 12px);max-height: calc(100vh - var(--top-h,56px) - 24px); max-height: calc(100dvh - var(--top-h,56px) - 24px);overflow:auto}
.tv-app .tv-gun h3{font-size:18px;margin:0 0 4px}
.tv-app .tv-l li{padding:10px 12px;border-radius:var(--r-md)}
.tv-app .tv-help{margin-top:12px;display:flex;gap:14px;flex-wrap:wrap;font-size:12px;color:#666}
@media (max-width:980px){.tv-app .tv-body{grid-template-columns:1fr}.tv-app .tv-gun{position:static;max-height:none}}
@media (max-width:640px){
  .tv-app .tv-g{min-height:52px;padding:4px}.tv-app .tv-c{display:none}.tv-app .tv-d{width:24px;height:24px;font-size:13px}
  .tv-app .tv-g b.tv-n{display:inline-block;position:absolute;right:4px;bottom:4px;background:var(--navy);color:#fff;border-radius:99px;font-size:11px;min-width:18px;text-align:center;padding:0 4px}
  .tv-app .tv-g.gec b.tv-n{background:#d32f2f}.tv-app .tv-ay{font-size:18px;min-width:0}
}


/* ---- Takvim üst boşluk ve büyük ekle düğmesi ---- */
.tv-app{padding-top:26px}
.tv-ekle{font-size:14px;padding:8px 16px;border-radius:var(--r-md);font-weight:650;box-shadow:0 1px 3px rgba(52,54,107,.22)}
.lg-f{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:10px;align-items:end}
.lg-f label{display:flex;flex-direction:column;font-size:12px;color:#666;gap:3px}.lg-h{display:flex;gap:6px}
tr.lg-sil td{background:#fdecec}

/* ---- Kullanıcılar ve yetkiler (yeni düzen) ---- */
.yt2 .yt2-grid{display:grid;grid-template-columns:minmax(260px,330px) 1fr;gap:20px;align-items:start}
@media (max-width:900px){.yt2 .yt2-grid{grid-template-columns:1fr}}
.yt2-sol,.yt2-kart,.yt2-bos,.yt2-ust{background:var(--card,#fff);border:1px solid var(--line,#e3dfda);border-radius:var(--r-lg);padding:14px 16px}
.yt2-sol{position:sticky;top:calc(var(--top-h,56px) + 10px);max-height: calc(100vh - 30px); max-height: calc(100dvh - 30px);overflow:auto}.yt2-sol h2{margin:0 0 8px;font-size:18px}
.yt2-list{list-style:none;margin:10px 0;padding:0}.yt2-list li{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:9px 10px;border-radius:var(--r-md);cursor:pointer;border:1px solid transparent}
.yt2-list li:hover{background:#f5f6fb}.yt2-list li.on{background:#eef0f7;border-color:var(--navy)}.yt2-list small{display:block;color:#777;font-size:12px}
.yt-b{font-size:11px;border-radius:99px;padding:2px 9px;background:#eee;color:#555;white-space:nowrap}.yt-b-on{background:#e3f1e8;color:#1d6b3f}.yt-b-admin{background:var(--navy);color:#fff}.yt-b-yok{background:#fdecec;color:#9b2c2c}
.yt2-sag{display:flex;flex-direction:column;gap:14px}.yt2-ust{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.yt2-ust h2{margin:0;font-size:20px}
.yt2-kaydet{display:flex;gap:12px;align-items:center}.yt2-kirli{color:#b26a00;font-size:13px;font-weight:600}
.yt2-kart h3{margin:0 0 10px;font-size:16px}.yt2-kart h3 small{font-weight:400;color:#777;font-size:12px;margin-left:6px}
.yt2-gri{opacity:.55}.yt2-bos{text-align:center;padding:36px 20px;color:#666}.yt2-bos b{display:block;font-size:16px;color:#222;margin-bottom:6px}
.yt2-grup{border:1px solid var(--line,#e3dfda);border-radius:var(--r-md);margin:0 0 12px;padding:8px 12px 4px}.yt2-grup legend{font-weight:700;padding:0 6px}.yt2-grup legend small{color:#777;font-weight:400}.yt2-grup.kapali{background:#faf9f7}
.yt2-yetki{display:flex;gap:10px;align-items:flex-start;padding:7px 2px;border-bottom:1px dashed #eee;cursor:pointer}.yt2-yetki:last-child{border-bottom:0}.yt2-yetki input{margin-top:3px;width:18px;height:18px}
.yt2-yetki b{display:block;font-size:14px}.yt2-yetki small{display:block;color:#777;font-size:12px}
.yt2-satir{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:9px 0;border-bottom:1px solid #f0ece7;flex-wrap:wrap}.yt2-satir small{display:block;color:#777;font-size:12px;max-width:420px}.yt2-satir select{min-width:220px}
.yt2-hepsi{border-bottom:0;padding-top:12px}

/* ---- Lisans / aktivasyon (firma paneli) ---- */
.ls-app{max-width:var(--sayfa-dar);margin:0 auto;padding:26px 16px;display:flex;flex-direction:column;gap:16px}
.ls-kilit{background:#fdecec;border:1px solid #d32f2f;border-radius:var(--r-lg);padding:16px 20px;color:#7a1c1c}.ls-kilit b{font-size:18px}
.ls-kart{background:var(--card,#fff);border:1px solid var(--line,#e3dfda);border-radius:var(--r-lg);padding:18px 20px}.ls-kart h2{margin:0 0 12px;font-size:18px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.ls-r{font-size:12px;border-radius:99px;padding:3px 11px;font-weight:700}.ls-ok{background:#e3f1e8;color:#1d6b3f}.ls-uyari{background:#fff1d6;color:#8a5a00}.ls-hata{background:#fdecec;color:#b71c1c}
.ls-dl{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin:0}.ls-dl div{background:#f6f4f1;border-radius:var(--r-md);padding:10px 12px}.ls-dl dt{font-size:12px;color:#777}.ls-dl dd{margin:2px 0 0;font-weight:700}.ls-dl small{display:block;font-weight:400;color:#777}
.ls-form{display:flex;flex-direction:column;gap:12px;max-width:520px}.ls-form label{display:flex;flex-direction:column;font-size:13px;color:#555;gap:4px}

/* ---------- Temalar (Hesabım → Tema): html[data-tema] ile ana renk, zemin ve çizgi değişir ---------- */
html[data-tema="okyanus"]  { --navy: #0B5FA5; --bg: #E8EFF5; --stone: #DCE7F0; --line: #C9D6E2; }
html[data-tema="zumrut"]   { --navy: #1A6E50; --bg: #E7F0EC; --stone: #DAE9E2; --line: #C6D8CF; }
html[data-tema="bordo"]    { --navy: #8B1E3F; --bg: #F1E9EB; --stone: #EBDDE1; --line: #DDCACF; }
html[data-tema="mor"]      { --navy: #5B3FA6; --bg: #EEEAF5; --stone: #E3DCF0; --line: #D3CAE4; }
html[data-tema="turuncu"]  { --navy: #A84806; --bg: #F5EEE7; --stone: #F0E1D2; --line: #E3D2C0; }
html[data-tema="turkuaz"]  { --navy: #0A6F78; --bg: #E6F1F2; --stone: #D8EAEC; --line: #C3DADD; }
html[data-tema="grafit"]   { --navy: #3D4650; --bg: #EAECEE; --stone: #DEE1E4; --line: #CDD1D5; }
html[data-tema="gul"]      { --navy: #A82B73; --bg: #F5EBF1; --stone: #F0DCE8; --line: #E4C9D8; }
html[data-tema="azatech"]  { --navy: #173A5B; --bar: #0B1F33; --bg: #EEF2F6; --stone: #E3EAF1; --line: #CBD6E0; }
html[data-tema="acik"]     { --navy: #173A5B; --bar: #F3F6F9; --bar-yazi: #173A5B; --bg: #F7F9FB; --stone: #E9EEF3; --line: #D5DEE6; }
/* üst çubuk: renkli temalarda çubuk temanın ana rengi olur (yazı beyaz) */
html[data-tema="okyanus"], html[data-tema="zumrut"], html[data-tema="bordo"], html[data-tema="mor"], html[data-tema="turuncu"], html[data-tema="turkuaz"], html[data-tema="grafit"], html[data-tema="gul"] { --bar: var(--navy); }
.tema-sec { display: flex; flex-wrap: wrap; gap: 10px; margin: 6px 0 2px; }
.tema-sec button { width: 38px; height: 38px; border-radius: 50%; border: 3px solid #fff; box-shadow: 0 0 0 1px var(--line); cursor: pointer; padding: 0; }
.tema-sec button.on { box-shadow: 0 0 0 3px var(--ink); }
.tema-sec button:focus-visible { outline: 2px solid var(--ink); outline-offset: 3px; }
.hesap-g { display: grid; grid-template-columns: 1fr 1fr; gap: 10px 12px; }
.hesap-g .tam { grid-column: 1 / -1; }
.hesap-g label { display: flex; flex-direction: column; gap: 3px; font-size: 13px; color: var(--mut); }
.hesap-g input { padding: 8px 10px; border: 1px solid var(--line); border-radius: var(--r-sm); background: #fff; color: var(--ink); }
.hesap-sekme { display: flex; gap: 6px; margin-bottom: 10px; }
.hesap-sekme button { background: none; border: 0; border-bottom: 2px solid transparent; padding: 6px 10px; font-weight: 600; color: var(--mut); }
.hesap-sekme button.on { color: var(--navy); border-bottom-color: var(--navy); }
.hesap-ileti { margin: 8px 0 0; font-size: 13px; min-height: 18px; }
.hesap-ileti.hata { color: var(--red); } .hesap-ileti.tamam { color: #1E7A5A; }
@media (max-width: 520px) { .hesap-g { grid-template-columns: 1fr; } }

.akis-l { list-style: none; margin: 0; padding: 0; }   /* iç kaydırma kaldırıldı (5 Kasım kararı): liste sayfa akışında, 'Daha fazla' düğmesiyle uzar */
.akis-l li { border-bottom: 1px solid var(--line); }
.akis-o { display: grid; gap: 2px; width: 100%; text-align: start; background: none; border: 0; padding: 9px 4px; color: var(--ink); font: inherit; }
button.akis-o:hover, button.akis-o:focus-visible { background: color-mix(in srgb, var(--navy) 8%, transparent); }
.akis-o b { font-weight: 600; } .akis-o span { color: var(--ink); font-size: 13px; } .akis-o time { color: var(--mut); font-size: 12px; }
button.akis-o b::after { content: " ›"; color: var(--navy); }
.akis-daha { display: block; margin: 10px auto 0; }

/* ---------- Teklif sayfası: ödeme planıyla aynı görünüm (içerik aynı) ---------- */
.pl.pl2 { padding: 40px 54px 24px; gap: 12px; font-family: "Segoe UI", Calibri, Carlito, Arial, sans-serif; color: #1F2128; }
.pl2-h { display: flex; align-items: center; justify-content: space-between; gap: 14px; border-bottom: 2px solid var(--slate); padding-bottom: 10px; height: auto; }
.pl2-h .pl-logo { height: 56px; }
.pl2-t { margin-inline-start: auto; text-align: end; }
.pl2-t h1 { margin: 0; font-size: 24px; letter-spacing: .14em; color: var(--slate); }
.pl2-t span { display: block; color: #77716B; font-size: 11px; line-height: 1.4; }
.pl2-t span b { color: #1F2128; font-size: 12px; }
.pl2-t .draft { color: var(--red); font-weight: 700; }
.pl2 .pl-note { font-size: 8.4px; line-height: 1.4; font-weight: 600; text-align: start; color: #55504A; margin: 2px 0 0; }
.pl2-kisi { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
.pl2-kisi:has(> div:nth-child(2):last-child) { grid-template-columns: 1fr 1fr; }

/* Hesabım: ayrı ekran */
.hesap-ekran { max-width: var(--sayfa-dar); margin: 0 auto; padding: 18px 16px 40px; }
.hesap-kutu { background: var(--panel); border: 1px solid var(--line); border-radius: var(--r-lg); padding: 20px 22px; }
.hesap-kutu h2 { margin: 0 0 12px; font-size: 20px; }
.hesap-kutu h2 small { font-weight: 400; color: var(--mut); font-size: 14px; }
.hesap-alt { display: flex; justify-content: flex-end; margin-top: 12px; }
.hesap-kutu .akis-l { max-height: none; }

.lg td.det { font-size: 12px; color: var(--mut); overflow-wrap: anywhere; max-width: 540px; }
.tk-bar #gPdf { margin-right: 10px; }

/* ---------- Teklif sayfası v2: gruplu özellikler, ortada büyük fiyat bloğu, büyük fotoğraf ---------- */
.pl.pl2 { padding: 34px 50px 22px; gap: 10px; }
.pl2-ozel { display: grid; gap: 6px; }
.pl2-ozel .g { display: grid; grid-template-columns: repeat(var(--n, 4), minmax(0, 1fr)); gap: 6px; }
.pl2-ozel .g > div { background: #F6F4F1; border-radius: 7px; padding: 5px 8px; text-align: center; min-width: 0; border-bottom: 2px solid var(--stone); }
.pl2-ozel span { display: block; font-size: 8.8px; color: #77716B; text-transform: uppercase; letter-spacing: .06em; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.pl2-ozel b { display: block; font-size: 13px; margin-top: 1px; overflow-wrap: anywhere; line-height: 1.2; }
.pl2-fiyat { width: 86%; margin: 4px auto 0; display: grid; gap: 7px; text-align: center; }
.pl2-fiyat > div { background: #F6F4F1; border-radius: 10px; padding: 8px 14px; }
.pl2-fiyat .iki { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; background: none; padding: 0; }
.pl2-fiyat .iki > div { background: #F6F4F1; border-radius: 10px; padding: 8px 12px; }
.pl2-fiyat span { display: block; font-size: 10.5px; color: #55504A; text-transform: uppercase; letter-spacing: .07em; font-weight: 600; }
.pl2-fiyat span em { font-style: normal; text-transform: none; letter-spacing: 0; margin-left: 6px; color: #1F2128; font-weight: 700; }
.pl2-fiyat b { display: block; font-size: 21px; font-variant-numeric: tabular-nums; margin-top: 2px; line-height: 1.15; }
.pl2-fiyat .liste b { font-size: 24px; color: #1F2128; }
.pl2-fiyat .liste.tek { padding: 12px; }
.pl2-fiyat .satis b { color: var(--slate); }
.pl2-fiyat .toplam { background: var(--slate); padding: 6px 14px; } .pl2-fiyat .toplam span, .pl2-fiyat .toplam b { color: #fff; } .pl2-fiyat .toplam b { font-size: 19px; }
.pl2-fiyat .pesin { background: var(--stone); border: 2px solid var(--slate); padding: 11px 14px; }
.pl2-fiyat .pesin b { font-size: 30px; color: var(--slate); }
.pl2-fiyat i.ind { font-style: normal; display: inline-block; margin-left: 8px; padding: 1px 8px; border-radius: 99px; background: #FDE3E1; color: var(--red); font-weight: 800; font-size: 12.5px; letter-spacing: 0; text-transform: none; vertical-align: 1px; }
.pl.pl2 .pl-photo { flex: 1 1 0; min-height: 230px; border-radius: 10px; overflow: hidden; margin-top: 2px; }
.pl.pl2 .pl-note { margin: 0; }
.pl2-kisi > div { background: #F6F4F1; border-radius: 7px; padding: 6px 10px; min-width: 0; }
.pl2-kisi span { display: block; font-size: 8.8px; color: #77716B; text-transform: uppercase; letter-spacing: .06em; }
.pl2-kisi b { display: block; font-size: 12.5px; margin-top: 1px; overflow-wrap: anywhere; line-height: 1.25; }

/* teklif fiyat bloğu: liste fiyatı tam genişlik; indirimli taksitli fiyat çubuğu hemen altında, indirim oranı rozetiyle */
.pl2-fiyat .liste { padding: 10px 14px; }
.pl2-fiyat .liste.tek { padding: 14px; }
.pl2-fiyat .toplam { padding: 8px 14px; } .pl2-fiyat .toplam b { font-size: 23px; }
.pl2-fiyat .toplam i.ind { background: #FDE3E1; color: var(--red); }

/* renkler yer değiştirdi: indirimli taksitli fiyat açık zeminli (çerçeveli), indirimli peşin fiyat koyu */
.pl2-fiyat .toplam { background: var(--stone); border: 2px solid var(--slate); padding: 8px 14px; }
.pl2-fiyat .toplam span { color: #55504A; } .pl2-fiyat .toplam b { color: var(--slate); font-size: 23px; }
.pl2-fiyat .pesin { background: var(--slate); border: 0; padding: 12px 14px; }
.pl2-fiyat .pesin span { color: #fff; } .pl2-fiyat .pesin b { color: #fff; font-size: 30px; }
.pl2-fiyat .pesin i.ind, .pl2-fiyat .toplam i.ind { background: #FDE3E1; color: var(--red); }

/* Belge metinleri ekranı */
.mt-app { max-width: var(--sayfa-w); margin: 0 auto; padding: 18px var(--sayfa-px) 50px; }
.mt-ust { display: flex; gap: 16px; justify-content: space-between; align-items: flex-start; margin-bottom: 12px; } .mt-ust h2 { margin: 0 0 4px; }
.mt-k { display: flex; align-items: center; gap: 12px; white-space: nowrap; } .mt-d { color: var(--red); font-size: 12px; }
.mt-grup { background: var(--panel); border: 1px solid var(--line); border-radius: var(--r-md); margin-bottom: 10px; padding: 4px 14px; }
.mt-grup summary { cursor: pointer; padding: 10px 0; } .mt-grup summary small { color: var(--mut); margin-left: 8px; }
.mt-satir { display: grid; gap: 4px; padding: 8px 0; border-top: 1px solid var(--line); }
.mt-satir label small { display: block; color: var(--mut); font-weight: 400; }
.mt-satir textarea { width: 100%; box-sizing: border-box; padding: 8px 10px; border: 1px solid var(--line); border-radius: var(--r-sm); font: inherit; resize: vertical; }
.mt-ceviri { margin-top: 24px; } .mt-ceviri h3 { margin: 0 0 4px; }
.mt-t input { width: 100%; box-sizing: border-box; padding: 5px 7px; border: 1px solid var(--line); border-radius: var(--r-sm); font: inherit; }
.mt-eks { color: var(--red); font-weight: 600; margin-left: 6px; } .mt-alt { margin-top: 10px; display: flex; justify-content: flex-end; }

/* ---------- Menü simgeleri ve menü konumu (üst / sol / sağ; Hesabım › Görünüm) ---------- */
.ik { flex: none; }

.govde { display: block; }
#app[data-menu="L"] .govde, #app[data-menu="R"] .govde { display: flex; align-items: flex-start; min-height: calc(100vh - 56px); min-height: calc(100dvh - 56px); }
#app[data-menu="L"] .govde { flex-direction: row-reverse; }
#app[data-menu="R"] .govde { flex-direction: row; }
#app[data-menu="L"] .govde > main, #app[data-menu="R"] .govde > main { flex: 1; min-width: 0; }

/* Yan menü */
.side { flex: none; width: 252px; position: sticky; top: 0; align-self: stretch; height: calc(100vh - 56px); height: calc(100dvh - 56px); max-height: calc(100vh - 56px); max-height: calc(100dvh - 56px); display: flex; flex-direction: column; background: #fff; transition: width .18s ease; }
#app[data-menu="L"] .side { border-right: 1px solid var(--line); }
#app[data-menu="R"] .side { border-left: 1px solid var(--line); }
.side-ust { flex: 1; overflow-y: auto; padding: 10px 10px 8px; display: flex; flex-direction: column; gap: 2px; scrollbar-width: thin; }
.side button { font: inherit; cursor: pointer; border: 0; background: none; color: var(--mut); }

.side .si span { line-height: 1.25; }

.side .si { position: relative; display: flex; align-items: center; gap: 10px; width: 100%; text-align: start; padding: 8px 10px; border-radius: var(--r-md); font-size: 13px; font-weight: 500; color: var(--ink); }
.side .si .ik { width: 16px; height: 16px; color: var(--mut); }
.side .si:hover { background: color-mix(in srgb, var(--navy) 7%, transparent); }
.side .si.on { background: color-mix(in srgb, var(--navy) 12%, transparent); color: var(--navy); font-weight: 700; }
.side .si.on .ik { color: var(--navy); }
.side .si.on::before { content: ""; position: absolute; left: -9px; top: 6px; bottom: 6px; width: 3px; border-radius: var(--r-sm); background: var(--navy); }
.side .bdg { margin-left: auto; flex: none; }
.side-tog { flex: none; display: flex; align-items: center; gap: 10px; width: 100%; padding: 13px 20px; border-bottom: 1px solid var(--line) !important; font-size: 12px; font-weight: 600; color: var(--mut); text-align: start; }
.side-tog:hover { color: var(--navy); background: color-mix(in srgb, var(--navy) 5%, transparent); }

/* Daraltılmış yan menü: yalnız simgeler; üstüne gelince alt menü açılır */

#app[data-dar="1"] .side { width: 68px; }
#app[data-dar="1"] .side-ust { padding: 10px 8px; overflow-x: visible; }

 #app[data-dar="1"] .side-tog > span { display: none; }
#app[data-dar="1"] .side-tog { justify-content: center; padding: 13px 0; }

 

@media (max-width: 860px) {
  #app[data-menu] .govde { display: block; min-height: 0; }
  #app[data-menu] .side:not(.side-cekmece){ display: none !important; }
}

/* Alt menünün alt menüsü (sayfa içi sekme / süzgeçler) */

/* Menü öğeleri gerçek bağlantıdır: sağ tıkla "yeni sekmede aç" çalışır */
 .side a { text-decoration: none; cursor: pointer; font: inherit; }

/* Fırsat detay sayfası */
.fd-ov { position: fixed; inset: 0; z-index: 90; background: rgba(15, 23, 42, .45); display: flex; justify-content: center; align-items: flex-start; padding: 4vh 12px; overflow-y: auto; }
.fd-k { width: min(980px, 100%); background: #fff; border-radius: var(--r-lg); padding: 20px 24px 22px; box-shadow: 0 24px 60px rgba(15, 23, 42, .35); }
.fd-ust { display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; margin-bottom: 12px; }
.fd-ust h2 { margin: 0 0 6px; font-size: 20px; }
.fd-st { background: var(--navy); color: #fff; }
.fd-iki { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-top: 8px; }
@media (max-width: 760px) { .fd-iki { grid-template-columns: 1fr; } }
.fd-k h4 { margin: 18px 0 6px; font-size: 14px; }
.fd-k dl { display: grid; grid-template-columns: 110px 1fr; gap: 4px 10px; margin: 0; }
.fd-k dt { color: var(--mut); font-size: 12px; } .fd-k dd { margin: 0; }
.fd-alt { display: flex; gap: 10px; align-items: center; justify-content: flex-end; margin-top: 20px; padding-top: 14px; border-top: 1px solid var(--line); }

.cr-fr { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; }
.cr-fb { width: 100%; text-align: start; display: flex; flex-direction: column; gap: 2px; padding: 9px 11px; background: #fff; border: 1px solid var(--line); border-left: 4px solid var(--navy); border-radius: var(--r-md); cursor: pointer; font: inherit; }
.cr-fb.kapali { border-left-color: var(--mut); }
.cr-fb:hover { border-color: var(--navy); background: color-mix(in srgb, var(--navy) 5%, #fff); }
.cr-fb span { color: var(--mut); font-size: 12px; } .cr-fb small { color: var(--mut); }
.cr-fb.acik small:first-letter { font-weight: 700; }

/* Satış onay formu: müşteri bilgileri bölümleri */
.sf-ctl .sf-alt { font-size: 11px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--navy); margin: 16px 0 8px; padding-top: 12px; border-top: 1px solid var(--line); }
.sf-ctl .sf-alt:first-of-type { border-top: 0; margin-top: 4px; padding-top: 0; }
.sf-ctl .sf-alt small { text-transform: none; letter-spacing: 0; font-weight: 500; color: var(--mut); margin-left: 6px; }
.sf-ctl .sf-iki { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.sf-ctl .sf-f { display: block; margin: 0 0 10px; min-width: 0; }
.sf-ctl .sf-f > span { display: block; font-size: 12px; font-weight: 600; color: var(--mut); margin-bottom: 4px; }
.sf-ctl .sf-f input, .sf-ctl .sf-f select, .sf-ctl .sf-f textarea { margin-bottom: 0; }
.sf-ctl .sf-ipucu { background: #f2f7ff; border: 1px solid #cfe0ff; border-radius: var(--r-md); padding: 9px 11px; font-size: 12px; line-height: 1.45; color: #27456e; margin: 0 0 10px; }
.sf-ctl .sf-musteri { background: #fff; border: 1px solid var(--line); border-radius: var(--r-md); padding: 12px 14px 4px; }
.sf-ctl .sf-musteri > legend { padding: 0 6px; }

/* Detay sayfaları: fırsat, müşteri, acenta */
.dt-sayfa { max-width: var(--sayfa-w); margin: 0 auto; padding: 18px var(--sayfa-px) 48px; }
.tk-app > .dt-sayfa, .dt-app > .dt-sayfa { max-width: none; padding-inline: 0; }   /* kök <main> zaten kabuğu ve yan boşluğu verir: çift boşluk olmasın */
.dt-ust { display: flex; align-items: flex-start; gap: 16px; margin-bottom: 14px; }
.dt-ust h2 { margin: 0 0 6px; font-size: 20px; }
.dt-ust .ts { margin-right: 8px; }
.dt-iki { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; align-items: start; }
@media (max-width: 860px) { .dt-iki { grid-template-columns: 1fr; } .dt-sayfa { padding: 12px 12px 40px; } }
.dt-b { background: #fff; border: 1px solid var(--line); border-radius: var(--r-lg); padding: 14px 18px 16px; margin-top: 16px; }
.dt-iki .dt-b { margin-top: 16px; }
.dt-b h3 { margin: 0 0 10px; font-size: 14px; }
.dt-b h4 { margin: 16px 0 6px; font-size: 13px; color: var(--mut); text-transform: uppercase; letter-spacing: .04em; }
.dt-dl { display: grid; grid-template-columns: 130px 1fr; gap: 6px 12px; margin: 0; }
.dt-dl dt { color: var(--mut); font-size: 12px; } .dt-dl dd { margin: 0; }
.dt-form { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.dt-form .tam { grid-column: 1 / -1; }
.dt-form input, .dt-form select, .dt-form textarea { display: block; width: 100%; padding: 8px 10px; border: 1px solid var(--line); border-radius: var(--r-md); font: inherit; box-sizing: border-box; margin-top: 4px; }
.dt-form input[type=checkbox], .dt-form input[type=radio] { display: inline-block; width: auto; margin: 0 8px 0 0; vertical-align: middle; }   /* onay kutusu tam genişliğe yayılıp etiketten uzaklaşmasın */
.dt-form .hv-chk { align-self: end; padding-bottom: 10px; display: flex; align-items: center; }
.dt-alt { display: flex; gap: 12px; align-items: center; margin-top: 22px; }
.cs-detay { margin-top: 18px; padding-top: 14px; border-top: 1px solid var(--line); display: flex; flex-direction: column; gap: 6px; }
.cs-detay .primary { text-align: center; text-decoration: none; display: block; }
a.cr-fb { text-decoration: none; color: inherit; }
.dt-app .tbl-x { margin-top: 4px; }

/* Kırmızı liste: 7+ gündür temassız fırsat, müşteri ve acentalar */
.kirmizi-bar { background: #b3001b; color: #fff; padding: 9px 20px; font-size: 14px; }
.kirmizi-bar a { color: #fff; text-decoration: none; display: block; }
.kirmizi-bar a:hover u { text-decoration: underline; }
.sg-app { background: #fff5f5; min-height: calc(100vh - 100px); min-height: calc(100dvh - 100px); padding: 0 0 40px; }
.sg-kapak { background: linear-gradient(90deg, #8f0016, #c8102e); color: #fff; padding: 22px 28px; display: flex; justify-content: space-between; align-items: center; gap: 16px; }
.sg-kapak h2 { margin: 0 0 4px; font-size: 24px; letter-spacing: .01em; }
.sg-kapak p { margin: 0; opacity: .95; }
.sg-kapak .ghost { background: rgba(255,255,255,.14); color: #fff; border-color: rgba(255,255,255,.5); }
.sg-app .rp-cards, .sg-app .stat-grid { padding: 18px 28px 6px; }
.sg-k { text-align: start; cursor: pointer; font: inherit; color: inherit; width: 100%; }   /* Soğuyanlar kartları standart .stat görünümünde (kutu.css); yalnız seçili hâl ayrı */
.stat.sg-k.on { border-color: var(--navy); box-shadow: 0 0 0 2px var(--navy); }
.stat.sg-k:hover:not(.on) { border-color: color-mix(in srgb, var(--navy) 40%, var(--line)); }
.sg-app .tk-bar, .sg-app .tbl-x, .sg-app > p { margin-left: 28px; margin-right: 28px; }
.sg-app table.tk thead th { background: #7a0013; color: #fff; }
.sg-app table.tk tbody tr { background: #fff; }
.sg-app table.tk tbody tr:hover { background: #fff0f1; }
.sg-gun { display: inline-block; padding: 2px 9px; border-radius: 999px; background: #fde7ea; color: #b3001b; font-weight: 700; font-size: 12px; }
.sg-gun.orta { background: #f8c1c8; }
.sg-gun.cok { background: #b3001b; color: #fff; }
.sg-temiz { padding: 28px; color: #1d7a46; font-weight: 600; }
.sg-kisi { font-weight: 600; font-size: 13px; }

/* Kırmızı liste: profesyonel görünüm */
.sg-etiket { display: inline-block; background: rgba(255,255,255,.2); border: 1px solid rgba(255,255,255,.45); padding: 1px 9px; border-radius: 999px; font-size: 11px; font-weight: 700; letter-spacing: .12em; margin-bottom: 6px; }
.sg-kapak-s { display: flex; gap: 8px; }
.sg-serit { display: flex; flex-wrap: wrap; align-items: center; gap: 18px; padding: 12px 28px; background: #fff; border-bottom: 1px solid #f0c9ce; }
.sg-sd { display: inline-flex; align-items: center; gap: 7px; font-weight: 600; font-size: 13px; }
.sg-sd i { width: 12px; height: 12px; border-radius: var(--r-sm); background: #f4a3ad; display: inline-block; }
.sg-sd.kritik i { background: #b3001b; } .sg-sd.orta i { background: #e0525f; }
.sg-sd b { font-size: 14px; color: #b3001b; }
.sg-suz { gap: 10px; align-items: center; }
.sg-suz input[type=search] { width: 280px; max-width: 100%; }
.sg-suz select { padding: 8px 10px; border: 1px solid var(--line); border-radius: var(--r-md); background: #fff; font: inherit; }
.sg-kisiler { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 28px 10px; }
.sg-kk { background: #fff; border: 1px solid #f0b4bb; border-radius: 999px; padding: 5px 12px; font: inherit; font-size: 13px; cursor: pointer; }
.sg-kk b { color: #b3001b; margin-left: 4px; }
.sg-kk.on { background: #b3001b; border-color: #b3001b; color: #fff; } .sg-kk.on b { color: #fff; }
.sg-arac { background: #fff; border: 1px solid #f0c9ce; border-radius: var(--r-md); padding: 8px 12px; }
.sg-bos { margin: 18px 28px; padding: 34px; text-align: center; background: #fff; border: 1px dashed #f0b4bb; border-radius: var(--r-lg); color: #1d7a46; font-weight: 600; }
.sg-t td { vertical-align: middle; }
.sg-s-kritik td:first-child, .sg-s-kritik td:nth-child(2) { box-shadow: inset 4px 0 0 #b3001b; }
.sg-s-orta td:first-child, .sg-s-orta td:nth-child(2) { box-shadow: inset 4px 0 0 #e0525f; }
.sg-s-hafif td:first-child, .sg-s-hafif td:nth-child(2) { box-shadow: inset 4px 0 0 #f4a3ad; }
.sg-gun.hafif { background: #fde7ea; color: #b3001b; }
.sg-gun.orta { background: #f8c1c8; color: #8f0016; }
.sg-gun.kritik { background: #b3001b; color: #fff; }
.sg-t .acts { white-space: nowrap; }
.sg-t .acts button + button { margin-left: 6px; }
.sg-app { padding-bottom: 60px; }

/* Koruma düzenleme penceresi ve onay bekleyen değişiklik kutuları */
.kr-dlg { width: min(460px, 94vw); }
.kr-dlg select, .kr-dlg textarea { display: block; width: 100%; margin-top: 5px; padding: 8px 10px; border: 1px solid var(--line); border-radius: var(--r-sm); font: inherit; background: #fff; }
.kr-acl { list-style: none; margin: 6px 0 0; padding: 0; max-height: 220px; overflow: auto; border: 1px solid var(--line); border-radius: var(--r-md); }
.kr-acl:empty { display: none; }
.kr-acl li { border-bottom: 1px solid #f0edea; padding: 0; } .kr-acl li:last-child { border-bottom: 0; }
.kr-acl li.help { padding: 8px 12px; }
.kr-acl button { width: 100%; text-align: start; background: none; border: 0; padding: 9px 12px; font: inherit; cursor: pointer; }
.kr-acl button:hover { background: #f7f4f1; }
.kr-ac-act { margin: 8px 0 2px; }
.dt-talep { background: #fff7e6; border: 1px solid #f1d49a; border-radius: var(--r-md); padding: 10px 14px; margin: 12px 0; font-size: 13px; }
.dt-talep ul { margin: 6px 0 0; padding-left: 18px; }
.dt-acts { margin: 10px 0; display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }

/* Hesabım › Görünüm: menü konumu seçimi */
.menu-sec { display: flex; flex-wrap: wrap; gap: 12px; margin: 8px 0 2px; }
.menu-sec button { display: flex; flex-direction: column; align-items: center; gap: 6px; background: #fff; border: 2px solid var(--line); border-radius: var(--r-md); padding: 10px 14px; font-weight: 600; color: var(--mut); cursor: pointer; }
.menu-sec button.on { border-color: var(--navy); color: var(--navy); }
.menu-sec button:focus-visible { outline: 2px solid var(--ink); outline-offset: 2px; }
.menu-sec svg { display: block; }
.hesap-alt-baslik { margin: 18px 0 2px; font-weight: 700; }

/* Tahsilat / Hakediş / Raporlar: sayfa içi sekmeler ve süzgeçler belirgin (dolu, büyük); PDF / Excel düğmeleri geri planda */
.th-app .chips, .rp-app .chips { gap: 6px; }
.th-app .chips .chip, .rp-app .chips .chip { padding: 9px 18px; font-size: 14px; font-weight: 700; color: var(--ink); background: #fff; border: 1.5px solid var(--line); border-radius: var(--r-md); cursor: pointer; }
.th-app .chips .chip:hover, .rp-app .chips .chip:hover { border-color: var(--navy); color: var(--navy); }
.th-app .chips .chip.on, .rp-app .chips .chip.on { background: var(--navy); border-color: var(--navy); color: #fff; box-shadow: none; }
.th-app .chips .chip.on b, .rp-app .chips .chip.on b { color: #fff; }
.th-app .tk-bar .ghost.sm, .rp-app .tk-bar .ghost.sm, .th-app .ghost.xls, .rp-app .ghost.xls { font-size: 12px; font-weight: 500; padding: 4px 9px; color: var(--mut); }

/* Raporlar: PDF düğmesi Excel düğmesinin hemen yanında (sağ uçta) */
.rp-app #rPdf { order: 10; margin-left: 0; }

/* Alt menüden seçim yapılınca açılır menüler kapanır (fare alandan çıkınca yeniden açılır) */

/* ======== Satış onay formu: teklif ve ödeme planı şablonuyla aynı görünüm (kart başlık + bilgi kartları + lacivert tablo başlıkları) ======== */
.pg.xf.v2 { padding: 28px 38px 30px; display: block; }
.xf.v2 .fx-h { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 22px; border-bottom: 2px solid var(--navy); padding-bottom: 12px; }
.xf.v2 .fx-h img { height: 54px; display: block; }
.xf.v2 .fx-ttl span { display: block; font-size: 11px; letter-spacing: .16em; color: #77716B; font-weight: 600; text-transform: uppercase; }
.xf.v2 .fx-ttl h1 { margin: 2px 0 0; font-size: 24px; letter-spacing: .1em; color: var(--navy); }
.xf.v2 .fx-meta { margin: 0; display: grid; grid-template-columns: auto auto; gap: 2px 14px; font-size: 11px; }
.xf.v2 .fx-meta > div { display: contents; }
.xf.v2 .fx-meta dt { color: #77716B; text-align: right; } .xf.v2 .fx-meta dd { margin: 0; font-weight: 600; color: #1F2128; }
.xf.v2 .fx-g { display: grid; grid-template-columns: repeat(10, 1fr); gap: 8px; margin-top: 12px; }
.xf.v2 .fx-c { background: #F6F4F1; border-radius: var(--r-md); padding: 7px 10px 8px; grid-column: span 1; min-width: 0; border-left: 3px solid transparent; }
.xf.v2 .fx-g .fx-c { grid-column: span 1; }
.xf.v2 .fx-c.w2 { grid-column: span 2; }
.xf.v2 .fx-c span { display: block; font-size: 11px; color: #77716B; text-transform: uppercase; letter-spacing: .04em; line-height: 1.25; min-height: 22px; }
.xf.v2 .fx-c span small { display: block; font-size: 11px; text-transform: none; letter-spacing: 0; }
.xf.v2 .fx-c b { display: block; font-size: 14px; margin-top: 3px; color: #1F2128; overflow-wrap: anywhere; line-height: 1.2; }
.xf.v2 .fx-c.y { background: #FFF8E3; border-left-color: #E8A317; }
.xf.v2 .fx-c.r b { color: #B42318; }
.xf.v2 .fx-c.g { background: #E3F1E8; border-left-color: #1D6B3F; } .xf.v2 .fx-c.g b { color: #1D6B3F; }
.xf.v2 .fx-g:nth-of-type(2) { grid-template-columns: repeat(9, 1fr); }
.xf.v2 .fx-g:nth-of-type(1) { grid-template-columns: 1fr 1.2fr 2fr 1fr 1fr 1fr 1fr 1.2fr 1.2fr; }
.xf.v2 .fx-g:nth-of-type(1) .fx-c.w2 { grid-column: auto; }
.xf.v2 table { border-collapse: separate; border-spacing: 0; }
.xf.v2 .xf-t td { border: 0; border-bottom: 1px solid #E7E3DF; }
.xf.v2 .xf-t .hd td { background: var(--navy); border-bottom: 0; color: #fff; }
.xf.v2 .xf-band { margin-top: 12px; border-radius: var(--r-md) var(--r-md) 0 0; }
.xf.v2 .xf-t.num .hd td { background: #EFEDF7; color: #3F4250; border-bottom: 1px solid #D5D0CA; }
.xf.v2 .xf-t.num tr.on td { background: #FFF5D1; }
.xf.v2 .xf-t .nt { background: #F6F4F1; border-radius: var(--r-md) 0 0 var(--r-md); }
.xf.v2 .xf-t.onay { margin-top: 12px; }
.xf.v2 .xf-t.onay td { border: 0; border-top: 0; }
.xf.v2 .xf-t.onay .hd td { border-radius: var(--r-md) var(--r-md) 0 0; }
.xf.v2 .xf-t.onay .sig td { border-bottom: 1.5px solid #1F2128; height: 54px; }
.xf.v2 .xf-t.onay td:not(:first-child) { border-left: 18px solid #fff; }
.xf.v2 .xf-st { left: 38px; }
/* satış formu: önizleme sayfanın üstünde başlar ve form kaydırılırken ekranda kalır */
.sfstage { justify-content: flex-start; align-self: start; position: sticky; top: 56px; max-height: calc(100vh - 56px); max-height: calc(100dvh - 56px); }
@media (max-width: 860px) { .sfstage { position: static; max-height: none; } }

/* Bildirim merkezi (zil) */
.zil-btn { position: relative; }
.zil-btn.var .ik { color: #f6c453; }
.zil-say { position: absolute; top: -5px; right: -6px; background: #c62828; color: #fff; border-radius: 999px; font-size: 11px; font-weight: 700; min-width: 16px; height: 16px; line-height: 16px; text-align: center; padding: 0 3px; }
.zil-panel { position: fixed; top: 52px; right: 12px; width: min(380px, calc(100vw - 24px)); max-height: 70vh; overflow: auto; background: #fff; color: #1F2128; border: 1px solid var(--line, #ddd); border-radius: var(--r-lg); box-shadow: 0 16px 48px rgba(0,0,0,.22); z-index: 1000; }
.zil-ust { display: flex; justify-content: space-between; align-items: center; padding: 12px 14px; border-bottom: 1px solid #eee; position: sticky; top: 0; background: #fff; }
.zil-l { list-style: none; margin: 0; padding: 0; }
.zil-l li { display: flex; gap: 10px; padding: 11px 14px; border-bottom: 1px solid #f1eeea; cursor: pointer; }
.zil-l li:hover { background: #faf8f6; }
.zil-l li.yeni { background: #fff8e8; }
.zil-l li.bos { cursor: default; color: #77716B; justify-content: center; }
.zil-l small { display: block; color: #55504A; margin-top: 2px; line-height: 1.35; }
.zil-l em { display: block; font-style: normal; font-size: 11px; color: var(--mut); margin-top: 3px; }
.zil-i { font-size: 18px; width: 24px; text-align: center; }
.zil-alt { padding: 10px 14px; border-top: 1px solid #eee; }

.mbar { display: none; }
@media (max-width: 860px) { .mbar { display: flex; position: fixed; left: 0; right: 0; bottom: 0; z-index: 40; background: var(--card, #fff); border-top: 1px solid var(--line, #dde3ea); padding-bottom: env(safe-area-inset-bottom); }
  .mbar a { flex: 1; display: flex; flex-direction: column; align-items: center; gap: 2px; padding: 8px 4px; font-size: 11px; color: var(--mut, #667); text-decoration: none; }
  .mbar a.on { color: var(--navy, #123); font-weight: 600; } .mbar svg { width: 20px; height: 20px; }
  #app main, .govde { padding-bottom: 64px; } }

/* iPad / dar ekran: üst menü sekmeleri ve kullanıcı alanı yan yana sığmazsa sekmeler ikinci satıra iner, yatay kayar; sayfa yana kaymaz */

html, body { max-width: 100vw; overflow-x: clip; }
@media (max-width: 1060px) {
  .top { flex-wrap: wrap; height: auto; padding: 6px 14px; gap: 4px 14px; }
  
  
  .top .who { margin-left: auto; min-width: 0; flex-wrap: wrap; justify-content: flex-end; }
}

/* ---- İletişim modülleri: ekip sohbeti, e-posta, WhatsApp (mevcut kart / çizgi diline uyar) ---- */
.sh { display: grid; grid-template-columns: 300px 1fr; gap: 0; background: var(--panel); border: 1px solid var(--line); border-radius: var(--r-lg); height: calc(100vh - 150px); height: calc(100dvh - 150px); min-height: 460px; overflow: hidden; }
.sh-sol { border-right: 1px solid var(--line); display: flex; flex-direction: column; min-height: 0; }
.sh-ust, .sh-baslik { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 10px 12px; border-bottom: 1px solid var(--line); }
.sh-btns { display: flex; gap: 6px; }
.sh-ara { margin: 8px 10px; padding: 8px 10px; border: 1px solid var(--line); border-radius: var(--r-sm); }
.sh-liste { overflow: auto; flex: 1; }
.sh-k { display: flex; align-items: center; gap: 8px; width: 100%; text-align: start; padding: 10px 12px; background: none; border: 0; border-bottom: 1px solid #F0EDEA; }
.sh-k:hover, .sh-k.on { background: #F5F3F1; }
.sh-kad { display: flex; flex-direction: column; min-width: 0; flex: 1; }
.sh-kad b { font-weight: 600; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.sh-kad small { color: var(--mut); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.sh-on, .sh-off { display: inline-block; width: 9px; height: 9px; border-radius: 50%; flex: none; }
.sh-on { background: #2E9E5B; } .sh-off { background: #C9C4BF; }
.sh-sag { display: flex; flex-direction: column; min-height: 0; min-width: 0; }
.sh-bt { flex: 1; min-width: 0; display: flex; flex-direction: column; } .sh-bt small { color: var(--mut); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.sh-geri { display: none; }
.sh-mesajlar { flex: 1; overflow: auto; padding: 12px 14px; display: flex; flex-direction: column; gap: 6px; background: #FAF9F7; }
.sh-mesajlar .sh-m { display: flex; } .sh-mesajlar .sh-m.ben { justify-content: flex-end; }   /* .sh.sh-m (mobil: konuşma açık) ile karışmasın */
.sh-b { max-width: min(560px, 82%); background: #fff; border: 1px solid var(--line); border-radius: var(--r-md); padding: 7px 10px; overflow-wrap: anywhere; }
.sh-m.ben .sh-b { background: #E8EAF6; border-color: #C9CDE8; }
.sh-kim { display: block; color: var(--navy); font-weight: 600; font-size: 12px; }
.sh-t { display: block; color: var(--mut); font-size: 11px; margin-top: 2px; text-align: right; }
.sh-act { display: none; text-align: right; } .sh-b:hover .sh-act { display: block; }
.sh-act .link { font-size: 11px; margin-left: 8px; }
.sh-gun { text-align: center; color: var(--mut); font-size: 12px; margin: 8px 0 2px; }
.sh-sis { text-align: center; color: var(--mut); font-size: 12px; font-style: italic; }
.sh-silik { color: var(--mut); }
.sh-dosya { display: block; margin-top: 4px; color: var(--navy); }
.sh-yaziyor { min-height: 18px; padding: 0 14px; font-size: 12px; color: var(--mut); }
.sh-yaz { display: flex; gap: 8px; padding: 10px 12px; border-top: 1px solid var(--line); align-items: flex-end; }
.sh-yaz textarea { flex: 1; resize: none; padding: 8px 10px; border: 1px solid var(--line); border-radius: var(--r-md); font: inherit; max-height: 140px; }
.sh-ek { cursor: pointer; font-size: 20px; padding: 4px 6px; }
.sh-eski { align-self: center; }
.sh-bos { text-align: center; margin: auto; }
.sh-modal h2 { margin: 0 0 10px; font-size: 18px; }
.sh-modal #shGAd, .sh-modal select { width: 100%; padding: 8px 10px; border: 1px solid var(--line); border-radius: var(--r-sm); margin-bottom: 8px; }
.sh-sec { max-height: 280px; overflow: auto; margin: 6px 0; } .sh-sec label { display: flex; align-items: center; gap: 8px; padding: 6px 2px; font-weight: 400; }
.sh-uye { display: flex; justify-content: space-between; padding: 6px 2px; border-bottom: 1px solid #F0EDEA; }
@media (max-width: 760px) {
  .sh { grid-template-columns: 1fr; height: calc(100vh - 300px); height: calc(100dvh - 300px); min-height: 360px; }
  .sh .sh-sag { display: none; } .sh.sh-m .sh-sag { display: flex; } .sh.sh-m .sh-sol { display: none; }
  .sh-geri { display: inline-flex; } .sh-b { max-width: 90%; }
}
/* kayıt kartlarına gömülü iletişim bölümü */
.ik-sekmeler { display: flex; gap: 6px; margin-bottom: 8px; flex-wrap: wrap; }
.ik-mini { max-height: 360px; overflow: auto; background: #FAF9F7; border: 1px solid var(--line); border-radius: var(--r-md); padding: 8px; }
.ik-yaz { display: flex; gap: 8px; margin-top: 8px; } .ik-yaz input, .ik-yaz textarea { flex: 1; padding: 8px 10px; border: 1px solid var(--line); border-radius: var(--r-sm); font: inherit; }
.ik-olay { padding: 7px 4px; border-bottom: 1px solid #F0EDEA; display: flex; gap: 8px; } .ik-olay small { color: var(--mut); }
/* e-posta ve WhatsApp ortak yerleşim */
.ep, .wa { display: grid; grid-template-columns: minmax(170px, 220px) minmax(240px, 340px) minmax(0, 1fr); background: var(--panel); border: 1px solid var(--line); border-radius: var(--r-lg); height: calc(100vh - 150px); height: calc(100dvh - 150px); min-height: 480px; overflow: hidden; }
.wa { grid-template-columns: minmax(240px, 340px) minmax(0, 1fr); }
.ep > *, .wa > * { min-height: 0; min-width: 0; overflow: auto; border-right: 1px solid var(--line); } .ep > *:last-child, .wa > *:last-child { border-right: 0; }
.ep-k, .ep-m, .wa-k { display: block; width: 100%; text-align: start; padding: 10px 12px; background: none; border: 0; border-bottom: 1px solid #F0EDEA; }
.ep-k:hover, .ep-k.on, .ep-m:hover, .ep-m.on, .wa-k:hover, .wa-k.on { background: #F5F3F1; }
.ep-m b, .wa-k b { display: block; } .ep-m small, .wa-k small { color: var(--mut); display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ep-m.yeni b, .wa-k.yeni b { color: var(--navy); }
.ep-okuma { padding: 14px 18px; } .ep-okuma iframe { width: 100%; min-height: 120px; border: 1px solid var(--line); border-radius: var(--r-md); }
.ep-form label { display: block; font-size: 12px; font-weight: 600; margin-top: 8px; } .ep-form input, .ep-form textarea, .ep-form select { width: 100%; padding: 8px 10px; border: 1px solid var(--line); border-radius: var(--r-sm); font: inherit; }
.wa-sohbet { display: flex; flex-direction: column; padding: 0; } .wa-msj { flex: 1; overflow: auto; padding: 12px 14px; background: #F4F1EC; display: flex; flex-direction: column; gap: 6px; }
.wa-b { max-width: min(520px, 80%); padding: 7px 10px; border-radius: var(--r-md); background: #fff; border: 1px solid var(--line); overflow-wrap: anywhere; } .wa-b.giden { align-self: flex-end; background: #DCF3D6; border-color: #BFE3B5; } .wa-b.not { background: #FFF6D6; border-color: #E8D48A; align-self: center; }
.wa-uyari { background: #FFF6D6; border-bottom: 1px solid #E8D48A; padding: 8px 12px; font-size: 13px; }
@media (max-width: 900px) { .ep, .wa { grid-template-columns: minmax(0, 1fr); height: auto; } .ep > *, .wa > * { border-right: 0; border-bottom: 1px solid var(--line); max-height: 60vh; } }
/* sohbet: ekran içi bildirim ve bildirim izni şeridi */
.sh-toast { position: fixed; right: 18px; bottom: 18px; z-index: 9999; max-width: min(360px, calc(100vw - 36px)); background: #fff; border: 1px solid var(--line); border-left: 4px solid var(--navy); border-radius: var(--r-md); box-shadow: 0 10px 30px rgba(0,0,0,.18);
  display: none; align-items: stretch; }
.sh-toast.acik { display: flex; animation: sh-gel .18s ease-out; }
.sh-toast button { flex: 1; text-align: start; background: none; border: 0; padding: 10px 12px; display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.sh-toast b { color: var(--navy); } .sh-toast span { color: var(--ink); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.sh-toast .sh-x { cursor: pointer; padding: 6px 10px; font-style: normal; color: var(--mut); font-size: 18px; }
@keyframes sh-gel { from { transform: translateY(12px); opacity: 0; } to { transform: none; opacity: 1; } }
.sh-izin { display: flex; gap: 8px; align-items: center; background: #FFF6D6; border-bottom: 1px solid #E8D48A; padding: 8px 10px; font-size: 12px; } .sh-izin span { flex: 1; }
@media (max-width: 760px) { .sh-toast { right: 10px; left: 10px; bottom: 74px; max-width: none; } }
.ia-satir { display: flex; gap: 10px; align-items: flex-start; padding: 9px 0; border-bottom: 1px solid #F0EDEA; font-weight: 400; cursor: pointer; }
.ia-satir input { margin-top: 3px; } .ia-satir span { display: flex; flex-direction: column; } .ia-satir b { font-weight: 600; }
.ia-alan { display: block; margin: 12px 0; font-weight: 600; font-size: 12px; }
.ia-alan input, .ia-alan select { display: block; margin-top: 4px; padding: 8px 10px; border: 1px solid var(--line); border-radius: var(--r-sm); width: min(360px, 100%); font: inherit; font-weight: 400; }
/* sohbet: tam genişlik, ekranı doldurur; tam ekran kipi */
.sh-app { max-width: none; padding: 8px 10px 10px; }
.sh { height: calc(100dvh - 170px); min-height: 360px; grid-template-columns: minmax(260px, 340px) 1fr; }
.sh:fullscreen { height: 100vh !important; border-radius: 0; border: 0; background: #fff; }
.sh:fullscreen .sh-mesajlar { background: #FAF9F7; }
.dlg.ik-dlg { width: min(560px, 94vw); max-height: 90vh; overflow: auto; }
.ik-dlg h2 { margin: 0 0 12px; font-size: 18px; }
.ik-dlg label { display: block; font-size: 12px; font-weight: 600; margin: 10px 0 0; text-align: start; }
.ik-dlg input:not([type=checkbox]):not([type=radio]):not([type=file]), .ik-dlg select, .ik-dlg textarea { display: block; width: 100%; margin-top: 5px; padding: 8px 10px; border: 1px solid var(--line); border-radius: var(--r-sm); font: inherit; font-weight: 400; }
.ik-dlg .sh-sec { max-height: 340px; overflow: auto; margin: 10px 0; border: 1px solid var(--line); border-radius: var(--r-md); }
.ik-dlg .sh-sec label { display: flex; align-items: center; justify-content: flex-start; gap: 10px; font-weight: 400; font-size: 14px; margin: 0; padding: 9px 12px; border-bottom: 1px solid #F0EDEA; cursor: pointer; text-align: left; }
.ik-dlg .sh-sec label:last-child { border-bottom: 0; } .ik-dlg .sh-sec label:hover { background: #F5F3F1; }
.ik-dlg .sh-sec input[type=checkbox], .ik-dlg .sh-sec input[type=radio] { width: auto; margin: 0; flex: none; }
.ik-dlg .sh-uye { padding: 9px 12px; border-bottom: 1px solid #F0EDEA; align-items: center; } .ik-dlg .sh-uye:last-child { border-bottom: 0; }
.ik-dlg .dt-acts { justify-content: flex-end; margin-top: 14px; }
.ik-dlg .ik-olay { align-items: center; }
.ik-dlg .sh-modal, .ik-dlg .ep-form { padding: 20px 22px; }
.sh-sol .sh-ust { flex-direction: column; align-items: stretch; gap: 8px; }
.sh-sol .sh-ust .sh-btns { flex-wrap: wrap; justify-content: flex-start; }
.sh-sol .sh-ust .sh-btns .ghost { white-space: nowrap; }
/* sohbet: boş ekran (kişi kartları, son konuşmalar) */
.sh-hos { padding: 28px 32px; overflow: auto; max-width: 980px; width: 100%; margin: 0 auto; }
.sh-hos-ust { text-align: center; margin-bottom: 18px; } .sh-hos-ik { font-size: 40px; line-height: 1; } .sh-hos h2 { margin: 8px 0 4px; font-size: 20px; } .sh-hos p { color: var(--mut); margin: 0; }
.sh-hos h3 { margin: 22px 0 10px; font-size: 13px; color: var(--mut); text-transform: uppercase; letter-spacing: .04em; }
.sh-hos-liste { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 8px; }
.sh-hos-k { display: flex; align-items: center; gap: 10px; text-align: start; padding: 10px 12px; background: #fff; border: 1px solid var(--line); border-radius: var(--r-md); }
.sh-hos-k:hover, .sh-hos-kisi:hover { border-color: var(--navy); box-shadow: 0 2px 8px rgba(52,54,107,.12); }
.sh-hos-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 10px; }
.sh-hos-kisi { display: flex; flex-direction: column; align-items: center; gap: 4px; padding: 16px 10px; background: #fff; border: 1px solid var(--line); border-radius: var(--r-lg); }
.sh-hos-kisi small { color: var(--mut); }
.sh-av { position: relative; width: 42px; height: 42px; flex: none; border-radius: 50%; background: #E8EAF6; color: var(--navy); display: inline-flex; align-items: center; justify-content: center; font-weight: 700; }
.sh-av i { position: absolute; right: 0; bottom: 0; border: 2px solid #fff; width: 12px; height: 12px; }
/* iletişim yönetim sayfaları */
.ym { padding: 16px var(--sayfa-px) 40px; max-width: var(--sayfa-w); margin: 0 auto; display: flex; flex-direction: column; gap: 14px; }
.ym-baslik { display: flex; justify-content: space-between; align-items: flex-start; gap: 16px; flex-wrap: wrap; } .ym-baslik h2 { margin: 0 0 4px; } .ym-baslik p { margin: 0; max-width: 68ch; }
.ym-sag { display: flex; gap: 8px; flex-wrap: wrap; }
.ym-r { display: inline-block; padding: 2px 8px; border-radius: var(--r-md); font-size: 12px; font-weight: 600; margin-right: 4px; }
.ym-yesil { background: #E3F4E8; color: #1E6B3A; } .ym-kirmizi { background: #FBE3E3; color: #9B1C1C; } .ym-sari { background: #FFF3CD; color: #7A5B00; } .ym-gri { background: #ECEAE7; color: #555; }
.ym-eylem { white-space: nowrap; } .ym-eylem .link { margin-right: 10px; }
.ym-kart h3 { margin: 0 0 12px; } .ym-kart h4, .ym h4 { margin: 18px 0 8px; font-size: 13px; color: var(--mut); text-transform: uppercase; letter-spacing: .04em; }
.ym-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 16px; }
.ym-alan { display: flex; flex-direction: column; gap: 5px; font-size: 12px; font-weight: 600; } .ym-alan > span { color: var(--ink); }
.ym-alan input, .ym-alan select, .ym-alan textarea { padding: 9px 11px; border: 1px solid var(--line); border-radius: var(--r-sm); font: inherit; font-weight: 400; width: 100%; background: #fff; }
.ym-alan small { font-weight: 400; } .ym-tam { grid-column: 1 / -1; }
.ym-sec { max-height: 220px; overflow: auto; border: 1px solid var(--line); border-radius: var(--r-md); margin-bottom: 12px; }
.ym-sec label { display: flex; gap: 10px; align-items: center; padding: 8px 12px; border-bottom: 1px solid #F0EDEA; font-weight: 400; cursor: pointer; } .ym-sec label:last-child { border-bottom: 0; }
.ym-dns { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 12px; } .ym-dns > div { border: 1px solid var(--line); border-radius: var(--r-md); padding: 12px; display: flex; flex-direction: column; gap: 6px; } .ym-dns small { color: var(--mut); word-break: break-word; }
.ym-diller { display: flex; gap: 6px; flex-wrap: wrap; } .ym-diller .on { background: #E8EAF6; border-color: var(--navy); }
.ym-iki { display: grid; grid-template-columns: 300px 1fr; gap: 14px; align-items: start; }
.ym-liste { padding: 0; overflow: hidden; } .ym-oge { display: block; width: 100%; text-align: start; padding: 11px 14px; background: none; border: 0; border-bottom: 1px solid #F0EDEA; } .ym-oge:hover, .ym-oge.on { background: #F5F3F1; } .ym-oge b, .ym-oge small { display: block; } .ym-oge small { color: var(--mut); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ym-deg { display: flex; gap: 6px; flex-wrap: wrap; align-items: center; margin: 10px 0; }
.ym-onizleme { border: 1px dashed var(--line); border-radius: var(--r-md); padding: 12px 14px; background: #FAF9F7; }
.ym-wh { margin-top: 14px; padding: 10px 12px; background: #FAF9F7; border-radius: var(--r-md); font-size: 13px; }
.ym-adim { margin: 0; padding-left: 20px; line-height: 1.7; }
@media (max-width: 860px) { .ym-grid { grid-template-columns: 1fr; } .ym-iki { grid-template-columns: 1fr; } .ym { padding: 10px; } }
/* hedefler: yeni sayfa düzeni */
.hd2 { padding: 16px var(--sayfa-px) 40px; max-width: var(--sayfa-w); margin: 0 auto; display: flex; flex-direction: column; gap: 14px; }
.hd-bas h2 { margin: 0 0 4px; } .hd-bas p { margin: 0; color: var(--mut); max-width: 68ch; }
.hd-arac { display: flex; gap: 14px; align-items: center; flex-wrap: wrap; }
.hd-seg { display: inline-flex; background: #fff; border: 1px solid var(--line); border-radius: var(--r-md); padding: 3px; gap: 2px; }
.hd-seg button { background: none; border: 0; padding: 8px 16px; border-radius: var(--r-md); font-weight: 600; color: var(--mut); }
.hd-seg button.on { background: var(--navy); color: #fff; } .hd-seg button:not(.on):hover { background: #F5F3F1; color: var(--ink); }
.hd-et { color: var(--mut); font-size: 13px; }
.hd-ozet { display: flex; gap: 22px; align-items: center; background: #fff; border: 1px solid var(--line); border-radius: var(--r-lg); padding: 18px 22px; flex-wrap: wrap; }
.hd-uyum2 { min-width: 150px; text-align: center; padding: 14px 22px; border-radius: var(--r-lg); } .hd-uyum2 b { display: block; font-size: 40px; line-height: 1.1; } .hd-uyum2 span { font-size: 12px; text-transform: uppercase; letter-spacing: .06em; }
.hd-uyum2.hd-ok { background: #E3F4E8; color: #1E6B3A; } .hd-uyum2.hd-orta { background: #FFF3CD; color: #7A5B00; } .hd-uyum2.hd-dusuk { background: #FBE3E3; color: #9B1C1C; } .hd-uyum2.hd-yok { background: #ECEAE7; color: #555; }
.hd-ozet-sag { display: flex; gap: 28px; flex-wrap: wrap; } .hd-ozet-sag small { display: block; color: var(--mut); font-size: 12px; } .hd-ozet-sag b { font-size: 20px; } .hd-ozet-sag b.hd-k { font-size: 14px; font-weight: 600; }
.hd-kartlar { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 12px; }
.hd-kart { background: #fff; border: 1px solid var(--line); border-radius: var(--r-lg); padding: 14px 16px; border-top: 4px solid #C9C4BF; }
.hd-kart.hd-ok { border-top-color: #2E9E5B; } .hd-kart.hd-orta { border-top-color: #E8A317; } .hd-kart.hd-dusuk { border-top-color: #C0392B; }
.hd-kart header { display: flex; justify-content: space-between; align-items: baseline; gap: 8px; color: var(--mut); font-size: 13px; } .hd-kart header b { color: var(--ink); font-size: 16px; }
.hd-say { margin: 8px 0 10px; } .hd-say strong { font-size: 28px; } .hd-say small { color: var(--mut); font-size: 14px; }
.hd2 .hd-track { height: 8px; background: #ECEAE7; border-radius: var(--r-sm); overflow: hidden; } .hd2 .hd-fill { height: 100%; border-radius: var(--r-sm); background: #C9C4BF; }
.hd2 .hd-fill.hd-ok { background: #2E9E5B; } .hd2 .hd-fill.hd-orta { background: #E8A317; } .hd2 .hd-fill.hd-dusuk { background: #C0392B; }
.hd-kpi { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 12px; }
.hd-kpi > div { background: #fff; border: 1px solid var(--line); border-radius: var(--r-lg); padding: 12px 16px; } .hd-kpi small { display: block; color: var(--mut); font-size: 12px; } .hd-kpi b { font-size: 24px; }
.hd-ok-y { color: #1E6B3A; } .hd-orta-y { color: #7A5B00; } .hd-dusuk-y { color: #9B1C1C; }
.hd2-t th.n, .hd2-t td.n { text-align: right; } .hd-sira { width: 38px; color: var(--mut); text-align: center !important; }
.hd-hucre { display: flex; flex-direction: column; align-items: flex-end; gap: 4px; } .hd-mini { display: block; width: 90px; height: 5px; background: #ECEAE7; border-radius: var(--r-sm); overflow: hidden; } .hd-mini s { display: block; height: 100%; text-decoration: none; background: #C9C4BF; }
.hd2 .hd-pill { display: inline-block; padding: 2px 10px; border-radius: 999px; font-weight: 700; font-size: 12px; }
.hd2 .hd-pill.hd-ok { background: #E3F4E8; color: #1E6B3A; } .hd2 .hd-pill.hd-orta { background: #FFF3CD; color: #7A5B00; } .hd2 .hd-pill.hd-dusuk { background: #FBE3E3; color: #9B1C1C; } .hd2 .hd-pill.hd-yok { background: #ECEAE7; color: #666; }
.hd-bolum { background: #fff; border: 1px solid var(--line); border-radius: var(--r-lg); padding: 16px 18px; } .hd-bolum h3 { margin: 0 0 4px; } .hd-bolum > p { margin: 0 0 10px; }
.hd2-ayar input[type=number] { width: 84px; padding: 7px 8px; border: 1px solid var(--line); border-radius: var(--r-sm); text-align: right; font: inherit; }
.hd-bos { background: #fff; border: 1px dashed var(--line); border-radius: var(--r-lg); padding: 30px; text-align: center; color: var(--mut); }
@media (max-width: 760px) { .hd2 { padding: 10px; } .hd-seg button { padding: 7px 10px; } }

/* ======== Menü ve arama düzeni (üst çubuk · yan menü · çekmece · kullanıcı menüsü · genel arama) ======== */
#app { --top-h: 56px; }
.top { position: sticky; top: 0; z-index: 50; }

.side { top: var(--top-h); height: calc(100vh - var(--top-h)); height: calc(100dvh - var(--top-h)); max-height: calc(100vh - var(--top-h)); max-height: calc(100dvh - var(--top-h)); }
.mnu-btn { display: none; align-items: center; justify-content: center; width: 38px; height: 38px; border: 0; border-radius: var(--r-md); background: transparent; color: var(--bar-yazi, #fff); cursor: pointer; }
.mnu-btn:hover { background: color-mix(in srgb, var(--bar-yazi, #fff) 14%, transparent); }

.top .who { margin-left: auto; gap: 10px; flex: none; }   /* arama, bildirim ve hesap menüsü her zaman sayfanın en sağında */
.who button.link { background: none; border: 0; cursor: pointer; padding: 6px; border-radius: var(--r-md); display: inline-flex; align-items: center; }
.who button.link:hover { background: color-mix(in srgb, var(--bar-yazi, #fff) 14%, transparent); }

/* Üst çubukta arama alanı */
.ara-alan:focus-visible, .um-btn:focus-visible, .mnu-btn:focus-visible { outline: 2px solid var(--bar-yazi, #fff); outline-offset: 2px; }

/* Kullanıcı menüsü */
.um { position: relative; }
.um-btn { display: inline-flex; align-items: center; gap: 8px; height: 36px; padding: 0 8px 0 4px; border: 0; border-radius: 999px; background: transparent; color: var(--bar-yazi, #fff); font: inherit; font-size: 13px; cursor: pointer; }
.um-btn:hover, .um-btn[aria-expanded="true"] { background: color-mix(in srgb, var(--bar-yazi, #fff) 14%, transparent); }
.um-av { display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; background: var(--stone, #d9d4cf); color: var(--slate, #333); font-size: 11px; font-weight: 800; letter-spacing: .02em; }
.um-ad { max-width: 150px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-weight: 600; }
.um-menu { position: absolute; right: 0; top: calc(100% + 8px); z-index: 1000; min-width: 240px; padding: 6px; background: var(--panel, #fff); color: var(--ink, #1f2128); border: 1px solid var(--line, #ddd); border-radius: var(--r-lg); box-shadow: 0 16px 40px rgba(15, 23, 42, .22); }
.um-menu[hidden] { display: none; }
.um-ust { padding: 10px 12px 10px; margin-bottom: 4px; border-bottom: 1px solid var(--line, #eee); }
.um-ust b { display: block; font-size: 14px; }
.um-ust small { color: var(--mut, #667); font-size: 12px; }
.um-menu button[role=menuitem] { display: flex; align-items: center; gap: 10px; width: 100%; padding: 9px 12px; border: 0; border-radius: var(--r-md); background: none; color: inherit; font: inherit; font-size: 13px; text-align: left; cursor: pointer; }
.um-menu button[role=menuitem]:hover, .um-menu button[role=menuitem]:focus-visible { background: color-mix(in srgb, var(--navy, #123) 9%, transparent); outline: none; }
.um-menu .ik { color: var(--mut, #667); }
.um-dil { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 6px 12px; font-size: 13px; }
.um-dil select.dil { background: var(--panel, #fff); color: var(--ink, #1f2128); border: 1px solid var(--line, #ddd); border-radius: var(--r-sm); padding: 4px 6px; font: inherit; font-size: 13px; }
.um-menu .um-cik { margin-top: 4px; border-top: 1px solid var(--line, #eee); border-radius: 0 0 var(--r-md) var(--r-md); padding-top: 11px; }

/* Yan menü ayrıntıları */

.side-ust { scrollbar-gutter: stable; }
.side .si{ transition: background .12s ease, color .12s ease; }
 .side .si:focus-visible, .side-tog:focus-visible{ outline: 2px solid var(--navy, #123); outline-offset: -2px; }

/* Çekmece (telefon / dar ekran) */
.drw { display: none; }
.drw:not([hidden]) { display: block; position: fixed; inset: 0; z-index: 1500; }
.drw-perde { position: absolute; inset: 0; background: rgba(15, 23, 42, .5); animation: drwPerde .18s ease; }
.drw .side-cekmece { position: absolute; left: 0; top: 0; bottom: 0; width: min(86vw, 340px); height: 100%; max-height: none; display: flex !important; box-shadow: 8px 0 32px rgba(0, 0, 0, .28); animation: drwGel .2s ease; background: var(--panel, #fff); }
.drw-ust { display: flex; align-items: center; justify-content: space-between; padding: 12px 14px 12px 18px; border-bottom: 1px solid var(--line, #eee); }
.drw-ust b { font-size: 16px; color: var(--navy, #123); }
.drw-ust button { width: 38px; height: 38px; display: grid; place-items: center; border: 0; border-radius: var(--r-md); background: none; color: var(--mut, #667); cursor: pointer; }
.drw-ust button:hover { background: color-mix(in srgb, var(--navy, #123) 8%, transparent); }
.side-cekmece .side-ust { padding-bottom: calc(14px + env(safe-area-inset-bottom)); }
.side-cekmece .si{ min-height: 44px; }

body.drw-acik { overflow: hidden; }
@keyframes drwGel { from { transform: translateX(-100%); } to { transform: none; } }
@keyframes drwPerde { from { opacity: 0; } to { opacity: 1; } }
.mbar button { flex: 1; display: flex; flex-direction: column; align-items: center; gap: 2px; padding: 8px 4px; border: 0; background: none; font: inherit; font-size: 11px; color: var(--mut, #667); cursor: pointer; }
.mbar a { position: relative; }
.mbar .bdg { position: absolute; top: 3px; left: 55%; margin: 0; min-width: 16px; font-size: 11px; line-height: 16px; }

@media (max-width: 1180px) { .um-ad { display: none; } .um-btn { padding: 0 6px 0 4px; } }
@media (max-width: 860px) {
  .mnu-btn { display: inline-flex; }
  .top { padding: 0 8px; gap: 6px; height: 56px; flex-wrap: nowrap; }
  
  .top .brand { flex: 1; min-width: 0; }
  .top .brand span { display: block; border-left: 0; padding-left: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 14px; }
  .top .who span.um-av { display: grid; }
  .top .who span.zil-say { display: block; }
  .um-menu { position: fixed; right: 8px; top: calc(var(--top-h) + 4px); }
}

/* ======== Genel arama penceresi (Ctrl+K) ======== */
.ara { position: fixed; inset: 0; z-index: 2000; display: flex; justify-content: center; align-items: flex-start; padding: 12vh 16px 16px; background: rgba(15, 23, 42, .52); backdrop-filter: blur(2px); animation: araGel .14s ease; }
@keyframes araGel { from { opacity: 0; } to { opacity: 1; } }
.ara-k { width: min(680px, 100%); max-height: min(70vh, 640px); display: flex; flex-direction: column; background: var(--panel, #fff); color: var(--ink, #1f2128); border: 1px solid var(--line, #ddd); border-radius: var(--r-lg); box-shadow: 0 24px 64px rgba(15, 23, 42, .38); overflow: hidden; }
.ara-i { display: flex; align-items: center; gap: 10px; padding: 0 14px; border-bottom: 1px solid var(--line, #eee); }
.ara-i .ik { width: 20px; height: 20px; color: var(--mut, #667); flex: none; }
.ara-i input { flex: 1; min-width: 0; height: 56px; border: 0; outline: 0; background: transparent; color: inherit; font: inherit; font-size: 16px; }
.ara-i input::placeholder { color: var(--mut, #8a847d); }
.ara-x { width: 26px; height: 26px; border: 0; border-radius: 50%; background: color-mix(in srgb, var(--mut, #667) 18%, transparent); color: var(--ink, #333); font-size: 16px; line-height: 1; cursor: pointer; }
.ara kbd { font: 600 11px/1 system-ui, sans-serif; padding: 3px 6px; border-radius: var(--r-sm); border: 1px solid var(--line, #ccc); background: color-mix(in srgb, var(--mut, #667) 8%, transparent); color: var(--mut, #667); }
.ara-l { overflow-y: auto; padding: 6px; flex: 1; min-height: 120px; }
.ara-b { padding: 10px 12px 4px; font-size: 11px; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; color: var(--mut, #667); }
.ara-o { display: flex; align-items: center; gap: 12px; width: 100%; padding: 9px 10px; border: 0; border-radius: var(--r-md); background: none; color: inherit; font: inherit; text-align: left; cursor: pointer; }
.ara-o.on { background: color-mix(in srgb, var(--navy, #123) 11%, transparent); }
.ara-ik { flex: none; display: grid; place-items: center; width: 34px; height: 34px; border-radius: var(--r-md); background: color-mix(in srgb, var(--navy, #123) 8%, transparent); color: var(--navy, #123); }
.ara-ik .ik { width: 18px; height: 18px; }
.ara-m { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 1px; }
.ara-ad { font-size: 14px; font-weight: 600; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ara-m small { color: var(--mut, #667); font-size: 12px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ara mark { background: color-mix(in srgb, #f6c453 55%, transparent); color: inherit; border-radius: var(--r-sm); padding: 0 1px; }
.ara-tur { flex: none; font-size: 11px; font-weight: 700; padding: 3px 8px; border-radius: 999px; background: color-mix(in srgb, var(--navy, #123) 10%, transparent); color: var(--navy, #123); }
.ara-tur.t-Opportunity { background: color-mix(in srgb, #2e7d32 14%, transparent); color: #2e7d32; }
.ara-tur.t-Lead { background: color-mix(in srgb, #ef6c00 14%, transparent); color: #b45309; }
.ara-tur.t-Account { background: color-mix(in srgb, #6a1b9a 12%, transparent); color: #6a1b9a; }
.ara-gir { flex: none; opacity: 0; font-size: 13px; color: var(--mut, #667); }
.ara-o.on .ara-gir { opacity: .8; }
.ara-yuk { display: flex; align-items: center; gap: 10px; padding: 12px; color: var(--mut, #667); font-size: 13px; }
.ara-spin { width: 14px; height: 14px; border: 2px solid color-mix(in srgb, var(--mut, #667) 35%, transparent); border-top-color: var(--navy, #123); border-radius: 50%; animation: araDon .7s linear infinite; }
@keyframes araDon { to { transform: rotate(360deg); } }
.ara-bos { display: flex; flex-direction: column; gap: 4px; align-items: center; padding: 34px 20px; text-align: center; color: var(--mut, #667); font-size: 13px; }
.ara-bos b { color: var(--ink, #1f2128); font-size: 14px; }
.ara-hata { color: var(--red, #c62828); padding: 14px; }
.ara-f { display: flex; gap: 16px; align-items: center; padding: 9px 14px; border-top: 1px solid var(--line, #eee); font-size: 12px; color: var(--mut, #667); background: color-mix(in srgb, var(--mut, #667) 5%, transparent); }
.ara-f kbd { margin-right: 3px; }
.ara-ipucu { margin-left: auto; }
@media (max-width: 640px) { .ara { padding: 0; } .ara-k { max-height: 100vh; height: 100%; border-radius: 0; border: 0; } .ara-ipucu { display: none; } .ara-f span:not(.ara-ipucu) { display: none; } }
@media (prefers-reduced-motion: reduce) { .ara, .drw-perde, .drw .side-cekmece { animation: none; } .ara-spin { animation-duration: 2s; } }
#app[data-dar="1"] .side.side-cekmece { width: min(86vw, 340px); }

/* Müşteriler / Fırsatlar sekme çubuğu: sayfanın alt bölümü, belirgin ve dokunmaya uygun */
.crm-seg { flex: 1 0 100%; display: flex; gap: 4px; padding: 0; margin: 0 0 6px; border-bottom: 2px solid var(--line, #ddd); }
.crm-seg button { display: inline-flex; align-items: center; gap: 9px; padding: 12px 20px; margin-bottom: -2px; border: 0; border-bottom: 3px solid transparent; background: none; color: var(--mut, #667); font: inherit; font-size: 14px; font-weight: 650; cursor: pointer; border-radius: var(--r-md) var(--r-md) 0 0; }
.crm-seg button:hover { color: var(--ink, #1f2128); background: color-mix(in srgb, var(--navy, #123) 6%, transparent); }
.crm-seg button.on { color: var(--navy, #123); border-bottom-color: var(--navy, #123); background: color-mix(in srgb, var(--navy, #123) 8%, transparent); }
.crm-seg button:focus-visible { outline: 2px solid var(--navy, #123); outline-offset: -2px; }
@media (max-width: 600px) { .crm-seg button { flex: 1; justify-content: center; padding: 12px 8px; font-size: 14px; } }
/* Sohbet: pencerenin tamamını kaplar (üst çubuğun altında kenardan kenara), yan menü simge genişliğine iner */
#app[data-sohbet="1"] .sh-app { padding: 0; }
#app[data-sohbet="1"] .sh { height: calc(100dvh - var(--top-h, 56px)); min-height: 420px; border: 0; border-radius: 0; grid-template-columns: minmax(300px, 380px) 1fr; }
 #app[data-sohbet="1"] #kirmiziBar { display: none; }
#app[data-sohbet="1"] .govde { min-height: 0; }
@media (max-width: 860px) {
  #app[data-sohbet="1"] .sh { height: calc(100dvh - var(--top-h, 56px) - 56px - env(safe-area-inset-bottom)); grid-template-columns: 1fr; }
  #app[data-sohbet="1"] main, #app[data-sohbet="1"] .govde { padding-bottom: 0; }
}
/* Daraltılmış yan menü: alt menü, fare simge ile alt menü arasındaki boşluktan geçerken kapanmaz (köprü + kısa kapanma gecikmesi) */

   /* gizliyken visibility fareyi zaten geçirmez; geçiş süresince fly'a ulaşılabilir */

/* ======== PWA: ana ekrana ekleme, bildirim penceresi, uygulama kipi ======== */
.pwa-bnr { position: fixed; left: 10px; right: 10px; bottom: calc(72px + env(safe-area-inset-bottom)); z-index: 900; display: flex; align-items: center; gap: 12px; padding: 12px; background: var(--panel, #fff); color: var(--ink, #1f2128); border: 1px solid var(--line, #ddd); border-radius: var(--r-lg); box-shadow: 0 10px 34px rgba(15, 23, 42, .28); }
.pwa-bnr img { border-radius: var(--r-md); flex: none; }
.pwa-bnr > div { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; font-size: 14px; }
.pwa-bnr small { color: var(--mut, #667); font-size: 12px; line-height: 1.35; }
.pwa-bnr > span { display: flex; flex-direction: column; gap: 6px; flex: none; }
.pwa-dlg { width: min(620px, 94vw); }
.pwa-dlg .ik-baslik { display: flex; justify-content: space-between; align-items: center; margin-bottom: 8px; }
.pwa-dlg .ik-baslik h2 { margin: 0; }
.pwa-dlg .ik-baslik .link { font-size: 24px; line-height: 1; text-decoration: none; }
.pwa-h { margin: 18px 0 8px; font-size: 13px; color: var(--mut, #667); text-transform: uppercase; letter-spacing: .04em; }
.pwa-not { display: flex; flex-direction: column; gap: 6px; align-items: flex-start; padding: 14px 16px; border-radius: var(--r-md); background: color-mix(in srgb, var(--navy, #123) 7%, transparent); }
.pwa-not.pwa-uy { background: #fff3cd; color: #5c4400; }
.pwa-not ol { margin: 4px 0 4px 18px; padding: 0; }
.pwa-not small { color: inherit; opacity: .8; }
.pwa-tur { border: 1px solid var(--line, #ddd); border-radius: var(--r-md); overflow: hidden; }
.pwa-sat { display: flex !important; align-items: flex-start; gap: 12px; padding: 11px 14px; margin: 0 !important; border-bottom: 1px solid var(--line, #eee); cursor: pointer; font-weight: 400 !important; }
.pwa-sat:last-child { border-bottom: 0; }
.pwa-sat input { width: 20px !important; height: 20px; margin: 2px 0 0 !important; flex: none; }
.pwa-sat span { display: flex; flex-direction: column; }
.pwa-sat small { color: var(--mut, #667); font-size: 12px; }
.pwa-cih { list-style: none; margin: 0; padding: 0; border: 1px solid var(--line, #ddd); border-radius: var(--r-md); }
.pwa-cih li { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 10px 14px; border-bottom: 1px solid var(--line, #eee); }
.pwa-cih li:last-child { border-bottom: 0; }
.pwa-cih small { display: block; color: var(--mut, #667); font-size: 12px; }

/* Mobil / uygulama kipi: iOS'ta alana odaklanınca yakınlaşmayı önle, dokunma hedefleri ve kaydırma */
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; -webkit-tap-highlight-color: transparent; }
@media (max-width: 860px) {
  input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]), select, textarea { font-size: 16px; }
   .side .si, .mbar a, .mbar button, button.link, .tk-bar button, .chip { min-height: 40px; }
  
  
  .zil-panel { top: calc(var(--top-h, 56px) + 6px); right: 8px; left: 8px; width: auto; max-height: calc(100dvh - var(--top-h, 56px) - 90px); }
}
@media (display-mode: standalone) {
  body { overscroll-behavior-y: none; -webkit-user-select: none; user-select: none; }
  input, textarea, [contenteditable], table, .sh-mesajlar, td, th { -webkit-user-select: text; user-select: text; }
  .top { padding-top: env(safe-area-inset-top); height: auto; min-height: 56px; }
}
@media (hover: none) { .tk-bar button:hover, .chip:hover { background: inherit; } }

/* ======== Mobil düzeltmeleri (acil): tek menü, sade üst çubuk, taşan ekranlar kendi içinde kayar ======== */
@media (max-width: 860px) {
  /* menü yalnız altta: üstteki hamburger kalkar (alt çubuktaki "Menü" tam menüyü açar) */
  .mnu-btn { display: none !important; }
  .top { padding: 0 10px; gap: 4px; }
  .top .brand { flex: 1 1 auto; min-width: 0; overflow: hidden; }
  .top .brand img { height: 22px; }
  .top .brand select, .top .brand > span { display: none; }   /* proje adı çekmecenin başında */
  .top .who { gap: 2px; margin-left: auto; }
  /* simge düğmeleri: aynı boyut, çerçevesiz, birbirine binmez */
  .who button.link, .um-btn { width: 40px; min-width: 40px; height: 40px; padding: 0; border: 0; border-radius: var(--r-md); background: transparent; box-shadow: none; display: inline-flex; align-items: center; justify-content: center; }
  .um-btn { width: auto; min-width: 44px; padding: 0 4px; gap: 2px; }
  .zil-btn { position: relative; }
  .zil-say { top: 2px; right: 2px; }
  .drw-proj { padding: 10px 18px 12px; border-bottom: 1px solid var(--line, #eee); }
  .drw-proj select { width: 100%; padding: 10px; font-size: 16px; border: 1px solid var(--line, #ddd); border-radius: var(--r-md); background: var(--panel, #fff); color: var(--ink, #222); }
  .drw-proj small { display: block; color: var(--mut, #667); margin-bottom: 4px; font-size: 12px; }
}
/* geniş içerik (fırsat panosu, tablolar) sayfayı genişletmez; kendi alanında kayar */
main, .tk-app, .crm-app, .govde > main { min-width: 0; max-width: 100%; }
.crm-body > *, .tk-bar > * { min-width: 0; }
.crm-body #cl, .tk-app .cl { max-width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; overscroll-behavior-x: contain; }
.tk-bar input[type=search] { max-width: 100%; }
#kirmiziBar { overflow: hidden; }
#kirmiziBar a { display: block; padding-left: 12px; padding-right: 12px; overflow-wrap: anywhere; }
@media (max-width: 860px) {
  .tk-bar { gap: 8px; }
  .tk-bar input[type=search] { width: 100%; }
}

/* Kullanıcı menüsü: dar ekranda ".who span" gizleme kuralı menü yazılarını da gizliyordu (Hesabım, Çıkış, Dil) */
.who .um-menu span, .who .um-menu small, .who .um-menu b { display: inline !important; }
.um-menu .um-ust b, .um-menu .um-ust small { display: block !important; }
.um-menu button[role=menuitem] span { display: inline !important; }
.um-menu { z-index: 1600; }
@media (max-width: 860px) { .um-menu { min-width: min(280px, calc(100vw - 16px)); } }

/* ======== Ekip sohbeti: tam ekran düzeni ve okunur yazı boyutları ======== */
.sh.sh-m { display: grid; }   /* konuşma açıkken ızgara bozulmasın (masaüstünde de "sh-m" eklenir) */
body:has(#app[data-sohbet="1"]) .azt-alt { display: none; }   /* sohbette sayfa altı yazısı alanı kemirmez, sayfa kaymaz */
#app[data-sohbet="1"] .sh { height: calc(100dvh - var(--top-h, 56px)); }
.sh-kad b { font-size: 14px; font-weight: 650; }
.sh-kad small { font-size: 13px; }
.sh-baslik b, .sh-bt b { font-size: 16px; }
.sh-b { font-size: 14px; line-height: 1.45; padding: 8px 12px; max-width: min(640px, 78%); }
.sh-kim { font-size: 12px; margin-bottom: 1px; }
.sh-t { font-size: 11px; }
.sh-yaz { padding: 10px 14px; gap: 10px; background: var(--panel, #fff); }
.sh-yaz textarea { font-size: 14px; line-height: 1.4; padding: 10px 12px; min-height: 44px; border-radius: var(--r-md); }
.sh-yaz .primary { height: 44px; padding: 0 20px; }
.sh-ara { font-size: 14px; }
.sh-mesajlar { padding: 16px clamp(12px, 3vw, 40px); gap: 8px; }
@media (max-width: 760px) {
  .sh-b { font-size: 16px; max-width: 86%; }
  .sh-yaz textarea { font-size: 16px; }   /* iOS odakta yakınlaştırmasın */
  .sh-ara, .sh-yaz textarea { font-size: 16px; }
  .sh-kad b { font-size: 16px; }
  .sh-kad small { font-size: 14px; }
  .sh-k { padding: 12px 14px; }
  #app[data-sohbet="1"] .sh-sol, #app[data-sohbet="1"] .sh-sag { width: 100%; }
}

/* ======== Ortak soru / not pencereleri (Diyalog) ve eski .dlg pencerelerinin düzeltmesi ======== */
dialog.dlg:not(:has(> form)) { padding: 20px 22px; }   /* form dışı içerik (başlık, liste) kenara yapışmasın */
dialog.dg { border: 0; padding: 0; border-radius: var(--r-lg); width: min(520px, 94vw); max-height: 92dvh; background: var(--panel, #fff); color: var(--ink, #232323); box-shadow: 0 24px 64px rgba(15, 23, 42, .32); overflow: hidden; }
dialog.dg[open] { display: flex; flex-direction: column; }
dialog.dg::backdrop { background: rgba(15, 23, 42, .5); }
dialog.dg-genis { width: min(660px, 96vw); }
.dg-f { display: flex; flex-direction: column; min-height: 0; max-height: 92dvh; margin: 0; padding: 0; }
dialog.dg > .dg-f { flex: 1; }
.dg-ust { padding: 18px 22px 12px; border-bottom: 1px solid var(--line, #e3dfda); }
.dg-ust h2 { margin: 0; font-size: 18px; line-height: 1.3; }
.dg-ust p { margin: 5px 0 0; color: var(--mut, #77716b); font-size: 13px; line-height: 1.45; }
.dg-g { padding: 16px 22px 8px; overflow: auto; flex: 1; min-height: 0; }
.dg-e { display: flex; flex-direction: column; gap: 6px; margin: 0 0 12px; font-size: 13px; font-weight: 600; }
.dg-e input, .dg-e textarea, .dg-e select { width: 100%; margin: 0; padding: 10px 12px; border: 1px solid var(--line, #d6d1cc); border-radius: var(--r-md); background: #fff; color: inherit; font: inherit; font-size: 14px; font-weight: 400; line-height: 1.45; }
.dg-e textarea { resize: vertical; min-height: 84px; }
.dg-e input:focus, .dg-e textarea:focus { outline: 2px solid var(--navy, #34366b); outline-offset: 0; border-color: transparent; }
.dg-e small { font-weight: 400; color: var(--mut, #77716b); }
.dg-z { color: var(--red, #c00000); }
.dg-hata { margin: 0 0 8px; color: var(--red, #c00000); font-size: 13px; font-weight: 600; }
.dg-metin { margin: 0 0 8px; line-height: 1.5; }
.dg-alt { display: flex; justify-content: flex-end; gap: 10px; padding: 14px 22px; border-top: 1px solid var(--line, #e3dfda); background: color-mix(in srgb, var(--mut, #77716b) 6%, transparent); }
.dg-alt .primary, .dg-alt .ghost { min-height: 42px; padding: 0 18px; }
.dg .dg-sil { background: var(--red, #c00000); }
.dg .dg-sil:not(:disabled):hover { background: color-mix(in srgb, var(--red, #c00000) 85%, #000); }
.dg-liste { border: 0; margin: 0 0 8px; padding: 0; }
.dg-sec { display: flex; align-items: flex-start; gap: 12px; padding: 11px 14px; margin: 0 0 8px; border: 1px solid var(--line, #d6d1cc); border-radius: var(--r-md); cursor: pointer; font-weight: 400; }
.dg-sec:hover { background: color-mix(in srgb, var(--navy, #34366b) 5%, transparent); }
.dg-sec:has(input:checked) { border-color: var(--navy, #34366b); background: color-mix(in srgb, var(--navy, #34366b) 8%, transparent); }
.dg-sec input { width: 18px; height: 18px; margin: 2px 0 0; flex: none; }
.dg-sec span { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.dg-sec small { color: var(--mut, #77716b); }
.sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
/* notlar ve geçmiş */
.dg-bolum { margin: 4px 0 8px; font-size: 12px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--mut, #77716b); }
.dg-takip, .dg-not { list-style: none; margin: 0 0 14px; padding: 0; }
.dg-takip li { display: flex; align-items: center; gap: 10px; padding: 9px 12px; margin: 0 0 6px; border: 1px solid var(--line, #e3dfda); border-radius: var(--r-md); font-size: 14px; }
.dg-takip li span { flex: 1; min-width: 0; font-weight: 600; }
.dg-takip time { color: var(--mut, #77716b); font-size: 13px; white-space: nowrap; }
.dg-takip em { font-style: normal; font-size: 12px; padding: 2px 8px; border-radius: 999px; background: #fff3cd; color: #7a5b00; }
.dg-takip em.ok { background: #e3f4e8; color: #1e6b3a; }
.dg-not li { padding: 11px 14px; margin: 0 0 8px; border: 1px solid var(--line, #e3dfda); border-radius: var(--r-md); background: #faf9f7; }
.dg-not li header { display: flex; justify-content: space-between; gap: 10px; margin-bottom: 4px; font-size: 12px; }
.dg-not li time { color: var(--mut, #77716b); }
.dg-not li p { margin: 0; white-space: pre-wrap; overflow-wrap: anywhere; font-size: 14px; line-height: 1.5; }
.dg-yeni { border-top: 1px solid var(--line, #e3dfda); padding: 14px 22px 0; margin: 0; background: var(--panel, #fff); }
.dg-yeni .dg-alt { margin: 0 -22px; }
.bv-z { max-height: 52vh; }
@media (max-width: 600px) {
  dialog.dg { width: 100vw; max-width: 100vw; margin: auto 0 0; border-radius: var(--r-lg) var(--r-lg) 0 0; max-height: 94dvh; }
  .dg-alt { padding-bottom: calc(14px + env(safe-area-inset-bottom)); }
  .dg-alt .primary, .dg-alt .ghost { flex: 1; }
  .dg-e input, .dg-e textarea { font-size: 16px; }   /* iOS odakta yakınlaştırmasın */
}

/* ======== Resepsiyon: ziyaretçi defteri ve rapor ======== */
.rs-app { max-width: var(--sayfa-w); margin: 0 auto; display: flex; flex-direction: column; gap: 14px; }
.rs-bas { display: flex; justify-content: space-between; align-items: flex-end; gap: 16px; flex-wrap: wrap; }
.rs-bas h2 { margin: 0 0 4px; }
.rs-bas .help { margin: 0; max-width: 720px; }
.rs-say { display: flex; gap: 8px; flex-wrap: wrap; }
.rs-say span { padding: 6px 12px; border: 1px solid var(--line); border-radius: 999px; background: var(--panel, #fff); font-size: 13px; color: var(--mut); }
.rs-say b { color: var(--ink); font-size: 15px; margin-right: 3px; }
.rs-form { background: var(--panel, #fff); border: 1px solid var(--line); border-radius: 12px; padding: 16px 18px 14px; }
.rs-ust { display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; margin-bottom: 10px; }
.rs-ust h3 { margin: 0; font-size: 16px; }
.rs-zaman { display: flex; align-items: center; gap: 8px; font-size: 12.5px; font-weight: 600; color: var(--mut); }
.rs-zaman input { padding: 7px 10px; border: 1px solid var(--line); border-radius: 8px; font: inherit; font-weight: 400; color: var(--ink); }
.rs-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px 14px; }
.rs-a { display: flex; flex-direction: column; gap: 5px; min-width: 0; margin: 0; font-size: 12.5px; font-weight: 600; color: var(--ink); }
.rs-a > span small { font-weight: 400; color: var(--mut); }
.rs-a input:not([type=radio]):not([type=checkbox]), .rs-a select, .rs-a textarea { width: 100%; height: 42px; padding: 0 12px; border: 1px solid var(--line); border-radius: var(--r-md); background: #fff; font: inherit; font-size: 15px; font-weight: 400; color: var(--ink); }
.rs-a textarea { height: auto; min-height: 42px; padding: 9px 12px; resize: vertical; line-height: 1.4; }
.rs-a input:focus, .rs-a select:focus, .rs-a textarea:focus { outline: 2px solid var(--navy); outline-offset: 0; border-color: transparent; }
.rs-not { grid-column: 1 / -1; }
.rs-z { color: var(--red); }
.rs-seg { display: inline-flex; border: 1px solid var(--line); border-radius: 8px; overflow: hidden; height: 42px; }
.rs-seg label { flex: 1; display: flex; margin: 0; cursor: pointer; }
.rs-seg input { position: absolute; opacity: 0; pointer-events: none; }
.rs-seg span { flex: 1; display: grid; place-items: center; padding: 0 16px; font-weight: 600; color: var(--mut); background: #fff; }
.rs-seg input:checked + span { background: var(--navy); color: #fff; }
.rs-seg input:focus-visible + span { outline: 2px solid var(--navy); outline-offset: -2px; }
.rs-ck { display: inline-flex; align-items: center; gap: 8px; height: 42px; font-weight: 400; }
.rs-ck input { width: 18px; height: 18px; }
.rs-eylem { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-top: 12px; }
.rs-eylem .help { margin: 0; color: var(--red); font-weight: 600; }
.rs-eylem .primary { min-height: 44px; padding: 0 26px; }
.rs-bar { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.rs-bar input[type=date], .rs-bar input[type=search] { height: 38px; padding: 0 10px; border: 1px solid var(--line); border-radius: 8px; font: inherit; }
.rs-bar input[type=search] { flex: 1; min-width: 200px; max-width: 420px; }
.rs-iptalck { display: inline-flex; gap: 6px; align-items: center; font-size: 13px; color: var(--mut); }
.rs-tablo table small { display: block; color: var(--mut); font-size: 12px; }
.rs-nt { max-width: 260px; color: var(--mut); overflow-wrap: anywhere; }
.rs-ey { white-space: nowrap; text-align: right; }
.rs-ey .link { margin-left: 10px; }
.rs-sil { color: var(--red); }
.rs-icerde td { background: color-mix(in srgb, #2e9e5b 7%, transparent); }
.rs-iptalsatir { opacity: .55; text-decoration: line-through; }
.rs-chip { display: inline-block; padding: 3px 10px; border-radius: 999px; font-size: 12px; font-weight: 700; background: #ecebe8; color: #55504a; white-space: nowrap; }
.rs-ok { background: #e3f4e8; color: #1e6b3a; } .rs-hav { background: #fbe3e3; color: #9b1c1c; } .rs-sah { background: #fff3cd; color: #7a5b00; } .rs-bek { background: #e8eaf6; color: var(--navy); }
.rs-ic { background: #2e9e5b; color: #fff; } .rs-iptal { background: #ddd; color: #555; }
.rs-bos { display: flex; flex-direction: column; align-items: center; gap: 4px; padding: 40px 20px; border: 1px dashed var(--line); border-radius: 12px; color: var(--mut); text-align: center; }
.rs-bos b { color: var(--ink); font-size: 16px; }
.rs-kartlar { display: none; }
.rs-kart { padding: 12px 14px; border: 1px solid var(--line); border-radius: 12px; background: var(--panel, #fff); display: flex; flex-direction: column; gap: 6px; }
.rs-kart header { display: flex; justify-content: space-between; align-items: center; gap: 8px; }
.rs-kart p { margin: 0; font-size: 14px; }
.rs-kart .rs-mt { color: var(--mut); font-size: 13px; }
.rs-kart footer { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-top: 4px; }
.rs-uyari { padding: 12px 14px; border: 1px solid #e8d48a; border-radius: 10px; background: #fff6d6; color: #5c4400; font-size: 14px; }
.rs-kpi { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 12px; }
.rs-kpi-uy { border-color: #e8b4b4 !important; }
.rs-aksiyon { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 14px; padding: 12px 14px; border: 1px solid var(--line); border-radius: 12px; background: var(--panel, #fff); }
.rs-aksiyon label { display: inline-flex; align-items: center; gap: 8px; font-size: 13px; font-weight: 600; color: var(--mut); }
.rs-aksiyon input { height: 38px; padding: 0 10px; border: 1px solid var(--line); border-radius: 8px; font: inherit; color: var(--ink); }
.rs-izgara { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.rs-kutu { padding: 14px 16px; border: 1px solid var(--line); border-radius: 12px; background: var(--panel, #fff); overflow: auto; }
.rs-kutu h3 { margin: 0 0 8px; font-size: 14px; }
.rs-genis { grid-column: 1 / -1; }
.rs-r { text-align: right; }
.rs-saat { display: flex; align-items: flex-end; gap: 6px; height: 150px; padding-top: 8px; }
.rs-saat > div { flex: 1; display: flex; flex-direction: column; justify-content: flex-end; align-items: center; gap: 4px; height: 100%; }
.rs-saat i { display: block; width: 100%; min-height: 2px; background: var(--navy); border-radius: 4px 4px 0 0; opacity: .85; }
.rs-saat span { font-size: 11px; color: var(--mut); }
dialog.rs-dlg { width: min(720px, 96vw); }
dialog.rs-dlg .rs-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
@media (max-width: 1100px) { .rs-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .rs-kpi { grid-template-columns: repeat(3, minmax(0, 1fr)); } .rs-izgara { grid-template-columns: 1fr; } }
@media (max-width: 860px) {
  .rs-tablo { display: none; }
  .rs-kartlar { display: flex; flex-direction: column; gap: 10px; }
  .rs-grid, dialog.rs-dlg .rs-grid { grid-template-columns: 1fr; }
  .rs-kpi { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .rs-form { padding: 14px; }
  .rs-eylem .primary { width: 100%; }
  .rs-eylem { flex-direction: column-reverse; align-items: stretch; }
  .rs-a input:not([type=radio]):not([type=checkbox]), .rs-a select, .rs-a textarea { font-size: 16px; }
}

/* Kullanıcılar ve yetkiler: kullanıcı ekle düğmesi ve paket sınırı göstergesi */
.yt-ekle { display: flex; flex-direction: column; gap: 6px; margin-top: 12px; }
.yt-ekle .primary { width: 100%; min-height: 42px; }
.yt-sinir { margin: 0; font-size: 13px; color: var(--mut); }
.yt-sinir.dolu { color: var(--red); font-weight: 600; }
.yt2-bilgi { display: grid; grid-template-columns: 90px 1fr; gap: 6px 12px; margin: 0 0 12px; font-size: 14px; }
.yt2-bilgi dt { color: var(--mut); } .yt2-bilgi dd { margin: 0; overflow-wrap: anywhere; }
.yt2-hesap-eylem { display: flex; flex-wrap: wrap; gap: 8px; }
.yt2-hesap-eylem .ghost { min-height: 40px; }
.yt2-hesap-eylem .yt2-sil { color: var(--red); border-color: color-mix(in srgb, var(--red) 40%, var(--line)); }
.yt2-uyari { padding: 10px 12px; border: 1px solid #e8d48a; border-radius: var(--r-md); background: #fff6d6; color: #5c4400; margin-bottom: 12px; font-size: 14px; }

/* ======== Kullanıcılar ve yetkiler (yt3) ======== */
.yt3 { padding: 14px 18px 40px; }
.yt3-grid { display: grid; grid-template-columns: 340px minmax(0, 1fr); gap: 16px; align-items: start; width: 100%; }
.yt3-sol { position: sticky; top: calc(var(--top-h, 56px) + 12px); background: var(--panel, #fff); border: 1px solid var(--line); border-radius: var(--r-lg); padding: 14px; display: flex; flex-direction: column; gap: 10px; max-height: calc(100dvh - var(--top-h, 56px) - 40px); }
.yt3-sol-ust { display: flex; justify-content: space-between; align-items: center; gap: 8px; }
.yt3-sol-ust h2 { margin: 0; font-size: 16px; } .yt3-sol-ust small { color: var(--mut); font-weight: 600; }
.yt3-sol input[type=search] { width: 100%; height: 40px; padding: 0 12px; border: 1px solid var(--line); border-radius: var(--r-md); font: inherit; }
.yt3-chips { display: flex; flex-wrap: wrap; gap: 6px; }
.yt3-chips .chip { padding: 5px 10px; } .yt3-chips .chip b { color: var(--mut); font-weight: 600; margin-left: 2px; }
.yt3-list { list-style: none; margin: 0; padding: 0; overflow: auto; flex: 1; min-height: 120px; border-top: 1px solid var(--line); }
.yt3-list li { display: flex; align-items: center; gap: 10px; padding: 9px 6px; border-bottom: 1px solid #f0edea; cursor: pointer; border-radius: var(--r-md); }
.yt3-list li:hover { background: color-mix(in srgb, var(--navy) 5%, transparent); }
.yt3-list li.on { background: color-mix(in srgb, var(--navy) 10%, transparent); }
.yt3-list li.pasif .yt3-ad { opacity: .6; }
.yt3-list li:focus-visible { outline: 2px solid var(--navy); outline-offset: -2px; }
.yt3-ad { flex: 1; min-width: 0; display: flex; flex-direction: column; }
.yt3-ad b { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 14px; }
.yt3-ad small { color: var(--mut); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 12px; }
.yt3-bos { color: var(--mut); cursor: default !important; justify-content: center; padding: 20px !important; }
.yt3-av { flex: none; width: 38px; height: 38px; border-radius: 50%; display: grid; place-items: center; background: color-mix(in srgb, var(--navy) 14%, #fff); color: var(--navy); font-weight: 800; font-size: 13px; }
.yt3-av-b { width: 60px; height: 60px; font-size: 20px; }
.yt3-av-pasif { background: #e6e3df; color: #77716b; }
.yt3-rozet { display: inline-block; padding: 3px 9px; border-radius: 999px; font-size: 11px; font-weight: 700; background: #ecebe8; color: #55504a; white-space: nowrap; }
.yt3-r-admin { background: #34366b; color: #fff; } .yt3-r-on { background: #e3e7fa; color: #2b2f7a; } .yt3-r-yok { background: #fbe3e3; color: #9b1c1c; } .yt3-r-ok { background: #e3f4e8; color: #1e6b3a; }
.yt3-sinir { position: relative; padding: 10px 12px 14px; border: 1px solid var(--line); border-radius: var(--r-md); font-size: 13px; overflow: hidden; }
.yt3-sinir > div { display: flex; justify-content: space-between; } .yt3-sinir i { position: absolute; left: 0; bottom: 0; height: 4px; background: var(--navy); }
.yt3-sinir.dolu { border-color: #e8b4b4; } .yt3-sinir.dolu i { background: var(--red); } .yt3-sinir.dolu b { color: var(--red); }
.yt3-sinir-not { margin: 0; font-size: 13px; color: var(--mut); }
.yt3-sag { background: var(--panel, #fff); border: 1px solid var(--line); border-radius: var(--r-lg); min-height: 420px; overflow: hidden; }
.yt3-bos-sag { padding: 60px 24px; text-align: center; color: var(--mut); } .yt3-bos-sag b { color: var(--ink); font-size: 16px; }
.yt3-kart-ust { display: flex; gap: 16px; align-items: center; flex-wrap: wrap; padding: 18px 22px; border-bottom: 1px solid var(--line); }
.yt3-kim { flex: 1; min-width: 220px; } .yt3-kim h2 { margin: 0 0 2px; font-size: 20px; } .yt3-kim p { margin: 0 0 8px; color: var(--mut); font-size: 13px; overflow-wrap: anywhere; }
.yt3-rozetler { display: flex; flex-wrap: wrap; gap: 6px; }
.yt3-eylem { display: flex; flex-wrap: wrap; gap: 8px; } .yt3-eylem .ghost { min-height: 40px; }
.yt3-sil { color: var(--red); border-color: color-mix(in srgb, var(--red) 40%, var(--line)); }
.yt3-sekme { display: flex; gap: 2px; padding: 0 14px; border-bottom: 1px solid var(--line); overflow-x: auto; scrollbar-width: none; }
.yt3-sekme button { flex: none; padding: 12px 16px; border: 0; border-bottom: 3px solid transparent; background: none; font: inherit; font-weight: 650; color: var(--mut); cursor: pointer; }
.yt3-sekme button.on { color: var(--navy); border-bottom-color: var(--navy); }
.yt3-nokta { display: inline-block; width: 8px; height: 8px; border-radius: 50%; background: #e8a317; margin-left: 4px; }
.yt3-icerik { padding: 18px 22px 26px; display: flex; flex-direction: column; gap: 14px; }
.yt3-kartlar { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.yt3-k { border: 1px solid var(--line); border-radius: var(--r-lg); padding: 14px 16px; background: #fff; }
.yt3-k h3 { margin: 0 0 8px; font-size: 14px; } .yt3-k h3 small { color: var(--mut); font-weight: 400; }
.yt3-genis { grid-column: 1 / -1; }
.yt3-b { font-size: 16px; font-weight: 700; margin: 0 0 4px; } .yt3-s { color: var(--mut); font-size: 13px; }
.yt3-dl { display: grid; grid-template-columns: 110px 1fr; gap: 6px 12px; margin: 0; font-size: 14px; } .yt3-dl dt { color: var(--mut); } .yt3-dl dd { margin: 0; overflow-wrap: anywhere; }
.yt3-t { width: 100%; border-collapse: collapse; font-size: 14px; margin-bottom: 8px; } .yt3-t th { text-align: start; color: var(--mut); font-size: 12px; text-transform: uppercase; letter-spacing: .05em; padding: 6px 8px; border-bottom: 1px solid var(--line); } .yt3-t td { padding: 9px 8px; border-bottom: 1px solid #f0edea; }
.yt3-kaydet-bar { display: flex; justify-content: flex-end; align-items: center; gap: 12px; position: sticky; top: calc(var(--top-h, 56px) + 6px); z-index: 5; padding: 8px 12px; background: color-mix(in srgb, var(--panel, #fff) 92%, transparent); backdrop-filter: blur(4px); border: 1px solid var(--line); border-radius: var(--r-md); }
.yt3-kirli { color: #7a5b00; font-size: 13px; font-weight: 600; }
.yt3-k select#ytSablon { width: 100%; max-width: 420px; height: 42px; padding: 0 12px; border: 1px solid var(--line); border-radius: var(--r-md); font: inherit; }
.yt3-gri { opacity: .65; }
.yt3-grup { border: 1px solid var(--line); border-radius: var(--r-md); padding: 8px 12px 6px; margin: 0 0 10px; }
.yt3-grup.kapali { opacity: .6; } .yt3-grup legend { font-weight: 700; padding: 0 6px; } .yt3-grup legend small { color: var(--mut); font-weight: 400; }
.yt3-yetki { display: flex; gap: 10px; align-items: flex-start; padding: 7px 0; border-bottom: 1px solid #f4f1ee; cursor: pointer; }
.yt3-yetki:last-child { border-bottom: 0; } .yt3-yetki input { width: 18px; height: 18px; margin-top: 2px; flex: none; }
.yt3-yetki span { display: flex; flex-direction: column; } .yt3-yetki small { color: var(--mut); font-size: 12px; }
.yt3-baslik { display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; margin-bottom: 10px; } .yt3-baslik h3 { margin: 0; }
.yt3-hepsi { display: inline-flex; align-items: center; gap: 8px; font-size: 13px; font-weight: 600; color: var(--mut); } .yt3-hepsi select { height: 38px; padding: 0 8px; border: 1px solid var(--line); border-radius: var(--r-md); font: inherit; }
.yt3-proje { border: 1px solid var(--line); border-radius: var(--r-lg); padding: 12px 14px; margin-bottom: 10px; }
.yt3-proje-ust { display: flex; flex-direction: column; margin-bottom: 8px; } .yt3-proje-ust small { color: var(--mut); }
.yt3-proje-alan { display: grid; grid-template-columns: minmax(200px, 280px) 1fr; gap: 14px; align-items: start; }
.yt3-proje-alan label { display: flex; flex-direction: column; gap: 5px; font-size: 12px; font-weight: 600; }
.yt3-proje-alan select { height: 40px; padding: 0 10px; border: 1px solid var(--line); border-radius: var(--r-md); font: inherit; font-weight: 400; }
.yt3-gruplar { border: 0; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; } .yt3-gruplar legend { font-size: 12px; font-weight: 600; margin-bottom: 6px; padding: 0; }
.yt3-gchip { display: inline-flex; align-items: center; gap: 8px; padding: 7px 12px; border: 1px solid var(--line); border-radius: 999px; cursor: pointer; font-size: 13px; }
.yt3-gchip:has(input:checked) { border-color: var(--navy); background: color-mix(in srgb, var(--navy) 9%, transparent); }
.yt3-gchip small { color: var(--mut); }
.yt3-satir { display: flex; gap: 8px; flex-wrap: wrap; } .yt3-satir input { flex: 1; min-width: 200px; height: 42px; padding: 0 12px; border: 1px solid var(--line); border-radius: var(--r-md); font: inherit; }
.yt3-uyari { margin: 12px 22px 0; padding: 10px 12px; border: 1px solid #e8d48a; border-radius: var(--r-md); background: #fff6d6; color: #5c4400; font-size: 14px; }
@media (max-width: 980px) {
  .yt3-grid { grid-template-columns: 1fr; } .yt3-sol { position: static; max-height: none; } .yt3-list { max-height: 320px; }
  .yt3-kartlar { grid-template-columns: 1fr; } .yt3-proje-alan { grid-template-columns: 1fr; }
  .yt3-eylem { width: 100%; } .yt3-eylem .ghost { flex: 1; }
}
.yt3-malik { display: inline-flex; align-items: center; gap: 8px; margin-top: 8px; font-size: 13px; font-weight: 600; } .yt3-malik select { height: 38px; padding: 0 8px; border: 1px solid var(--line); border-radius: var(--r-md); font: inherit; }
.yt3-pl { display: flex; flex-direction: column; gap: 8px; }
.yt3-pr { border: 1px solid var(--line); border-radius: var(--r-md); padding: 10px 12px; }
.yt3-pr.on { border-color: var(--navy); background: color-mix(in srgb, var(--navy) 5%, transparent); }
.yt3-pc { display: flex; align-items: center; gap: 10px; cursor: pointer; font-size: 14px; } .yt3-pc input { width: 20px; height: 20px; flex: none; }
.yt3-pr .yt3-gruplar { margin-top: 10px; padding-left: 30px; align-items: center; } .yt3-pr .yt3-gruplar > small { color: var(--mut); }
.yt3-detay summary { cursor: pointer; padding: 2px 0; } .yt3-detay[open] summary { margin-bottom: 10px; }

/* ======== Ana para birimi (proje bazlı TL / USD) ======== */
.ap-rozet { display: inline-flex; align-items: center; margin-left: 4px; padding: 3px 9px; border-radius: var(--r-sm); font-size: 11px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; background: color-mix(in srgb, var(--bar-yazi, #fff) 18%, transparent); color: var(--bar-yazi, #fff); border: 1px solid color-mix(in srgb, var(--bar-yazi, #fff) 38%, transparent); white-space: nowrap; }
.ap-ana { font-weight: 800; }
.ap-ikinci { font-size: .82em; color: var(--mut); font-weight: 500; }
th.ap-sutun { background: color-mix(in srgb, var(--navy) 14%, var(--slate)) !important; box-shadow: inset 0 -3px 0 var(--stone, #e7e0db); text-transform: uppercase; letter-spacing: .03em; }
@media (max-width: 860px) { .top .brand > .ap-rozet { display: inline-flex !important; font-size: 11px; padding: 2px 6px; } }

/* Resepsiyon raporu: alt şerit etiketi ve tablo hizası */

.rs-kutu table.tk th.rs-r, .rs-kutu table.tk td.rs-r { text-align: right; }
.rs-app > h3 { margin: 6px 0 0; font-size: 15px; }
.rs-app > .help { margin: 0; }

/* Resepsiyon: ziyaretçi defteri ve rapor – panel ölçüleriyle hizalı düzen */
.rs-a[hidden], .rs-kendi[hidden] { display: none !important; }
.rs-form { padding: 18px 20px 16px; box-shadow: 0 1px 2px rgba(20, 24, 40, .04); }
.rs-ust { align-items: center; padding-bottom: 12px; margin-bottom: 14px; border-bottom: 1px solid var(--line); }
.rs-zaman { flex-direction: row; }
.rs-zaman input { height: 38px; }
.rs-form .rs-grid { grid-template-columns: repeat(12, minmax(0, 1fr)); align-items: end; }
.rs-form .rs-grid > .rs-a { grid-column: span 3; }
.rs-form .rs-grid > .rs-acenta { grid-column: span 6; }
.rs-form .rs-grid > .rs-kendi { grid-column: span 6; }
.rs-form .rs-grid > .rs-not { grid-column: 1 / -1; }
.rs-a > span:first-child { min-height: 16px; line-height: 16px; }
.rs-a select { appearance: auto; background: #fff; }
.rs-seg { width: 100%; }
.rs-eylem { padding-top: 14px; margin-top: 14px; border-top: 1px solid var(--line); }
.rs-bar { padding: 10px 12px; border: 1px solid var(--line); border-radius: 12px; background: var(--panel, #fff); }
.rs-bar .ghost.sm { height: 38px; min-width: 38px; }
.rs-tablo { border: 1px solid var(--line); border-radius: 12px; overflow: auto; background: var(--panel, #fff); }
.rs-tablo table.tk { margin: 0; }
.rs-tablo table.tk th:first-child { border-top-left-radius: 11px; } .rs-tablo table.tk th:last-child { border-top-right-radius: 11px; }
.rs-tablo td { vertical-align: middle; }
.rs-ey { display: flex; gap: 10px; align-items: center; justify-content: flex-end; }
.rs-ey .link { margin-left: 0; }
.rs-say span { box-shadow: 0 1px 2px rgba(20, 24, 40, .04); }
@media (max-width: 1100px) { .rs-form .rs-grid > .rs-a { grid-column: span 6; } .rs-form .rs-grid > .rs-acenta, .rs-form .rs-grid > .rs-kendi { grid-column: span 12; } }
@media (max-width: 640px) { .rs-form .rs-grid > .rs-a { grid-column: 1 / -1; } .rs-form { padding: 14px; } .rs-eylem .primary { width: 100%; } .rs-eylem { flex-direction: column-reverse; align-items: stretch; } }

/* Resepsiyon raporu */
.rs-app .hd-baslik { margin: 0; }
.rs-app .tk-bar { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin: 0; padding: 10px 12px; border: 1px solid var(--line); border-radius: 12px; background: var(--panel, #fff); }
.rs-app .tk-bar select, .rs-app .tk-bar input[type=date] { height: 38px; }
.rs-app .tk-bar .xls { margin-left: auto; }
.rs-aksiyon { align-items: flex-end; }
.rs-aksiyon label { flex-direction: column; align-items: flex-start; gap: 4px; }
.rs-aksiyon .primary, .rs-aksiyon .ghost { height: 38px; }
.rs-aksiyon .help { flex-basis: 100%; margin: 0; }
.rs-aksiyon .help:empty { display: none; }
.rs-app > h3 { margin: 4px 0 -4px; }
@media (max-width: 640px) { .rs-kpi { grid-template-columns: repeat(2, minmax(0, 1fr)); } .rs-app .tk-bar .xls { margin-left: 0; } }

/* Teklif 3. sayfa: kat planları ve proje tanıtım bağlantıları */
.pl-proje .ps-title { text-align: center; margin: 14px 0 10px; }
.pl-proje .ps-title h2 { margin: 0; font-size: 22px; letter-spacing: .06em; color: var(--slate); }
.pl-proje .ps-title p { margin: 2px 0 0; font-size: 12px; color: #77716B; }
.pl-proje .pp-izgara { flex: 1; min-height: 0; display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; align-content: start; }
.pl-proje .pp-izgara.pp-b { grid-template-columns: 1fr; }
.pl-proje figure { margin: 0; border: 1px solid #cfcac4; padding: 8px; display: flex; flex-direction: column; gap: 6px; background: #fff; min-height: 0; }
.pl-proje figure.on { border: 2px solid var(--ac, var(--navy)); }
.pl-proje figure img { width: 100%; height: 330px; object-fit: contain; background: #fafaf8; }
.pl-proje .pp-b figure img { height: 400px; }
.pl-proje figcaption { font-size: 12px; font-weight: 700; color: var(--slate); text-align: center; }
.pl-proje figcaption em { font-style: normal; font-weight: 600; color: var(--ac, var(--navy)); }
.pl-proje .pp-linkler { display: flex; justify-content: center; gap: 18px; margin: 14px 0 4px; }
.pl-proje .pp-kart { display: flex; flex-direction: column; align-items: center; gap: 4px; padding: 8px 10px; border: 1px solid #cfcac4; width: 190px; }
.pl-proje .pp-kart img { width: 110px; height: 110px; }
.pl-proje .pp-kart b { font-size: 11.5px; letter-spacing: .05em; color: var(--slate); }
.pl-proje .pp-kart span { font-size: 9.5px; color: #77716B; max-width: 170px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pl-proje .pp-not { text-align: center; font-size: 10.5px; color: #77716B; margin: 2px 0 6px; }
 

/* ---- Otomatik lead modülü ---- */
.otl-kat { display: grid; grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); gap: 12px; }
.otl-t { display: grid; grid-template-columns: 40px 1fr; grid-template-rows: auto auto; column-gap: 12px; align-items: center; text-align: start; padding: 12px 14px; border: 1px solid var(--line); border-radius: var(--r-lg); background: var(--card, #fff); cursor: pointer; font: inherit; }
.otl-t:hover { border-color: var(--accent, #2b6cb0); box-shadow: 0 2px 10px rgba(0, 0, 0, .06); }
.otl-t .otl-lg { grid-row: 1 / 3; }
.otl-t b { font-size: 14px; } .otl-t small { color: var(--mut); font-size: 12px; }
.otl-lg { display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: var(--r-md); color: #fff; font-weight: 800; font-size: 16px; flex: none; }
.otl-k { border: 1px solid var(--line); border-radius: var(--r-lg); padding: 14px 16px; margin-top: 12px; background: var(--card, #fff); }
.otl-k.kapali { opacity: .65; }
.otl-ust { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; }
.otl-ad { flex: 1 1 220px; min-width: 0; } .otl-ad b { display: block; font-size: 14px; } .otl-ad small { color: var(--mut); }
.otl-say { display: flex; gap: 16px; font-size: 13px; color: var(--mut); } .otl-say b { color: inherit; font-size: 16px; margin-right: 3px; }
.otl-say .kirmizi { color: #b4231b; }
.otl-son { font-size: 12px; min-width: 150px; text-align: right; }
.otl-act { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 12px; padding-top: 12px; border-top: 1px solid var(--line); }
.otl-kur { margin-top: 12px; padding: 14px 16px; border-radius: var(--r-md); background: var(--soft, #f6f8fb); }
.otl-kod { display: flex; gap: 8px; align-items: center; margin: 6px 0 10px; }
.otl-kod code { flex: 1; min-width: 0; padding: 9px 11px; border-radius: var(--r-md); background: #0b1f33; color: #dbe7ff; font: 12.5px/1.45 ui-monospace, Consolas, monospace; word-break: break-all; user-select: all; }
.otl-pre { margin: 6px 0; padding: 12px; border-radius: var(--r-md); background: #0b1f33; color: #dbe7ff; font: 12px/1.5 ui-monospace, Consolas, monospace; overflow: auto; white-space: pre; }
.otl-form { margin-top: 16px; }
.otl-kul { display: flex; flex-wrap: wrap; gap: 8px 18px; padding: 8px 0; }
.otl-sonuc { margin-top: 8px; padding: 10px 12px; border-radius: var(--r-md); background: #e3f4ea; color: #14532d; font-size: 13px; }
.otl-sonuc code { background: transparent; padding: 0 2px; font-weight: 700; }
.otl-sil { color: #b4231b; border-color: #e5b4b0; }
.otl-kpi { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; }
@media (max-width: 760px) { .otl-kpi { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; } .otl-son { text-align: left; } }

/* ---- Teklif 3. sayfa: daire planı (ortalı, dengeli) ---- */
.pl-proje { justify-content: flex-start; }
.pl-proje .ps-title { margin: 10px 0 12px; padding-bottom: 10px; border-bottom: 1px solid #d9d4cd; }
.pl-proje .ps-title h2 { font-size: 24px; }
.pl-proje .ps-title p { margin-top: 6px; font-size: 12.5px; letter-spacing: .03em; color: #5a554f; }
.pl-proje .pp-daire-kutu { flex: 1 1 auto; min-height: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 10px; position: relative; margin: 0 0 14px; padding: 30px 18px 18px; border: 1px solid #cfcac4; background: #fff; }
.pl-proje .pp-daire-kutu .pp-etiket { position: absolute; top: 0; left: 50%; transform: translate(-50%, -50%); padding: 3px 14px; background: var(--ac, var(--navy)); color: #fff; font-size: 11px; font-weight: 700; letter-spacing: .08em; white-space: nowrap; }
.pl-proje .pp-daire-kutu img { display: block; max-width: 100%; max-height: 100%; width: auto; height: auto; object-fit: contain; margin: 0 auto; }
.pl-proje .pp-daire-kutu.pp-cift img { max-height: 49%; }
.pl-proje .pp-izgara.pp-tek { flex: 0 0 auto; grid-template-columns: 1fr; justify-items: center; margin-bottom: 12px; }
.pl-proje .pp-izgara.pp-tek figure { width: 100%; max-width: 360px; flex-direction: row; align-items: center; gap: 12px; padding: 6px 10px; }
.pl-proje .pp-izgara.pp-tek figure img { width: 120px; height: 70px; flex: none; }
.pl-proje .pp-izgara.pp-tek figcaption { text-align: start; }
.pl-proje .pp-linkler { margin: 4px 0 2px; flex: 0 0 auto; }

/* Teklif ekranı: PDF içeriği kutusu */
.pdf-icerik { margin-top: 12px; padding: 12px 14px; border: 1px solid var(--line); border-radius: 10px; background: var(--soft, #f7f8fa); }
.pdf-icerik h4 { display: flex; justify-content: space-between; align-items: baseline; margin: 0 0 8px; font-size: 13px; }
.pdf-icerik h4 span { font-weight: 500; color: var(--mut); font-size: 12px; }
.pdf-icerik ol { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.pdf-icerik li { display: grid; grid-template-columns: 24px 1fr; gap: 10px; align-items: start; }
.pdf-icerik li i { display: inline-flex; width: 24px; height: 24px; align-items: center; justify-content: center; border-radius: 50%; background: var(--accent, #2b6cb0); color: #fff; font-style: normal; font-size: 12px; font-weight: 700; }
.pdf-icerik li b { display: block; font-size: 13px; }
.pdf-icerik li small { display: block; color: var(--mut); font-size: 12px; line-height: 1.4; }
.pdf-icerik .fine { margin: 8px 0 0; }

/* Teklif 1. sayfa: daire planı (proje fotoğrafı yerine) ve 2. sayfa QR şeridi */
.pl .pl-photo.pl-daire { align-items: center; justify-content: center; border: 1px solid #cfcac4; background: #fff; }
.pl .pl-photo.pl-daire img { margin: 0 auto; }
.pl-sema .ps-linkler { display: flex; flex-wrap: wrap; justify-content: center; align-items: flex-start; gap: 22px; margin: 4px 0 6px; padding: 8px 0 2px; border-top: 1px solid #d9d4cd; }
.pl-sema .ps-linkler div { display: flex; flex-direction: column; align-items: center; gap: 3px; }
.pl-sema .ps-linkler img { width: 78px; height: 78px; }
.pl-sema .ps-linkler b { font-size: 10px; letter-spacing: .05em; color: var(--slate); }
.pl-sema .ps-linkler p { flex-basis: 100%; margin: 0; text-align: center; font-size: 9.5px; color: #77716B; }

/* Teklif 1. sayfa: daire planı kutusu (çizgilere değmez, ortalı) */
.pl .pl-photo.pl-daire { margin: 12px 0 10px; padding: 12px 14px; box-sizing: border-box; border: 1px solid #d9d4cd; }

/* ---- Teklif kapağı (1. sayfa) ve şema sayfası: aynı üst / alt sistem ---- */
.pl.kapak, .pl.pl-sema { padding: 34px 54px 30px; font-family: "Segoe UI", Calibri, Carlito, Arial, sans-serif; color: #1F2128; }
.kp-ust { display: flex; align-items: center; justify-content: space-between; border-bottom: 2px solid var(--slate); padding-bottom: 10px; }
.kp-ust .pl-logo { height: 60px; }
.kp-no { text-align: end; font-size: 11px; color: #77716B; line-height: 1.5; }
.kp-no b, .kp-no span { display: block; } .kp-no b { font-size: 12.5px; color: #1F2128; } .kp-no .draft { color: var(--red); font-weight: 700; }
.kp-orta { flex: 1 1 0; min-height: 0; display: flex; flex-direction: column; justify-content: space-between; padding: 22px 0 0; }
.kapak .pl-photo { flex: 0 0 auto; height: 380px; border-radius: 10px; overflow: hidden; }
.kp-ad { text-align: center; } .kp-ad small { display: block; font-size: 11px; letter-spacing: .22em; color: #8a8279; margin-bottom: 4px; }
.kp-ad h1 { margin: 0; font-size: 34px; letter-spacing: .02em; color: var(--slate); line-height: 1.15; }
.kp-daire { border: 2px solid var(--slate); } .kp-daire h3 { margin: 0; padding: 6px 14px; background: var(--slate); color: #fff; font-size: 11px; letter-spacing: .18em; font-weight: 700; text-align: center; }
.kp-izgara { display: grid; grid-template-columns: repeat(4, 1fr); }
.kp-izgara > div { padding: 11px 12px; text-align: center; } .kp-izgara > div:nth-child(n+5) { border-top: 1px solid #e7e2dc; }
.kp-izgara span { display: block; font-size: 9.5px; letter-spacing: .06em; color: #77716B; text-transform: uppercase; }
.kp-izgara b { display: block; font-size: 18px; font-weight: 700; color: var(--slate); margin-top: 2px; }
.kp-dogrula { text-align: center; min-height: 92px; } .kp-dogrula img { width: 74px; height: 74px; image-rendering: pixelated; display: block; margin: 0 auto 2px; }
.kp-dogrula span { font-size: 9.5px; font-weight: 700; letter-spacing: .08em; color: #55504A; }
.kp-danisman { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 12px; padding: 9px 14px; border: 1px solid #cfcac4; border-radius: 6px; font-size: 11px; color: #555; }
.kp-danisman span { font-size: 9px; letter-spacing: .08em; text-transform: uppercase; color: #8a8279; } .kp-danisman b { font-weight: 600; color: #333; } .kp-danisman em { font-style: normal; color: #8a8279; } .kp-danisman i { flex: 1; }
.pl2-takvim h3 { margin: 4px 0 6px; font-size: 11px; letter-spacing: .14em; color: var(--slate); }
.pl2-takvim .tk { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
.pl2-takvim table { width: 100%; border-collapse: collapse; font-size: 9.5px; font-variant-numeric: tabular-nums; }
.pl2-takvim td { padding: 2.5px 6px; border-bottom: 1px solid #ece8e3; } .pl2-takvim td:last-child { text-align: end; font-weight: 600; }
.pl2-takvim tr.on td { background: var(--stone); font-weight: 700; }

/* teklif sayfası: kapak ve şema ile aynı üst bilgi; alt QR'lar sığsın */
.pl.pl2 { padding: 34px 54px 24px; gap: 9px; }
.kp-no .kp-baslik { font-size: 20px; letter-spacing: .14em; color: var(--slate); }
.pl.pl2 .pl-photo.pl-daire { flex: 1 1 0; min-height: 0; }
.pl2-ozel .g > div { padding: 4px 8px; } .pl2-fiyat > div { padding: 6px 12px; } .pl2-fiyat .pesin { padding: 9px 14px; }
.pl2-takvim td { padding: 2px 6px; }
.pl.pl2 .pl-foot { flex: none; }

/* ---- v7b düzeni: kapak / fiyat+takvim / şema ---- */
.kp-ust { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; padding-bottom: 10px; border-bottom: 2px solid var(--slate); }
.kp-sol b { display: block; font-size: 11.5px; } .kp-sol small { display: block; color: #777; font-size: 10px; margin-top: 2px; } .kp-sol small.draft { color: var(--red); font-weight: 700; }
.kp-sag { text-align: end; font-size: 11.5px; font-weight: 700; }
.kp-orta { flex: 1 1 0; min-height: 0; display: flex; flex-direction: column; gap: 13px; padding-top: 14px; }
.kapak .pl-photo { flex: 1 1 0; min-height: 0; height: auto; position: relative; border-radius: 0; }
.kapak .pl-photo em { position: absolute; left: 0; bottom: 0; padding: 7px 18px; background: var(--slate); color: #fff; font-style: normal; font-size: 12px; font-weight: 700; letter-spacing: .2em; }
.kp-ad { text-align: start; } .kp-ad small { display: block; font-size: 10.5px; letter-spacing: .2em; color: #8a8279; margin-bottom: 2px; }
.kp-ad h1 { margin: 0; font-size: 28px; color: var(--slate); line-height: 1.2; } .kp-ad p { margin: 2px 0 0; color: #6b665f; font-size: 13px; }
.kp-kart { display: grid; grid-template-columns: repeat(4, 1fr); gap: 6px; }
.kp-kart > div { background: #F6F4F1; border-radius: 7px; padding: 6px 8px; text-align: center; border-bottom: 2px solid var(--stone); min-width: 0; }
.kp-kart .g2 { grid-column: span 2; background: var(--stone); } .kp-kart .g4 { grid-column: span 4; background: var(--stone); }
.kp-kart span { display: block; font-size: 9px; color: #77716B; text-transform: uppercase; letter-spacing: .06em; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.kp-kart b { display: block; font-size: 14px; margin-top: 1px; overflow-wrap: anywhere; line-height: 1.2; }
.kp-dogrula { display: flex; gap: 16px; align-items: center; border: 1px solid #d9d4cd; padding: 10px 14px; }
.kp-dogrula img { width: 88px; height: 88px; image-rendering: pixelated; flex: none; }
.kp-dogrula b { display: block; font-size: 14px; } .kp-dogrula span { display: block; font-size: 11px; color: #444; margin: 2px 0 4px; } .kp-dogrula small { font-size: 10px; color: #777; }
.kp-dan { display: grid; grid-template-columns: auto 1fr; gap: 26px; align-items: center; padding: 10px 4px 2px; border-top: 1px solid #d9d4cd; }
.kp-dan span { display: block; font-size: 9px; letter-spacing: .08em; text-transform: uppercase; color: #8a8279; } .kp-dan b { font-size: 15px; }
.kp-dan-il { display: flex; gap: 28px; justify-content: flex-end; } .kp-dan-il b { font-size: 12px; }
.ps-baslik h2 { margin: 6px 0 0; padding-bottom: 6px; border-bottom: 1px solid #d9d4cd; font-size: 13px; letter-spacing: .14em; color: var(--slate); }
.pl2-fiyat.uc { width: auto; margin: 0; grid-template-columns: repeat(3, 1fr); gap: 10px; }
.pl2-fiyat.uc > div { border-radius: 0; padding: 12px 10px; } .pl2-fiyat.uc b { font-size: 20px !important; }
.pl2-fiyat.uc .toplam { background: #F6F4F1; border: 2px solid var(--slate); } .pl2-fiyat.uc .toplam span { color: #55504A; } .pl2-fiyat.uc .toplam b { color: var(--slate); }
.pl2-fiyat.uc .pesin { background: var(--stone); border: 0; } .pl2-fiyat.uc .pesin span { color: #55504A; } .pl2-fiyat.uc .pesin b { color: var(--slate); }
.pl2-fiyat.uc .liste { background: var(--stone); }
.pl2-takvim th { background: var(--slate); color: #fff; font-size: 9px; text-align: start; padding: 3px 6px; } .pl2-takvim th:last-child { text-align: end; }
.pl.pl2 .pl-photo.pl-daire { flex: 1 1 0; min-height: 0; border: 1px solid #d9d4cd; border-radius: 0; }
.pl.pl2 .pl-note { font-size: 8.6px; margin: 0; }
.kp-dogrula { text-align: start; min-height: 0; display: flex; }
.kp-dogrula span { font-size: 11px; font-weight: 400; letter-spacing: 0; color: #444; }
.kp-dogrula small { display: block; }

/* nakit teklif: iki fiyat kutusu, daha geniş daire planı */
.pl2-fiyat.iki2 { width: auto; margin: 0; grid-template-columns: repeat(2, 1fr); gap: 12px; }
.pl2-fiyat.iki2 > div { border-radius: 0; padding: 16px 12px; } .pl2-fiyat.iki2 .liste { background: var(--stone); }
.pl2-fiyat.iki2 .liste b { font-size: 24px; } .pl2-fiyat.iki2 .pesin { background: var(--slate); } .pl2-fiyat.iki2 .pesin span, .pl2-fiyat.iki2 .pesin b { color: #fff; } .pl2-fiyat.iki2 .pesin b { font-size: 30px; }
.odtur { display: flex; gap: 0; margin: 0 0 12px; border: 1px solid var(--line, #cfcac4); border-radius: var(--r-md); overflow: hidden; }
.odtur button { flex: 1; padding: 9px 10px; border: 0; background: #fff; font-size: 14px; font-weight: 600; color: #55504A; cursor: pointer; }
.odtur button.on { background: var(--slate, #34366B); color: #fff; }

.pl2-bilgi { flex: 1 1 0; min-height: 0; border-top: 1px solid #d9d4cd; padding-top: 8px; }
.pl2-bilgi h3 { margin: 0 0 6px; font-size: 11px; letter-spacing: .14em; color: var(--slate); }
.pl2-bilgi ul { margin: 0; padding-inline-start: 16px; font-size: 11px; line-height: 1.55; color: #55504A; }

.pl2-tasarruf { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 14px 18px; border: 2px solid var(--slate); background: #F6F4F1; }
.pl2-tasarruf span { display: block; font-size: 11px; font-weight: 700; letter-spacing: .12em; color: var(--slate); } .pl2-tasarruf small { display: block; font-size: 11px; color: #55504A; margin-top: 2px; }
.pl2-tasarruf b { font-size: 26px; color: var(--slate); font-variant-numeric: tabular-nums; } .pl2-tasarruf i { font-style: normal; font-size: 13px; margin-inline-start: 8px; padding: 1px 8px; border-radius: 99px; background: #FDE3E1; color: var(--red); }
.pl.pl2 .pl-photo.pl-daire { margin-block: auto; }
.pl2-bilgi { flex: 0 0 auto; margin-top: auto; }
.pl-sema .ps-draw { overflow: hidden; }

.pl-adres { flex: none; margin-top: auto; display: flex; justify-content: space-between; gap: 12px; border-top: 1px solid #d9d4cd; padding-top: 7px; font-size: 8.6px; color: #6b665f; }
.pl.pl2 .pl-note { margin-bottom: 4px; }
.pl-sema .ps-linkler small { font-size: 8.5px; color: #77716B; max-width: 110px; text-align: center; }
.pl-sema .ps-linkler { gap: 26px; }

/* ---- Menü merkezleri: sayfa içi sekme çubuğu (düz, çizgili; Agency CRM düzeni) ---- */

/* ---- Ortak kayıt kartı (müşteri, acenta, satışçı, fırsat) ---- */
.kk-geri { margin-bottom: 10px; }
.kk-bas { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; margin-bottom: 14px; }
.kk-av { width: 54px; height: 54px; border-radius: 50%; background: var(--navy); color: #fff; display: grid; place-items: center; font-weight: 700; font-size: 18px; flex: none; }
.kk-ad { flex: 1 1 260px; min-width: 0; }
.kk-ad h2 { margin: 0 0 4px; font-size: 20px; display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.kk-meta { font-size: 13px; color: var(--mut); display: flex; gap: 6px; flex-wrap: wrap; }
.kk-dug { display: flex; gap: 8px; flex-wrap: wrap; }
.btn-k { display: inline-flex; align-items: center; padding: 8px 14px; border: 1px solid var(--line); border-radius: var(--r-md); background: #fff; color: var(--ink); font: inherit; font-size: 13px; font-weight: 600; text-decoration: none; cursor: pointer; }
.btn-k:hover { border-color: #b9b3aa; }
.btn-k-ana { background: var(--navy); border-color: var(--navy); color: #fff; }
.kk-sek { display: flex; gap: 2px; border-bottom: 1px solid var(--line); margin: 14px 0 0; overflow-x: auto; -webkit-overflow-scrolling: touch; }
.kk-sek button { background: none; border: 0; border-bottom: 3px solid transparent; padding: 10px 14px 8px; font: inherit; font-size: 14px; font-weight: 600; color: var(--mut); cursor: pointer; white-space: nowrap; }
.kk-sek button:hover { color: var(--ink); }
.kk-sek button.on { color: var(--navy); border-bottom-color: var(--navy); }
.kk-n { display: inline-block; min-width: 18px; padding: 0 6px; border-radius: 99px; background: #ece8e3; color: #55504A; font-size: 11px; text-align: center; margin-left: 4px; }
.kk-panel[hidden] { display: none; }
.kk-akis { list-style: none; margin: 10px 0 0; padding: 0; display: grid; gap: 0; }
.kk-akis li { display: flex; gap: 12px; padding: 10px 0; border-bottom: 1px solid var(--line); }
.kk-akis li:last-child { border-bottom: 0; }
.kk-nok { width: 28px; height: 28px; border-radius: 50%; background: #f1eee9; display: grid; place-items: center; font-size: 13px; flex: none; }
.kk-akis b { display: block; font-size: 14px; } .kk-akis small { display: block; color: #55504A; margin-top: 2px; } .kk-akis em { display: block; font-style: normal; font-size: 12px; color: var(--mut); margin-top: 2px; }
.kk-gorev { list-style: none; margin: 0 0 10px; padding: 0; } .kk-gorev li { padding: 8px 0; border-bottom: 1px solid var(--line); } .kk-gorev b { display: block; font-size: 14px; } .kk-gorev small { color: var(--mut); }
.kk-not { margin: 8px 0 0; font-size: 13px; }
@media (max-width: 860px) { .kk-bas { gap: 12px; } .kk-dug { width: 100%; } .kk-dug .btn-k { flex: 1 1 auto; justify-content: center; } }

.kk-serit { background: #f6f4f1; border-radius: var(--r-md); padding: 10px 14px; margin: 14px 0 0; font-size: 14px; } .kk-serit b { color: var(--navy); margin-right: 8px; }
.kk-bar { display: grid; grid-template-columns: 150px 1fr 70px; align-items: center; gap: 10px; margin: 6px 0; font-size: 13px; }
.kk-bar i { display: block; height: 9px; background: #ece8e3; border-radius: 99px; overflow: hidden; } .kk-bar u { display: block; height: 100%; background: var(--navy); } .kk-bar em { font-style: normal; text-align: right; color: var(--mut); }
.kk-gunluk { display: flex; align-items: flex-end; gap: 6px; height: 80px; } .kk-gunluk div { flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: flex-end; height: 100%; gap: 3px; }
.kk-gunluk i { width: 100%; max-width: 26px; background: #ece8e3; border-radius: var(--r-sm) var(--r-sm) 0 0; } .kk-gunluk i.v { background: var(--navy); } .kk-gunluk small { font-size: 11px; color: var(--mut); }
.kk-isi { display: grid; grid-template-columns: 34px repeat(24, 1fr); gap: 2px; align-items: center; }
.kk-isi-s { font-size: 11px; color: var(--mut); text-align: center; } .kk-isi-g { font-size: 11px; color: var(--mut); }
.kk-isi-h { height: 18px; border-radius: var(--r-sm); background: color-mix(in srgb, var(--navy) calc(var(--y) * 100%), #f0ede9); }

/* ---- Kayıt kartı: belirgin başlık, tek şerit özet, büyük sekmeler, kartlı bölümler ---- */
.kk-bas { background: #fff; border: 1px solid var(--line); border-radius: var(--r-lg); padding: 16px 20px; box-shadow: 0 1px 3px rgba(20, 24, 40, .06); }
.kk-av { width: 58px; height: 58px; font-size: 18px; box-shadow: 0 0 0 4px rgba(52, 54, 107, .12); }
.kk-ad h2 { font-size: 24px; }
.kk-kpi .rp-cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 0; margin: 0 0 14px; background: #fff; border: 1px solid var(--line); border-radius: var(--r-lg); overflow: hidden; box-shadow: var(--g-1, 0 1px 2px rgba(0, 0, 0, .06)); }
.kk-kpi .rp-card { border: 0; border-right: 1px solid var(--line); border-radius: 0; padding: 14px 16px; background: transparent; display: flex; flex-direction: column; gap: 3px; box-shadow: none; }
.kk-kpi .rp-card:last-child { border-right: 0; }
.kk-kpi .rp-card span { font-size: var(--yz-xs, 12px); font-weight: 600; color: var(--mut); text-transform: none; letter-spacing: 0; opacity: 1; line-height: 1.3; }   /* standart .stat etiketi (kutu.css) */
.kk-kpi .rp-card b { font-size: clamp(20px, 1.4vw + 6px, 26px); font-weight: 650; line-height: 1.2; color: var(--ink); font-variant-numeric: tabular-nums; }   /* standart .stat değeri; şerit birleşik kalır */
.kk-sek { background: #fff; border: 1px solid var(--line); border-radius: var(--r-lg); padding: 0 8px; margin: 0 0 14px; box-shadow: 0 1px 3px rgba(20, 24, 40, .06); gap: 4px; }
.kk-sek button { padding: 14px 18px 12px; font-size: 14px; font-weight: 700; letter-spacing: .01em; }
.kk-sek button.on { color: var(--navy); background: rgba(52, 54, 107, .07); border-bottom-width: 3px; border-radius: var(--r-md) var(--r-md) 0 0; }
.kk-n { background: var(--navy); color: #fff; }
.kk-sek button:not(.on) .kk-n { background: #e6e2dc; color: #55504A; }
.kk-panel .dt-b { margin-top: 14px; box-shadow: 0 1px 3px rgba(20, 24, 40, .06); border-radius: var(--r-lg); }
.kk-panel > .dt-b:first-child, .kk-panel > .dt-iki:first-child .dt-b { margin-top: 0; }
.kk-panel .dt-iki .dt-b { margin-top: 0; }
.kk-panel .dt-b h3 { font-size: 16px; margin: 0 0 12px; padding-bottom: 10px; border-bottom: 1px solid var(--line); color: var(--navy); }
.kk-panel .dt-b h4 { margin: 16px 0 6px; }
@media (max-width: 860px) { .kk-kpi .rp-card { border-right: 0; border-bottom: 1px solid var(--line); } .kk-sek button { padding: 12px 13px 10px; } .kk-bas { padding: 14px; } }

/* ---- "+ Yeni" menüsü ---- */
.yeni-w { position: relative; display: inline-block; }
.yeni-btn { display: inline-flex; align-items: center; gap: 6px; padding: 8px 14px; border: 0; border-radius: var(--r-md); background: #fff; color: var(--navy); font: inherit; font-size: 14px; font-weight: 700; cursor: pointer; }
.yeni-btn:hover { background: #eef0fb; }
.yeni-menu { position: absolute; right: 0; top: calc(100% + 8px); min-width: 220px; background: #fff; color: var(--ink); border: 1px solid var(--line); border-radius: var(--r-lg); box-shadow: 0 12px 32px rgba(20, 24, 40, .22); padding: 6px; z-index: 300; }
.yeni-menu[hidden] { display: none; }
.yeni-menu button { display: flex; align-items: center; gap: 10px; width: 100%; padding: 10px 12px; border: 0; background: none; border-radius: var(--r-md); font: inherit; font-size: 14px; color: var(--ink); cursor: pointer; text-align: start; }
.yeni-menu button:hover { background: #f1f2f8; }
@media (max-width: 720px) { .yeni-btn > span { display: none; } .yeni-btn { padding: 8px 10px; } }
/* ---- Hızlı not / temas penceresi ---- */
.hz-perde { position: fixed; inset: 0; z-index: 1000; background: rgba(20, 24, 40, .45); display: grid; place-items: center; padding: 16px; }
.hz-kutu { width: min(520px, 100%); max-height: 92vh; overflow: auto; background: #fff; border-radius: var(--r-lg); padding: 18px 20px; box-shadow: 0 20px 60px rgba(0, 0, 0, .3); display: grid; gap: 14px; }
.hz-ust { display: flex; align-items: center; justify-content: space-between; } .hz-ust b { font-size: 16px; } .hz-x { background: none; border: 0; font-size: 18px; cursor: pointer; color: var(--mut); }
.hz-satir { display: grid; gap: 6px; font-size: 13px; } .hz-satir > span:first-child { font-weight: 700; color: var(--mut); text-transform: uppercase; letter-spacing: .05em; font-size: 11px; }
.hz-satir small { font-weight: 400; text-transform: none; letter-spacing: 0; }
.hz-satir textarea, .hz-satir input[type=date], .hz-ara { width: 100%; box-sizing: border-box; padding: 9px 11px; border: 1px solid var(--line); border-radius: var(--r-md); font: inherit; }
.hz-chip { display: flex; flex-wrap: wrap; gap: 6px; } .hz-chip button { padding: 8px 13px; border: 1px solid var(--line); border-radius: 99px; background: #fff; font: inherit; font-size: 13px; font-weight: 600; cursor: pointer; color: var(--ink); }
.hz-chip button.on { background: var(--navy); border-color: var(--navy); color: #fff; } .hz-chip button:disabled { opacity: .4; cursor: default; }
.hz-tarih { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; } .hz-tarih input { width: auto !important; } .hz-hizli { display: flex; gap: 6px; } .hz-hizli button { padding: 6px 10px; border: 1px solid var(--line); border-radius: var(--r-md); background: #fff; cursor: pointer; font: inherit; font-size: 12px; }
.hz-alt { display: flex; justify-content: flex-end; gap: 10px; }
.hz-sec { display: flex; align-items: center; gap: 10px; padding: 10px 12px; border: 1px solid var(--line); border-radius: var(--r-md); background: #f6f4f1; } .hz-rozet { padding: 2px 9px; border-radius: 99px; background: var(--navy); color: #fff; font-size: 11px; }
.hz-liste { display: grid; margin-top: 6px; max-height: 220px; overflow: auto; } .hz-liste button { display: grid; gap: 1px; text-align: start; padding: 8px 10px; border: 0; border-bottom: 1px solid var(--line); background: none; cursor: pointer; font: inherit; } .hz-liste button:hover { background: #f1f2f8; } .hz-liste small { color: var(--mut); }
/* ---- Bugün ekranı ---- */
.bg .kk-bas { margin-bottom: 14px; }
.bg-iki { margin-top: 14px; }
.bg-l { list-style: none; margin: 0; padding: 0; } .bg-l li { display: grid; grid-template-columns: 74px 1fr auto; gap: 10px; align-items: center; padding: 9px 0; border-bottom: 1px solid var(--line); } .bg-l li:last-child { border-bottom: 0; }
.bg-saat { font-size: 12px; font-weight: 700; color: var(--navy); } .bg-l b { display: block; font-size: 14px; } .bg-l small { color: var(--mut); font-size: 12px; }
.bg-act { display: flex; gap: 8px; align-items: center; }
.bg-karar { border-left: 4px solid var(--navy); }
.bg-karar-l { display: flex; gap: 10px; flex-wrap: wrap; } .bg-kk { display: flex; align-items: center; gap: 10px; padding: 12px 16px; border: 1px solid var(--line); border-radius: var(--r-md); text-decoration: none; color: var(--ink); background: #fff; } .bg-kk:hover { border-color: var(--navy); }
.bg-kk b { font-size: 20px; color: var(--navy); } .bg-kk span { font-size: 13px; font-weight: 600; }

/* ---- Menü: yalnız yan menü (Agency CRM düzeni): koyu zemin, bölüm başlıkları, düz liste ---- */
.top { gap: 16px; }
.side { background: var(--side-bg, color-mix(in srgb, var(--navy) 90%, #070a26)); width: 248px; border: 0 !important; }
.side-ust { padding: 6px 10px 12px; gap: 1px; }
.nav-grp { padding: 18px 12px 6px; font-size: 11px; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; color: rgba(255, 255, 255, .5); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.nav-ara { height: 4px; }
.nav-ara + .si, .side-ust > .nav-ara:first-child + .si { margin-top: 4px; }
.side .si { color: rgba(255, 255, 255, .84); padding: 9px 12px; border-radius: var(--r-md); font-size: 14px; font-weight: 500; }
.side .si .ik { width: 18px; height: 18px; color: rgba(255, 255, 255, .62); }
.side .si:hover { background: rgba(255, 255, 255, .09); color: #fff; }
.side .si:hover .ik { color: #fff; }
.side .si.on { background: rgba(255, 255, 255, .15); color: #fff; font-weight: 700; }
.side .si.on .ik { color: #fff; }
.side .si.on::before { left: 0; top: 7px; bottom: 7px; width: 3px; background: #f0b429; }
.side .si .bdg { background: #f0b429; color: #2a2100; }
.side-tog { color: rgba(255, 255, 255, .7); border-bottom: 0 !important; border-top: 1px solid rgba(255, 255, 255, .1); }
.side-tog:hover { background: rgba(255, 255, 255, .08); color: #fff; }
.side-cekmece { background: var(--side-bg, color-mix(in srgb, var(--navy) 90%, #070a26)); }
.side-cekmece .drw-ust, .side-cekmece .drw-proj { color: #fff; }
#app[data-dar="1"] .side { width: 68px; }
#app[data-dar="1"] .side .si { justify-content: center; padding: 11px 0; position: relative; }
#app[data-dar="1"] .side .si > span:not(.bdg) { display: none; }
#app[data-dar="1"] .side .nav-grp { visibility: hidden; height: 10px; padding: 0; }
#app[data-dar="1"] .side .si .bdg { position: absolute; top: 3px; right: 6px; margin: 0; min-width: 16px; font-size: 11px; line-height: 16px; }
.nav-grp, .nav-ara, .side .si { flex: none; }

/* ---- Sıcaklık puanı, teklif görülme ---- */
.sic-r { color: #fff !important; } .sic-r.sic-sicak { background: #c2410c; } .sic-r.sic-ilik { background: #b7791f; } .sic-r.sic-soguk { background: #52606d; }
.sic-bar { display: flex; align-items: center; gap: 12px; margin: 2px 0 12px; } .sic-bar i { flex: 1; height: 10px; background: #ece8e3; border-radius: 99px; overflow: hidden; } .sic-bar u { display: block; height: 100%; }
.sic-bar.sic-sicak u { background: #c2410c; } .sic-bar.sic-ilik u { background: #b7791f; } .sic-bar.sic-soguk u { background: #52606d; } .sic-bar b { font-size: 13px; white-space: nowrap; }
.sic-n { list-style: none; margin: 0; padding: 0; font-size: 13px; } .sic-n li { display: flex; gap: 10px; padding: 5px 0; border-bottom: 1px solid var(--line); color: var(--mut); } .sic-n li:last-child { border-bottom: 0; }
.sic-n li span { width: 34px; font-weight: 700; text-align: right; } .sic-n li.v { color: var(--ink); } .sic-n li.v span { color: #1d7a46; } .sic-n li.ek { color: var(--ink); } .sic-n li.ek span { color: #b42318; }
.goz { display: block; color: #1d7a46; margin-top: 2px; font-size: 11px; }
.dt-iki > div > .dt-b { margin-top: 0; } .dt-iki > div > .dt-b + .dt-b { margin-top: 14px; }

/* ---- Veri kalitesi ---- */
.vk-l { list-style: none; margin: 0; padding: 0; } .vk-l li { display: grid; grid-template-columns: 64px 1fr auto; gap: 14px; align-items: center; padding: 12px 0; border-bottom: 1px solid var(--line); } .vk-l li:last-child { border-bottom: 0; }
.vk-n { font-size: 20px; font-weight: 700; text-align: center; border-radius: var(--r-md); padding: 6px 0; } .vk-l li.ok .vk-n { background: #e5f4ea; color: #1d7a46; } .vk-l li.sor .vk-n { background: #fdecea; color: #b42318; } .vk-l li.yok .vk-n { background: #eee; color: #777; }
.vk-l b { display: block; font-size: 14px; } .vk-l small { color: var(--mut); font-size: 12px; }

/* ---- Yan menüde merkezin sayfaları: aktif öğenin altında girintili liste (üstteki sekme çubuğu kalktı) ---- */

/* ---- İçerik sütunu: sayfa içi sekmeler (içerikle aynı genişlik, ince çizgili) ---- */
.govde > .icerik { flex: 1 1 auto; min-width: 0; display: block; }
.pg-sek { padding: 12px var(--sayfa-px) 0; }
.pg-sek-i { max-width: calc(var(--sayfa-w) - 2 * var(--sayfa-px)); margin: 0 auto; display: flex; gap: 2px; border-bottom: 1px solid var(--line); overflow-x: auto; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
.pg-sek-i::-webkit-scrollbar { display: none; }
.pg-sek a { display: inline-flex; align-items: center; gap: 7px; padding: 10px 16px 11px; margin-bottom: -1px; border-bottom: 2px solid transparent; color: var(--mut); font-size: 14px; font-weight: 600; text-decoration: none; white-space: nowrap; }
.pg-sek a:hover { color: var(--ink); }
.pg-sek a.on { color: var(--navy); border-bottom-color: var(--navy); font-weight: 700; }
.pg-sek .bdg { margin-left: 0; }
#app[data-sohbet="1"] .pg-sek { display: none; }

/* ---- Menü favorileri ---- */
.si-w { position: relative; display: flex; flex: none; }
.si-w > .si { flex: 1; min-width: 0; padding-right: 34px; }
.si-yildiz { position: absolute; right: 6px; top: 50%; transform: translateY(-50%); width: 26px; height: 26px; border: 0; border-radius: var(--r-sm); background: none; color: rgba(255, 255, 255, .55); font-size: 14px; line-height: 1; cursor: pointer; opacity: 0; transition: opacity .12s; }
.si-w:hover .si-yildiz, .si-yildiz:focus-visible, .si-yildiz.on { opacity: 1; }
.si-yildiz.on { color: #f0b429; } .si-yildiz:hover { background: rgba(255, 255, 255, .12); color: #f0b429; }
.side .si-w > .si .bdg { margin-right: 0; }
.nav-fav { color: #f0b429; }
#app[data-dar="1"] .si-yildiz { display: none; }
.pg-yildiz { margin-left: auto; align-self: center; padding: 6px 12px; border: 1px solid var(--line); border-radius: var(--r-md); background: #fff; color: var(--mut); font: inherit; font-size: 12px; font-weight: 600; cursor: pointer; white-space: nowrap; }
.pg-yildiz:hover { color: var(--ink); border-color: #b9b3aa; } .pg-yildiz.on { color: #b7791f; border-color: #e5c37a; background: #fffaf0; }

/* ---- Telefon / tablet çekmece menüsü: koyu zemin + daraltılmış (simge) kipinden etkilenmez ---- */
.drw .side-cekmece { background: var(--side-bg, color-mix(in srgb, var(--navy) 90%, #070a26)); }
.side-cekmece .drw-ust { border-bottom-color: rgba(255, 255, 255, .14); }
.side-cekmece .drw-ust b { color: #fff; }
.side-cekmece .drw-ust button { color: rgba(255, 255, 255, .8); }
.side-cekmece .drw-proj { padding: 10px 18px; border-bottom: 1px solid rgba(255, 255, 255, .14); }
.side-cekmece .drw-proj small { color: rgba(255, 255, 255, .6); }
#app[data-dar="1"] .side-cekmece .si { justify-content: flex-start; padding: 9px 12px; }
#app[data-dar="1"] .side-cekmece .si > span:not(.bdg) { display: inline; }
#app[data-dar="1"] .side-cekmece .nav-grp { visibility: visible; height: auto; padding: 18px 12px 6px; }
#app[data-dar="1"] .side-cekmece .si-yildiz { display: block; }
#app[data-dar="1"] .side-cekmece .si .bdg { position: static; margin-left: auto; font-size: inherit; line-height: inherit; }
@media (hover: none) { .si-yildiz { opacity: .75; } }

/* ---- Arama kutusu (üst çubuk): tek tanım ---- */
.ara-alan { flex: 1 1 360px; max-width: 560px; min-width: 0; display: inline-flex; align-items: center; justify-content: flex-start; gap: 9px; height: auto; padding: 9px 14px; border: 1px solid color-mix(in srgb, var(--bar-yazi, #fff) 25%, transparent); border-radius: var(--r-md); background: color-mix(in srgb, var(--bar-yazi, #fff) 10%, transparent); color: var(--bar-yazi, #fff); font: inherit; font-size: 13px; cursor: text; text-align: left; }
.ara-alan:hover { background: color-mix(in srgb, var(--bar-yazi, #fff) 18%, transparent); }
.ara-alan svg { flex: none; }
.ara-alan span { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; opacity: .92; }
.ara-alan kbd { font: inherit; font-size: 11px; opacity: .8; padding: 1px 6px; border: 1px solid color-mix(in srgb, var(--bar-yazi, #fff) 35%, transparent); border-radius: var(--r-sm); }
@media (max-width: 720px) { .ara-alan { flex: 0 0 auto; width: 40px; height: 40px; padding: 0; justify-content: center; border: 0; background: transparent; } .ara-alan span, .ara-alan kbd { display: none; } }
/* Tahsilat özet kutuları: dar ekranda 2 sütun (4 × 150 px taşıyordu) */
@media (max-width: 860px) { .th-k { grid-template-columns: repeat(2, minmax(0, 1fr)); } .kpi b { overflow-wrap: anywhere; } }

/* ---- Aşama 1: tablet hamburgeri, kontrast, dar ekran rozeti ---- */
/* 481-860 px: alt çubuktaki "Menü" çekmeceyi açar (aynı işi yapan ikinci hamburger gösterilmez; düğme DOM'da kalır, alt çubuk onu tetikler) */
@media (min-width: 481px) and (max-width: 860px) { .mnu-btn { display: none !important; } }
@media (max-width: 480px) { .top .ap-rozet { display: none; } }
.nav-grp { color: rgba(255, 255, 255, .74); }
.pg-sek a { color: #5f5a54; }
.pg-yildiz { color: #5f5a54; }
.kk-sek button:not(.on) { color: #5f5a54; }

/* ---- Sayfa kabuğu (Aşama 2): TEK kaynak --sayfa-w. Ekranın kök <main> elemanı, sayfa başlığı ve sekme çubuğu aynı genişlik ve aynı sol kenarı kullanır.
   Tam genişlik ekranlar (crm, envanter, bina şeması, teklif oluştur, takvim, satış formu, gruplar, fiyat geçmişi) --sayfa-genis ile BİLİNÇLİ ayrılır. ---- */
@media (min-width: 861px) {
  .icerik > main { max-width: var(--sayfa-w); margin-inline: auto; box-sizing: border-box; }
  .icerik > main:is(.hesap-ekran, .ls-app) { max-width: var(--sayfa-dar); }
  .icerik > main:is(.crm-app, .inv-app, .sema-app, .sh-app, .plan-view, .tv-app, .grp-app, .fg-app), .icerik > main:has(#stBody.sf) { max-width: var(--sayfa-genis); }
  .icerik:has(> main:is(.crm-app, .inv-app, .sema-app, .sh-app, .plan-view, .tv-app, .grp-app, .fg-app)) :is(.pg-bas, .pg-sek-i, .sekme-bar),
  .icerik:has(> main #stBody.sf) :is(.pg-bas, .pg-sek-i, .sekme-bar) { max-width: var(--sayfa-genis); }
}
.sekme-bar { max-width: var(--sayfa-w); margin: 0 auto; padding: 16px var(--sayfa-px) 0; box-sizing: border-box; }

.pg-sek-sec { border-bottom: 0; align-items: center; padding: 2px 0 6px; justify-content: space-between; gap: 10px; overflow: visible; }
.pg-sek-sec label { display: inline-flex; align-items: center; gap: 10px; font-size: 13px; font-weight: 600; color: #5f5a54; }
.pg-sek-sec select { padding: 8px 32px 8px 12px; border: 1px solid var(--line); border-radius: var(--r-md); background: #fff; font: inherit; font-size: 14px; font-weight: 600; color: var(--navy); min-width: 220px; }
@media (pointer: coarse) {
  .chip, .primary.sm, .ghost.sm, .danger.sm, .btn-k, .pg-sek a, .kk-sek button, .tk td button, .tk td .link { min-height: 40px; }
  .chip, .primary.sm, .ghost.sm, .danger.sm { display: inline-flex; align-items: center; }
}
@media (max-width: 480px) {
  .kk-kpi .rp-cards { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
  .kk-kpi .rp-cards::-webkit-scrollbar { display: none; }
  .kk-kpi .rp-card { flex: 0 0 150px; scroll-snap-align: start; border-bottom: 0; border-right: 1px solid var(--line); }
  .kk-ad .sic-r { display: none; }
  .kk-av { width: 46px; height: 46px; font-size: 16px; }
  .kk-ad h2 { font-size: 20px; }
}

/* sekmeli sayfa: iç sekme düğmeleri sayfa içeriğiyle aynı ortalı sütunda */

/* ---- Yan menü alt menüsü: açık merkezin sekmeleri + etkin sekmenin süzgeçleri (renkler mevcut yan menü renkleriyle aynı) ---- */
.side .si-alt { display: flex; flex-direction: column; gap: 1px; margin: 2px 0 8px 21px; padding-left: 10px; border-left: 1px solid rgba(255, 255, 255, .18); }
.side .si-t, .side .si-f { position: relative; display: flex; align-items: center; gap: 8px; min-height: 32px; padding: 6px 10px; border-radius: var(--r-md); font-size: 13px; line-height: 1.25; color: rgba(255, 255, 255, .74); text-decoration: none; }
.side .si-t:hover, .side .si-f:hover { background: rgba(255, 255, 255, .09); color: #fff; }
.side .si-t.on { background: rgba(255, 255, 255, .12); color: #fff; font-weight: 700; }
.side .si-t.on::before { content: ""; position: absolute; left: -11px; top: 7px; bottom: 7px; width: 2px; background: #f0b429; }
.side .si-fg { display: flex; flex-direction: column; gap: 1px; margin: 1px 0 4px 12px; padding-left: 8px; border-left: 1px dashed rgba(255, 255, 255, .22); }
.side .si-f { min-height: 28px; padding: 4px 8px; font-size: 12.5px; color: rgba(255, 255, 255, .62); }
.side .si-f.on { color: #fff; font-weight: 700; background: rgba(255, 255, 255, .10); }
.side .si-t:focus-visible, .side .si-f:focus-visible { outline: 2px solid #fff; outline-offset: -2px; }
.side .si-t .bdg, .side .si-f .bdg { margin-left: auto; background: #f0b429; color: #2a2100; }
#app[data-dar="1"] .side:not(.side-cekmece) .si-alt { display: none; }
.side-cekmece .si-t, .side-cekmece .si-f { min-height: 44px; }

/* ---- Erişilebilirlik: tek genel odak halkası (klavyeyle gezinirken her etkileşimli öğede görünür; öğeye özel kural varsa o geçerli) ---- */
:where(a, button, input, select, textarea, summary, [tabindex]:not([tabindex="-1"])):focus-visible { outline: 2px solid var(--navy, #123a6b); outline-offset: 2px; }
.side :where(a, button):focus-visible { outline-color: #fff; outline-offset: -2px; }

/* ---- Sağdan sola diller (فارسی / العربية): <html dir="rtl"> dil.js tarafından ayarlanır ---- */
[dir="rtl"] body { text-align: right; }
[dir="rtl"] .side .si-alt { margin: 2px 21px 8px 0; padding: 0 10px 0 0; border-left: 0; border-right: 1px solid rgba(255, 255, 255, .18); }
[dir="rtl"] .side .si-fg { margin: 1px 12px 4px 0; padding: 0 8px 0 0; border-left: 0; border-right: 1px dashed rgba(255, 255, 255, .22); }
[dir="rtl"] .side .si-t.on::before { left: auto; right: -11px; }
[dir="rtl"] .side .si.on::before { left: auto; right: 0; }
[dir="rtl"] .side .si-t .bdg, [dir="rtl"] .side .si-f .bdg { margin-left: 0; margin-right: auto; }
[dir="rtl"] .si-w > .si { padding-right: 12px; padding-left: 34px; }
[dir="rtl"] .si-yildiz { right: auto; left: 6px; }
[dir="rtl"] input[type="tel"], [dir="rtl"] input[type="email"], [dir="rtl"] input[type="url"], [dir="rtl"] input[type="number"] { direction: ltr; text-align: right; }

/* ---- Agency düzeni (#app[data-tasarim=agency]): düz gruplu yan menü, sayfa başlığı, sade süzgeç düğmeleri. Renkler ve temalar değişmez. ---- */
.side .nav-alt { flex: none; padding: 8px 12px 2px 14px; font-size: 11.5px; font-weight: 600; color: rgba(255, 255, 255, .58); letter-spacing: .02em; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
#app[data-dar="1"] .side:not(.side-cekmece) .nav-alt { display: none; }
#app[data-tasarim="agency"] .side .si { padding-top: 7px; padding-bottom: 7px; }
#app[data-tasarim="agency"] .side .si-w { margin: 1px 0; }
#app[data-tasarim="agency"] .side .nav-alt + .si-w .si, #app[data-tasarim="agency"] .side .si-w .si { font-size: 13.5px; }
.pg-bas { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; max-width: var(--sayfa-w); margin: 0 auto; padding: 14px var(--sayfa-px) 2px; box-sizing: border-box; }
.pg-bas-m { min-width: 0; }
@media (min-width: 861px) { .pg-bas-m { display: flex; align-items: baseline; flex-wrap: wrap; gap: 4px 12px; } .pg-bas-m .pg-bas-et { order: 2; margin: 0; } }   /* başlık solda, üst yol yanında: tek satır (~44 px) */
.pg-bas-et { font-size: 11px; font-weight: 650; letter-spacing: .08em; text-transform: uppercase; color: var(--mut); margin-bottom: 2px; }
.pg-bas h1 { margin: 0; font-size: 22px; font-weight: 650; letter-spacing: -.02em; line-height: 1.2; color: var(--ink); }
.pg-bas-act { margin-left: auto; display: flex; gap: 8px; align-items: center; }
[dir="rtl"] .pg-bas-act { margin-left: 0; margin-right: auto; }
#app[data-sohbet="1"] .pg-bas { display: none; }
#app[data-tasarim="agency"] .chip { border-radius: 6px; padding: 5px 12px; font-size: 13.5px; font-weight: 550; }
#app[data-tasarim="agency"] .tk-bar { gap: 8px; }
@media (max-width: 760px) { .pg-bas { padding: 16px 12px 2px; } .pg-bas h1 { font-size: 20px; } }

/* ---- Agency düzeni: tablo başlıkları ve kartlar. Renkler tema değişkenlerinden türer (--navy), böylece 9 temanın hepsinde uyumlu kalır. ---- */
#app[data-tasarim="agency"] :is(table.tk, .ltab, .yt-t, .rp-pg table, .tbl) thead th,
#app[data-tasarim="agency"] :is(table.tk, .ltab, .yt-t, .tbl) th {
  background: color-mix(in srgb, var(--navy) 7%, #fff); color: color-mix(in srgb, var(--navy) 78%, #555);
  font-size: 11.5px; font-weight: 650; letter-spacing: .05em; text-transform: uppercase; padding: 10px 8px;
  border-bottom: 1px solid color-mix(in srgb, var(--navy) 16%, var(--line)); border-top: 0;
}
#app[data-tasarim="agency"] :is(table.tk, .ltab, .th-t) tbody td { padding: 8px 8px; border-bottom: 1px solid color-mix(in srgb, var(--navy) 6%, var(--line)); }
#app[data-tasarim="agency"] :is(table.tk, .ltab, .th-t) tbody tr:hover td { background: color-mix(in srgb, var(--navy) 4%, #fff); }
#app[data-tasarim="agency"] :is(table.tk, .ltab) th:hover { background: color-mix(in srgb, var(--navy) 11%, #fff); }
#app[data-tasarim="agency"] .tbl-x { border-radius: var(--r-md); box-shadow: 0 1px 2px color-mix(in srgb, var(--navy) 10%, transparent); }
#app[data-tasarim="agency"] .tk-bar { margin-bottom: 12px; }
#app[data-tasarim="agency"] .pg-yildiz { border-radius: var(--r-md); }


/* Agency düzeni: sayfa başlığıyla aynı olan ekran başlığı gizlenir */
#app[data-tasarim="agency"] .pg-yinelenen { display: none !important; }

/* ---- Paket D: form standardı, uzun metin, dokunma alanı, içeriğe atla, hız sınırı ---- */
.fx-z, .dg-z { color: var(--red); font-weight: 700; }
.fx-hata, label .fx-hata { display: block; margin-top: 3px; color: var(--red) !important; font-size: 12px; font-weight: 500; line-height: 1.3; }
input[aria-invalid="true"], select[aria-invalid="true"], textarea[aria-invalid="true"] { border-color: var(--red) !important; }
.dg-ust, .dg-g, .dg-ust p, .th-sub, .side-h b, .pg-baslik, .toast, #toast, .help, dd, li > b { overflow-wrap: anywhere; }
td { max-width: 40ch; }
td.n, td.num, td[nowrap] { max-width: none; }
.dg { max-width: min(560px, 94vw); }
bdi.tutar, .tutar-ltr { unicode-bidi: isolate; direction: ltr; display: inline-block; }
[dir=rtl] td.n, [dir=rtl] .n, [dir=rtl] .kpi b, [dir=rtl] .th-p b { unicode-bidi: isolate; direction: ltr; }
/* ☆ favori: görünüm aynı, tıklama alanı en az 40x40 */
.si-yildiz, .pg-yildiz { position: relative; }
.si-yildiz::after, .pg-yildiz::after { content: ""; position: absolute; left: 50%; top: 50%; width: max(100%, 40px); height: max(100%, 40px); transform: translate(-50%, -50%); }
.si-yildiz { width: 26px; height: 26px; }
.atla { position: fixed; left: 8px; top: -60px; z-index: 10000; padding: 10px 16px; background: var(--navy); color: #fff; border-radius: var(--r-md, 8px); font-weight: 600; text-decoration: none; transition: top .1s; }
.atla:focus { top: 8px; outline: 2px solid #fff; outline-offset: 0; box-shadow: 0 0 0 4px var(--navy); }   /* beyaz halka + lacivert dış kenar: açık ve koyu zeminde görünür */
.ortak-hiz { position: fixed; left: 50%; top: 18px; transform: translateX(-50%); z-index: 10001; width: min(440px, 94vw); padding: 16px 18px; background: #fff; border: 1px solid var(--line); border-left: 4px solid var(--red); border-radius: var(--r-md, 8px); box-shadow: 0 8px 28px color-mix(in srgb, var(--navy) 22%, transparent); display: grid; gap: 8px; }
.ortak-hiz p { margin: 0; color: var(--mut); font-size: 13px; }
.ortak-hiz button { justify-self: start; }
.fx-not { display: block; margin-top: 3px; color: var(--mut); font-size: 12px; }
.ay-hata-alan { outline: 2px solid var(--red); outline-offset: 1px; }
td, th { overflow-wrap: break-word; }
td .kisi-ad, td > b { overflow-wrap: break-word; }   /* "anywhere" sütun asgari genişliğini sıfıra indirip "WhatsAp/p" gibi sözcük ortasından kırıyordu; break-word asgariyi sözcük kadar tutar */

/* ---- Uçtan uca doğrulama: bildirim alt menünün arkasında kalmaz; Silinenler / mükerrer sekmeleri ---- */
#toast { z-index: 10002; max-width: min(92vw, 520px); text-align: center; }
@media (max-width: 860px) { #toast { bottom: calc(76px + env(safe-area-inset-bottom, 0px)); } }
dialog > #toast, dialog #toast { position: fixed; }
dialog.dg-silinen { width: min(760px, 96vw); }
dialog.dg-silinen .tbl-x { max-height: none; }   /* iç içe kaydırma kalktı: liste sayfalanır, kaydırmayı pencere gövdesi üstlenir */


/* =====================================================================================================
   Görünüm düzeltmeleri (4 Kasım 2026, web + mobil + iPad denetimi). Renk/tema DEĞİŞMEZ; yalnız yerleşim ve ölçü.
   Rapor kimlikleri: W-03/05/06/07/08/09/10/14/15/16/21, M-01/02/03/05/06/07/08/12/17/18/24. Bu blok dosyanın SONUNDA kalır (öncekileri ezer).
   ===================================================================================================== */

/* ---- W-10: ≥1600 px'te tek sayfa kabuğu (tam genişlik ekranlar da aynı sınıra oturur: başlık ekranlar arası zıplamaz) ---- */
@media (min-width: 1600px) {
  :root { --sayfa-w: 1480px; --sayfa-genis: 1480px; }
}

/* ---- M-07: sabit üst/alt çubuk arkasında kalan odak ve kaydırma hedefleri ---- */
html { scroll-padding-top: calc(var(--top-h, 56px) + 12px); scroll-padding-bottom: calc(24px + env(safe-area-inset-bottom, 0px)); }
@media (max-width: 860px) { html { scroll-padding-bottom: calc(72px + env(safe-area-inset-bottom, 0px)); } }

/* ---- Yardımcı: kırpılmış hücre metni (title ortak.js'ten) ---- */
.cell-2 { max-width: var(--trunc-w, 30ch); overflow-wrap: anywhere; }
.cell-trunc { max-width: var(--trunc-w, 22ch); }

/* ---- W-05: sabit tablo başlığı. Tablo yatay kaymıyorsa kutu taşırmaz ve başlık sayfa kayarken üst çubuğun altına yapışır;
        yatay kayıyorsa kutu kendi içinde dikey de kayar (başlık kutunun üstünde sabit kalır). ---- */
@media (min-width: 641px) {
  .crm-body #cl, .tk-app .cl { overflow: visible; }   /* tablo kabını saran taşma kutusu sticky başlığı bozuyordu (üst boşluk): kaydırmayı .tbl-x üstlenir */
  .icerik .tbl-x:not(.kaydirilir) { overflow: visible; }
  .icerik .tbl-x:not(.kaydirilir) > table.tk > thead > tr > th { top: var(--top-h, 56px); z-index: 4; }
  .icerik .tbl-x:not(.kaydirilir) > table.tk > thead > tr:first-child > th:first-child { border-top-left-radius: var(--r-md); }
  .icerik .tbl-x:not(.kaydirilir) > table.tk > thead > tr:first-child > th:last-child { border-top-right-radius: var(--r-md); }
  .icerik .tbl-x.kaydirilir { max-height: calc(100vh - var(--top-h, 56px) - 28px); max-height: calc(100dvh - var(--top-h, 56px) - 28px); }
  .icerik .rp-pg .tbl-x, .icerik .rp-pdf .tbl-x, .icerik dialog .tbl-x { max-height: none; overflow: visible; }
  /* yapışık sütun bütçesi: çok geniş eylem/ilk sütun görünür alanı örtmesin (ortak.js sınıfı ekler) */
  .tbl-x.kaydirilir.acts-genis > table:has(td.acts:last-child) :is(th, td):last-child { position: static; box-shadow: none; }
  .tbl-x.kaydirilir.ilk-genis > table :is(th, td):first-child { position: static; box-shadow: none; }
}
@media print { .tbl-x { max-height: none !important; overflow: visible !important; } }

/* ---- Eylem sütunu: satır içi düğmeler sığmazsa alt satıra iner; ortak.js 3+ eylemi "1 birincil + ⋯" yapar ---- */
.tk td.acts .acts-more-w { vertical-align: middle; }
.tk td.acts select[data-neden] { width: 118px; max-width: 100%; min-height: 30px; padding: 3px 6px; font-size: 12.5px; }

/* ---- W-03: Müşteriler ve fırsatlar tablosu sütun bütçesi ---- */
.crm-body table.tk td.kisi-ad { min-width: 16ch; }
.crm-body table.tk td.kisi-ad b { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; overflow-wrap: anywhere; }
.crm-body table.tk td.mail .cell-trunc, .crm-body table.tk td.sor .cell-trunc { max-width: 22ch; }
.crm-body table.tk td.tel, .crm-body table.tk td.kayit { white-space: nowrap; }
@media (min-width: 861px) and (max-width: 1500px) {
  .crm-body { grid-template-columns: minmax(0, 1fr) 320px; }
  .crm-body:not(:has(> .crm-side)) { grid-template-columns: minmax(0, 1fr); }
}

/* ---- W-06 / W-08: Teklifler ve Satışlar ---- */
.tk .why { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; max-width: 34ch; overflow-wrap: anywhere; }
.tk td .ts { max-width: 100%; }
.tk td.dst { min-width: 11ch; }
.tk td.mus { min-width: 16ch; }

/* ---- W-14: çok dövizli KPI kartları: değer kartta taşmaz, kartlar aynı yükseklikte ---- */
.rp-cards { grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); grid-auto-rows: 1fr; }
.rp-card b { font-size: clamp(15px, 1.2vw + 4px, 18px); line-height: 1.25; overflow-wrap: anywhere; font-variant-numeric: tabular-nums; }
.rs-kpi { grid-auto-rows: 1fr; }
.th-k .kpi, .kpis .kpi { min-width: 0; }
.th-k .kpi b, .kpis .kpi b { overflow-wrap: anywhere; }

/* ---- W-21: yan menü öğeleri tek satır (uzun adlar … ile kısalır, tam ad title'da: menu.js) ---- */
@media (min-width: 1181px) { .side:not(.side-cekmece) { width: 268px; } }
.side .si { min-width: 0; }
.side .si > span:not(.bdg) { min-width: 0; flex: 1 1 auto; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

/* ---- W-25: takvim çipi (title ortak.js'ten) ---- */
.tv-app .tv-i { max-width: 100%; }

/* ---- M-05: açılır yardım (.bilgi) dar ekranda kutudan taşmaz ---- */
.bilgi { min-width: 0; max-width: 100%; box-sizing: border-box; }
.hd-baslik > .bilgi, .page-head > .bilgi, .ym-baslik > .bilgi { min-width: 0; max-width: 100%; }
.bilgi-g { max-width: min(68ch, 100%); box-sizing: border-box; overflow-wrap: anywhere; }
#main .bs-tekrar { display: none; }   /* W-18: sayfa başlığıyla (h1) aynı iç başlık (ortak.js işaretler) */

/* ---- M-08: .otl-app ortak sayfa boşluğu ---- */
.otl-app { padding: 14px var(--sayfa-px) 30px; box-sizing: border-box; }

/* ---- M-24 / W-29: küçük metin düğmeleri ve onay kutuları için daha büyük dokunma alanı ---- */
.tk td .link, .tk td a.link { min-height: 24px; padding-block: 2px; }
@media (pointer: coarse) {
  .tk td .link, .tk td a.link, .link { min-height: 40px; display: inline-flex; align-items: center; padding-inline: 6px; }
  input[type=checkbox], input[type=radio] { width: 20px; height: 20px; }
  label:has(> input[type=checkbox]), label:has(> input[type=radio]), label.chk { min-height: 40px; display: inline-flex; align-items: center; gap: 8px; }
  .tk td input[type=checkbox], .ltab td input[type=checkbox], .inv-app input[type=checkbox] { margin: 10px; }
}

/* ---- M-18: 861-1100 px'te yapışık yan paneller üst çubuğun altında kalmasın ---- */
@media (min-width: 861px) and (max-width: 1100px) { .crm-side, .th-side, .fg-side, .tv-app .tv-gun, .sema-side { position: static; max-height: none; } }

/* Kullanım raporu: kullanıcı hücresi (avatar + ad + rol), kırpma yok */
.bn-kisi { display: flex; align-items: center; gap: 10px; min-width: 220px; }
.bn-av { flex: none; width: 32px; height: 32px; border-radius: 50%; background: color-mix(in srgb, var(--navy) 12%, var(--panel)); color: var(--navy); display: inline-flex; align-items: center; justify-content: center; font-weight: 700; font-size: 13px; }
.bn-ad { display: flex; flex-direction: column; min-width: 0; line-height: 1.3; }
.bn-ad b { font-weight: 600; color: var(--ink); overflow-wrap: anywhere; }
.bn-ad small { color: var(--mut); font-size: 12px; overflow-wrap: anywhere; }
.bn-cubuk { display: flex; gap: 8px; align-items: center; font-variant-numeric: tabular-nums; }
.bn-cubuk i { display: block; height: 8px; border-radius: 4px; background: var(--navy); opacity: .55; min-width: 2px; }
.bn-tbl td { vertical-align: middle; }
.bn-tbl, .tk-app table.tbl { width: 100%; }
.bn-tbl th, .bn-tbl td { padding-left: 12px; padding-right: 12px; }

/* Teklif: ara (balon) ödeme satırları ve ödeme planındaki not */
.balon { margin-top: 10px; display: grid; gap: 6px; }
.balon small { color: var(--mut); }
.balon .brow { display: grid; grid-template-columns: 70px 1fr auto; gap: 8px; align-items: end; }
.balon .brow label { font-size: 12px; display: grid; gap: 2px; }
.pl2-takvim .tk-balon { margin: 5px 0 0; font-size: 9px; color: var(--slate); line-height: 1.4; }
.ts-revize { font-size: 11px; color: var(--mut); display: block; }
