:root {
  --forest-950: #10271f;
  --forest-900: #173f32;
  --forest-800: #205440;
  --forest-700: #276b50;
  --forest-600: #308361;
  --forest-500: #3d9a73;
  --forest-400: #5aae8b;
  --forest-200: #b6d9c7;
  --forest-100: #dcece5;
  --forest-50: #eef6f2;
  --ink-950: #17211d;
  --ink-900: #1f2a25;
  --ink-800: #303b36;
  --ink-700: #46524c;
  --ink-600: #5c6862;
  --ink-500: #65706a;
  --ink-400: #8a938e;
  --line: #dfe4df;
  --line-soft: #eaeeea;
  --canvas: #f3f5f1;
  --surface: #ffffff;
  --surface-soft: #f8faf7;
  --amber-700: #9e6517;
  --amber-500: #d79b3a;
  --amber-100: #f8e9cd;
  --sand-100: #f4ead6;
  --amber-50: #fff8ea;
  --red-700: #a23e37;
  --red-100: #f8deda;
  --red-50: #fff3f1;
  --blue-700: #3a618f;
  --blue-100: #dde9f6;
  --blue-50: #f1f6fb;
  --shadow-sm: 0 1px 2px rgba(22, 34, 28, .035), 0 8px 24px rgba(22, 34, 28, .055);
  --shadow-md: 0 18px 48px rgba(22, 34, 28, .11);
  --shadow-lg: 0 24px 70px rgba(16, 39, 31, .18);
  --radius-sm: 10px;
  --radius: 16px;
  --radius-lg: 22px;
  --sidebar-width: 282px;
  /* Topbar 92px ekranin %12si kadardi; 768px yukseklikte defter satirlarindan
     caliyordu. Sayfa adi zaten menude isaretli, ustteki eyebrow kaldirildi. */
  --topbar-height: 60px;
  /* Sık masaüstü düzeni: tek bakışta daha çok kayıt gösterir. */
  --page-px: 22px;
  --row-py: 5px;
  --row-px: 10px;
  --cell-fs: 12.5px;
  --cell-lh: 1.3;
  --head-fs: 10.5px;
  font-family: "DM Sans", "Segoe UI", sans-serif;
  color: var(--ink-950);
  background: var(--canvas);
  font-synthesis: none;
}

* { box-sizing: border-box; }
[hidden] { display: none !important; }
html { scroll-behavior: smooth; }
body { margin: 0; min-width: 320px; min-height: 100vh; background: var(--surface); color: var(--ink-950); font-size: 14px; line-height: 1.5; }
body.locked { overflow: hidden; }
button, input, select, textarea { font: inherit; }
button { color: inherit; }
a { color: inherit; text-decoration: none; }
svg { display: block; }
h1, h2, h3, h4, p { margin-top: 0; }
button, [role="button"] { -webkit-tap-highlight-color: transparent; }

/* Bağımsız 404 ekranı; uygulama oturumu yüklenmeden de çalışır. */
.not-found-page { color: var(--ink-950); background: #eef2ee; }
.not-found-shell {
  position: relative;
  min-height: 100vh;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  gap: 28px;
  padding: clamp(24px, 5vw, 58px);
  overflow: hidden;
  background:
    radial-gradient(circle at 12% 18%, rgba(48,131,97,.13), transparent 27%),
    radial-gradient(circle at 86% 82%, rgba(220,181,110,.14), transparent 28%),
    linear-gradient(145deg, #f7f8f5, #edf2ee);
}
.not-found-shell::before,
.not-found-shell::after { content: ""; position: absolute; border: 1px solid rgba(39,107,80,.08); border-radius: 50%; pointer-events: none; }
.not-found-shell::before { width: 420px; height: 420px; top: -270px; left: -250px; box-shadow: 0 0 0 52px rgba(39,107,80,.022), 0 0 0 104px rgba(39,107,80,.015); }
.not-found-shell::after { width: 320px; height: 320px; right: -210px; bottom: -205px; box-shadow: 0 0 0 44px rgba(215,155,58,.025), 0 0 0 88px rgba(215,155,58,.018); }
.not-found-brand { position: relative; z-index: 1; width: max-content; }
.not-found-card {
  position: relative;
  z-index: 1;
  width: min(980px, 100%);
  min-height: 460px;
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(300px, .95fr);
  align-items: center;
  justify-self: center;
  overflow: hidden;
  border: 1px solid rgba(205,216,208,.92);
  border-radius: 24px;
  background: rgba(255,255,255,.92);
  box-shadow: 0 24px 70px rgba(23,63,50,.12);
  backdrop-filter: blur(16px);
}
.not-found-copy { padding: clamp(34px, 6vw, 70px); }
.not-found-copy .eyebrow { margin-bottom: 14px; color: var(--forest-700); font-size: 10px; font-weight: 800; letter-spacing: .16em; }
.not-found-copy h1 { max-width: 520px; margin-bottom: 17px; font: 750 clamp(30px, 4.5vw, 52px)/1.08 "Manrope", sans-serif; letter-spacing: -.05em; }
.not-found-copy > p:not(.eyebrow) { max-width: 500px; margin-bottom: 28px; color: var(--ink-500); font-size: 14px; line-height: 1.75; }
.not-found-action { width: max-content; min-height: 44px; gap: 10px; padding-inline: 18px; }
.not-found-action svg { width: 16px; height: 16px; transition: transform .18s ease; }
.not-found-action:hover svg { transform: translateX(3px); }
.not-found-visual { position: relative; align-self: stretch; min-height: 390px; overflow: hidden; background: linear-gradient(155deg, #214d3f, #102a21); }
.not-found-number { position: absolute; top: 42px; left: 50%; translate: -50% 0; color: rgba(255,255,255,.1); font: 800 clamp(100px, 13vw, 178px)/1 "Manrope", sans-serif; letter-spacing: -.08em; }
.not-found-building { position: absolute; left: 50%; bottom: 70px; width: 154px; height: 176px; translate: -50% 0; border: 2px solid rgba(255,255,255,.72); border-bottom: 0; background: rgba(255,255,255,.055); box-shadow: 0 22px 45px rgba(0,0,0,.14); }
.not-found-roof { position: absolute; left: 18px; top: -37px; width: 114px; height: 72px; transform: rotate(45deg); border-top: 2px solid rgba(255,255,255,.72); border-left: 2px solid rgba(255,255,255,.72); background: #1b4436; }
.not-found-window { position: absolute; top: 57px; width: 27px; height: 34px; border: 1px solid rgba(255,255,255,.5); background: rgba(220,181,110,.82); box-shadow: 0 0 20px rgba(220,181,110,.22); }
.not-found-window.one { left: 24px; }
.not-found-window.two { right: 24px; }
.not-found-window.three { top: 109px; left: 24px; }
.not-found-door { position: absolute; right: 24px; bottom: 0; width: 34px; height: 65px; background: rgba(255,255,255,.82); }
.not-found-door::after { content: ""; position: absolute; top: 32px; left: 8px; width: 4px; height: 4px; border-radius: 50%; background: var(--forest-800); }
.not-found-ground { position: absolute; right: 13%; bottom: 68px; left: 13%; height: 2px; background: rgba(255,255,255,.26); }
.not-found-footer { position: relative; z-index: 1; margin: 0; color: var(--ink-500); font-size: 10px; text-align: center; }

@media (max-width: 720px) {
  .not-found-shell { gap: 20px; padding: 24px 16px; }
  .not-found-card { min-height: 0; grid-template-columns: 1fr; }
  .not-found-copy { padding: 36px 26px 32px; }
  .not-found-copy h1 { font-size: clamp(30px, 10vw, 42px); }
  .not-found-visual { min-height: 250px; }
  .not-found-number { top: 21px; font-size: 108px; }
  .not-found-building { bottom: 36px; scale: .72; transform-origin: bottom center; }
  .not-found-ground { bottom: 34px; }
}

.app-shell { min-height: 100vh; }
body.auth-pending .app-shell,
body.unauthenticated .app-shell { display: none; }
body.authenticated .auth-screen { display: none; }

.auth-screen {
  position: relative;
  min-height: 100vh;
  display: grid;
  place-items: center;
  padding: 36px 20px 70px;
  overflow: hidden;
  background:
    radial-gradient(circle at 18% 15%, rgba(83, 145, 113, .18), transparent 30%),
    radial-gradient(circle at 84% 80%, rgba(220, 181, 110, .14), transparent 29%),
    linear-gradient(145deg, #f5f7f3 0%, #edf2ec 100%);
}
.auth-screen::before,
.auth-screen::after { content: ""; position: absolute; border: 1px solid rgba(39, 107, 80, .08); border-radius: 50%; pointer-events: none; }
.auth-screen::before { width: 440px; height: 440px; left: -280px; top: -230px; box-shadow: 0 0 0 55px rgba(39, 107, 80, .025), 0 0 0 110px rgba(39, 107, 80, .018); }
.auth-screen::after { width: 360px; height: 360px; right: -230px; bottom: -180px; box-shadow: 0 0 0 46px rgba(215, 155, 58, .025), 0 0 0 92px rgba(215, 155, 58, .018); }
.auth-card {
  position: relative;
  z-index: 1;
  width: min(440px, 100%);
  padding: 37px 39px 34px;
  border: 1px solid rgba(216, 224, 217, .9);
  border-radius: 22px;
  background: rgba(255, 255, 255, .93);
  box-shadow: 0 22px 70px rgba(23, 63, 50, .12);
  backdrop-filter: blur(18px);
}
.auth-brand { display: inline-flex; align-items: center; gap: 12px; color: var(--forest-900); }
.auth-brand .brand-mark { background: var(--forest-900); box-shadow: 0 5px 14px rgba(23, 63, 50, .16); }
.auth-brand strong { display: block; font: 800 19px/1 "Manrope", sans-serif; letter-spacing: .13em; }
.auth-brand small { display: block; margin-top: 5px; color: var(--ink-500); font-size: 8px; line-height: 1; letter-spacing: .16em; }
.auth-copy { margin: 42px 0 27px; }
.auth-copy h1 { margin-bottom: 11px; font: 700 29px/1.2 "Manrope", sans-serif; letter-spacing: -.045em; }
.auth-copy > p:last-child { margin: 0; color: var(--ink-500); font-size: 12px; line-height: 1.65; }
.auth-loading { min-height: 50px; display: flex; align-items: center; justify-content: center; gap: 10px; color: var(--ink-500); font-size: 11px; }
.auth-spinner { width: 18px; height: 18px; border: 2px solid var(--forest-100); border-top-color: var(--forest-700); border-radius: 50%; animation: auth-spin .75s linear infinite; }
@keyframes auth-spin { to { transform: rotate(360deg); } }
.google-signin {
  width: 100%;
  min-height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  border: 1px solid #d8ded9;
  border-radius: 11px;
  color: var(--ink-800);
  background: #fff;
  box-shadow: 0 3px 11px rgba(22, 34, 28, .05);
  cursor: pointer;
  font-size: 12.5px;
  font-weight: 600;
  transition: .18s ease;
}
.google-signin:hover { border-color: #bfc9c1; background: var(--surface-soft); transform: translateY(-1px); box-shadow: 0 6px 17px rgba(22, 34, 28, .08); }
.google-signin:focus-visible { outline: 3px solid rgba(48, 131, 97, .17); outline-offset: 2px; }
.google-signin:disabled { cursor: wait; opacity: .68; transform: none; }
.google-signin svg { width: 19px; height: 19px; }
.auth-error { margin: 13px 0 0; padding: 10px 12px; border: 1px solid var(--red-100); border-radius: 9px; color: var(--red-700); background: var(--red-50); font-size: 10px; line-height: 1.5; }
.auth-legal { margin: 17px 0 0; color: #929b96; font-size: 8.5px; line-height: 1.5; text-align: center; }
.auth-footer { position: absolute; z-index: 1; bottom: 24px; margin: 0; color: var(--ink-500); font-size: 9px; }

.sidebar {
  position: fixed;
  inset: 0 auto 0 0;
  z-index: 40;
  width: var(--sidebar-width);
  display: flex;
  flex-direction: column;
  padding: 22px 16px 16px;
  overflow-x: hidden;
  overflow-y: auto;
  color: #eef5f1;
  background:
    radial-gradient(circle at 15% 2%, rgba(93, 151, 117, .28), transparent 27%),
    linear-gradient(165deg, #173f32 0%, #10271f 85%);
  box-shadow: inset -1px 0 rgba(255, 255, 255, .05);
  transition: width .22s ease, padding .22s ease, transform .23s ease;
}

.brand-row { position: relative; display: flex; align-items: center; justify-content: space-between; padding: 0 7px 22px; }
.brand { display: inline-flex; align-items: center; gap: 12px; }
.brand-mark {
  position: relative;
  width: 34px;
  height: 38px;
  display: inline-flex;
  align-items: flex-end;
  gap: 3px;
  padding: 7px 6px 5px;
  border: 1px solid rgba(255,255,255,.28);
  border-radius: 9px 9px 6px 6px;
  background: rgba(255,255,255,.08);
}
.brand-mark::after { content: ""; position: absolute; left: 4px; right: 4px; bottom: -4px; height: 3px; border-radius: 2px; background: #d8ae66; }
.brand-mark i { flex: 1; border-radius: 2px 2px 0 0; background: #f1f6f3; }
.brand-mark i:nth-child(1) { height: 13px; opacity: .72; }
.brand-mark i:nth-child(2) { height: 23px; }
.brand-mark i:nth-child(3) { height: 18px; opacity: .84; }
.brand strong { display: block; font: 800 19px/1 "Manrope", sans-serif; letter-spacing: .13em; }
.brand small { display: block; margin-top: 5px; font-size: 8px; line-height: 1; letter-spacing: .16em; color: rgba(238,245,241,.62); }

.user-avatar { display: grid; place-items: center; font-size: 11px; font-weight: 700; border-radius: 9px; color: var(--forest-950); background: #dcb56e; }

.nav-group + .nav-group { margin-top: 17px; }
.nav-label { padding: 0 12px 7px; font: 700 9px/1 "Manrope", sans-serif; letter-spacing: .13em; color: rgba(238,245,241,.38); }
.nav-list { display: grid; gap: 3px; }
.nav-link {
  width: 100%;
  min-height: 42px;
  display: flex;
  align-items: center;
  gap: 11px;
  padding: 0 11px;
  border: 0;
  border-radius: 10px;
  color: rgba(238,245,241,.72);
  background: transparent;
  cursor: pointer;
  text-align: left;
  font-size: 12.5px;
  font-weight: 500;
  transition: .18s ease;
}
.nav-link svg { width: 18px; height: 18px; stroke-width: 1.8; opacity: .83; }
.nav-link:hover { color: #fff; background: rgba(255,255,255,.065); }
.nav-link.active { color: #fff; background: rgba(255,255,255,.12); box-shadow: inset 3px 0 #dcb56e; }
.nav-link.active svg { color: #e7c17c; opacity: 1; }
.nav-badge { margin-left: auto; min-width: 21px; height: 19px; display: grid; place-items: center; padding: 0 6px; border-radius: 99px; color: #fff; background: rgba(215,155,58,.72); font-size: 9px; font-weight: 700; }
.nav-disclosure > summary { list-style: none; }
.nav-disclosure > summary::-webkit-details-marker { display: none; }
.nav-summary { min-height: 42px; display: flex; align-items: center; gap: 11px; padding: 0 11px; border-radius: 10px; color: rgba(238,245,241,.72); cursor: pointer; font-size: 11.5px; font-weight: 650; letter-spacing: .035em; transition: .18s ease; }
.nav-summary:hover { color: #fff; background: rgba(255,255,255,.065); }
.nav-summary:focus-visible { outline: 3px solid rgba(220,181,110,.4); outline-offset: 2px; }
.nav-summary > svg:first-child { width: 18px; height: 18px; opacity: .83; }
.nav-summary .nav-summary-chevron { width: 14px; height: 14px; margin-left: 2px; opacity: .55; transition: rotate .18s ease; }
.nav-summary .nav-badge + .nav-summary-chevron { margin-left: 0; }
.nav-summary > span:not(.nav-badge) { flex: 1; }
.nav-disclosure[open] .nav-summary { color: #fff; background: rgba(255,255,255,.045); }
.nav-disclosure[open] .nav-summary-chevron { rotate: 90deg; }
.nav-disclosure .nav-list { margin-top: 4px; padding-left: 7px; }

.sidebar-user { display: grid; grid-template-columns: 34px 1fr 29px; align-items: center; gap: 9px; margin-top: auto; padding: 12px 5px 0; border-top: 1px solid rgba(255,255,255,.09); }
.user-avatar { width: 34px; height: 34px; border-radius: 50%; background: #e8eee9; }
.user-avatar img { width: 100%; height: 100%; border-radius: inherit; object-fit: cover; }
.user-meta strong, .user-meta small { display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.user-meta strong { font-size: 11.5px; }
.user-meta small { margin-top: 2px; font-size: 9.5px; color: rgba(238,245,241,.48); }
.sidebar .icon-button { color: rgba(255,255,255,.62); }
.sidebar .signout-button:hover { color: #fff; background: rgba(255,255,255,.09); }
.sidebar .signout-button:disabled { cursor: wait; opacity: .45; }
.sidebar-close { display: none !important; }
.sidebar-collapse { width: 31px; height: 31px; border-color: rgba(255,255,255,.12); background: rgba(255,255,255,.055); }
.sidebar-collapse svg { width: 15px; transition: transform .22s ease; }
.sidebar-scrim { display: none; }

.main-area { min-height: 100vh; margin-left: var(--sidebar-width); transition: margin-left .22s ease; }
.topbar {
  position: sticky;
  top: 0;
  z-index: 30;
  min-height: var(--topbar-height);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 8px 20px;
  border-bottom: 1px solid rgba(214,221,215,.86);
  background: rgba(255,255,255,.94);
  backdrop-filter: blur(18px);
}
.topbar-title-wrap { display: flex; align-items: center; gap: 12px; min-width: 0; }
.eyebrow { margin-bottom: 5px; font: 700 9px/1 "Manrope", sans-serif; letter-spacing: .14em; color: var(--forest-600); }
.topbar h1 { margin: 0; font: 700 23px/1.15 "Manrope", sans-serif; letter-spacing: -.035em; }
.topbar-actions { display: flex; align-items: center; gap: 9px; }

.global-search { width: min(290px, 25vw); height: 42px; display: flex; align-items: center; gap: 9px; padding: 0 10px 0 13px; border: 1px solid var(--line); border-radius: 11px; background: rgba(255,255,255,.74); transition: .2s ease; }
.global-search:focus-within { width: min(330px, 28vw); border-color: #8cb7a2; box-shadow: 0 0 0 3px rgba(48,131,97,.09); background: #fff; }
.global-search svg { width: 16px; color: var(--ink-500); }
.global-search input { min-width: 0; flex: 1; border: 0; outline: 0; color: var(--ink-950); background: transparent; font-size: 11.5px; }
.global-search input::placeholder { color: #98a19c; }
kbd { padding: 3px 5px; border: 1px solid #d9dfda; border-bottom-width: 2px; border-radius: 5px; color: #929b96; background: #f7f8f6; font: 500 9px/1 "DM Sans", sans-serif; }

.icon-button { width: 39px; height: 39px; display: inline-grid; place-items: center; flex: 0 0 auto; padding: 0; border: 1px solid transparent; border-radius: 10px; color: var(--ink-600); background: transparent; cursor: pointer; transition: .18s ease; }
.icon-button:hover { color: var(--ink-950); background: rgba(23,63,50,.065); }
.icon-button svg { width: 18px; height: 18px; }
.notification-button { position: relative; border-color: var(--line); background: rgba(255,255,255,.72); }
.notification-button i { position: absolute; right: -3px; top: -4px; min-width: 17px; height: 17px; display: grid; place-items: center; padding: 0 4px; border: 2px solid var(--canvas); border-radius: 99px; color: #fff; background: var(--red-700); font: normal 700 8px/1 "DM Sans", sans-serif; }
.mobile-menu { display: none; }

.button { min-height: 40px; display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 0 15px; border: 1px solid transparent; border-radius: 10px; cursor: pointer; font-size: 11.5px; font-weight: 600; transition: .18s ease; }
.button svg { width: 16px; height: 16px; }
.button:hover { transform: translateY(-1px); }
.button-primary { color: #fff; background: var(--forest-800); box-shadow: 0 5px 14px rgba(23,63,50,.15); }
.button-primary:hover { background: var(--forest-700); }
.button-secondary { border-color: var(--line); background: #fff; }
.button-secondary:hover { border-color: #c6cec8; background: var(--surface-soft); }
.button-danger { color: var(--red-700); background: var(--red-50); }
.button-small { min-height: 33px; padding: 0 11px; border-radius: 8px; font-size: 10.5px; }
.button-reset { width: 100%; border: 0; background: transparent; color: inherit; font: inherit; text-align: left; cursor: pointer; }
.button-wide { width: 100%; }

.page-container { width: 100%; max-width: 1680px; margin: 0 auto; padding: 25px 30px 42px; }
.page-stack { display: grid; gap: 20px; }
.section-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 18px; }
.section-head h2, .section-head h3 { margin-bottom: 4px; font: 700 16px/1.25 "Manrope", sans-serif; letter-spacing: -.02em; }
.section-head p { margin: 0; color: var(--ink-500); font-size: 11px; }
.section-actions { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.link-button { display: inline-flex; align-items: center; gap: 5px; padding: 0; border: 0; color: var(--forest-700); background: transparent; cursor: pointer; font-size: 10.5px; font-weight: 700; }
.link-button svg { width: 14px; height: 14px; }

.card { border: 1px solid var(--line-soft); border-radius: var(--radius); background: var(--surface); box-shadow: var(--shadow-sm); }
.card-pad { padding: 20px; }
.card-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 15px; padding: 18px 19px 14px; border-bottom: 1px solid var(--line-soft); }
.card-header h3 { margin-bottom: 3px; font: 700 13.5px/1.2 "Manrope", sans-serif; letter-spacing: -.02em; }
.card-header p { margin: 0; color: var(--ink-500); font-size: 10px; }
.card-body { padding: 18px 19px; }

.hero-strip {
  position: relative;
  min-height: 154px;
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(280px, .75fr);
  align-items: center;
  gap: 30px;
  overflow: hidden;
  padding: 24px 27px;
  border-radius: var(--radius-lg);
  color: #f4f8f5;
  background:
    radial-gradient(circle at 78% 18%, rgba(236,191,108,.25), transparent 22%),
    radial-gradient(circle at 93% 93%, rgba(105,173,139,.26), transparent 26%),
    linear-gradient(120deg, #173f32, #235844);
  box-shadow: 0 14px 35px rgba(18,56,43,.13);
}
.hero-strip::after { content: ""; position: absolute; width: 260px; height: 260px; right: -100px; top: -160px; border: 1px solid rgba(255,255,255,.15); border-radius: 50%; box-shadow: 0 0 0 38px rgba(255,255,255,.025), 0 0 0 76px rgba(255,255,255,.02); }
.hero-copy { position: relative; z-index: 1; }
.hero-copy .eyebrow { color: #e2bd78; }
.hero-copy h2 { max-width: 650px; margin-bottom: 9px; font: 700 clamp(19px, 2vw, 28px)/1.23 "Manrope", sans-serif; letter-spacing: -.04em; }
.hero-copy p { max-width: 620px; margin: 0; color: rgba(244,248,245,.66); font-size: 11px; line-height: 1.6; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 14px; }
.hero-actions .button { min-height: 32px; padding: 7px 11px; border-color: rgba(255,255,255,.22); color: #fff; background: rgba(255,255,255,.1); box-shadow: none; }
.hero-actions .button:hover { border-color: rgba(255,255,255,.4); background: rgba(255,255,255,.17); }
.hero-meta { position: relative; z-index: 1; display: grid; grid-template-columns: 1fr 1fr; gap: 9px; }
.hero-meta-item { min-height: 75px; padding: 13px; border: 1px solid rgba(255,255,255,.11); border-radius: 12px; background: rgba(255,255,255,.065); backdrop-filter: blur(5px); }
.hero-meta-item span { display: block; color: rgba(244,248,245,.55); font-size: 9px; }
.hero-meta-item strong { display: block; margin: 6px 0 4px; font: 700 17px/1 "Manrope", sans-serif; }
.hero-meta-item small { color: #b8dcc9; font-size: 8.5px; }

.kpi-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 13px; }
.kpi-card { position: relative; min-height: 120px; padding: 17px; overflow: hidden; }
.kpi-top { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.kpi-label { color: var(--ink-500); font-size: 10.5px; font-weight: 500; }
.kpi-icon { width: 31px; height: 31px; display: grid; place-items: center; border-radius: 9px; color: var(--forest-700); background: var(--forest-50); }
.kpi-icon svg { width: 16px; height: 16px; }
.kpi-card:nth-child(2) .kpi-icon { color: var(--blue-700); background: var(--blue-50); }
.kpi-card:nth-child(3) .kpi-icon { color: var(--amber-700); background: var(--amber-50); }
.kpi-card:nth-child(4) .kpi-icon { color: var(--red-700); background: var(--red-50); }
.kpi-value { margin: 14px 0 7px; font: 700 clamp(19px, 2vw, 25px)/1 "Manrope", sans-serif; letter-spacing: -.045em; }
.kpi-foot { display: flex; align-items: center; gap: 5px; color: var(--ink-500); font-size: 9px; }
.trend { display: inline-flex; align-items: center; gap: 2px; color: var(--forest-600); font-weight: 700; }
.trend.negative { color: var(--red-700); }
.trend svg { width: 12px; height: 12px; }

.dashboard-grid { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(285px, .55fr); gap: 14px; }
.chart-card { min-height: 340px; }
.range-switch { display: flex; gap: 2px; padding: 3px; border: 1px solid var(--line-soft); border-radius: 8px; background: var(--surface-soft); }
.range-switch button { padding: 5px 8px; border: 0; border-radius: 6px; color: var(--ink-500); background: transparent; cursor: pointer; font-size: 8.5px; }
.range-switch button.active { color: var(--forest-800); background: #fff; box-shadow: 0 1px 4px rgba(20,40,30,.08); font-weight: 700; }
/* Grafik: solda tutar ekseni, altta ay etiketleri, ortada tek sıra sütun.
   Sütun sayısı --bar-count ile geldiği için 3, 6 veya 12 ay aynı şekilde çalışır. */
.chart-frame { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 10px; }
.chart-y-axis { height: 230px; display: flex; flex-direction: column; justify-content: space-between; align-items: flex-end; padding-bottom: 1px; color: var(--ink-500); font-size: 8px; line-height: 1; white-space: nowrap; }
.chart-y-axis span { transform: translateY(-50%); }
.chart-y-axis span:last-child { transform: none; }
.chart-plot { min-width: 0; }
.bar-chart { height: 230px; display: grid; grid-template-columns: repeat(var(--bar-count, 6), minmax(0, 1fr)); align-items: end; gap: clamp(3px, 1vw, 14px); padding: 0 4px; border-bottom: 1px solid var(--line); background-image: linear-gradient(to bottom, var(--line-soft) 1px, transparent 1px), linear-gradient(to bottom, var(--line-soft) 1px, transparent 1px), linear-gradient(to bottom, var(--line-soft) 1px, transparent 1px); background-size: 100% 25%, 100% 50%, 100% 75%; background-repeat: no-repeat; background-position: 0 0, 0 0, 0 0; }
.bar-group { height: 100%; display: flex; align-items: flex-end; justify-content: center; }
.bar-pair { width: 100%; height: 100%; display: flex; align-items: flex-end; justify-content: center; gap: 3px; }
.bar { width: min(14px, 40%); min-height: 2px; border-radius: 3px 3px 0 0; background: var(--forest-700); transform-origin: bottom; animation: grow-bar .65s ease both; }
.bar.muted { background: #dce4de; }
@keyframes grow-bar { from { transform: scaleY(.05); } }
.chart-x-axis { display: grid; grid-template-columns: repeat(var(--bar-count, 6), minmax(0, 1fr)); gap: clamp(3px, 1vw, 14px); padding: 7px 4px 0; }
.chart-x-axis label { overflow: hidden; color: var(--ink-500); font-size: 8.5px; text-align: center; text-overflow: ellipsis; white-space: nowrap; }
.chart-legend { display: flex; align-items: center; gap: 17px; margin-top: 15px; color: var(--ink-500); font-size: 9px; }
.legend-dot { width: 7px; height: 7px; display: inline-block; margin-right: 5px; border-radius: 2px; background: var(--forest-700); }
.legend-dot.muted { background: #dce4de; }
.chart-total { margin-left: auto; color: var(--ink-800); font-weight: 700; }

[data-cashflow-month] { cursor: pointer; outline: none; }
[data-cashflow-month]:focus-visible { outline: 2px solid rgba(39,107,80,.45); outline-offset: 3px; border-radius: 5px; }
[data-cashflow-month]:hover .bar, [data-cashflow-month]:focus .bar,
[data-cashflow-month]:hover .finance-bar, [data-cashflow-month]:focus .finance-bar { filter: brightness(.9); }

.collection-card .card-body { display: grid; place-items: center; }
.donut-wrap { position: relative; width: 164px; height: 164px; display: grid; place-items: center; margin: 4px auto 16px; }
.donut { position: absolute; inset: 0; border-radius: 50%; background: conic-gradient(var(--forest-600) 0 68%, var(--amber-500) 68% 82%, #dfe4e0 82% 100%); }
.donut::after { content: ""; position: absolute; inset: 18px; border-radius: 50%; background: #fff; }
.donut-center { position: relative; z-index: 1; text-align: center; }
.donut-center strong { display: block; font: 700 26px/1 "Manrope", sans-serif; }
.donut-center span { display: block; margin-top: 5px; color: var(--ink-500); font-size: 9px; }
.status-legend { width: 100%; display: grid; gap: 8px; }
.status-legend-row { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 8px; font-size: 9.5px; }
.status-legend-row i { width: 7px; height: 7px; border-radius: 50%; }
.status-legend-row span { color: var(--ink-600); }

.lower-grid { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(300px, .9fr); gap: 14px; }
.alert-list, .activity-list { display: grid; }
.alert-item, .activity-item { display: grid; grid-template-columns: 34px 1fr auto; align-items: center; gap: 11px; padding: 12px 0; border-bottom: 1px solid var(--line-soft); }
.alert-item:last-child, .activity-item:last-child { border: 0; }
.item-icon { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 10px; color: var(--amber-700); background: var(--amber-50); }
.item-icon.danger { color: var(--red-700); background: var(--red-50); }
.item-icon.success { color: var(--forest-700); background: var(--forest-50); }
.item-icon.blue { color: var(--blue-700); background: var(--blue-50); }
.item-icon.neutral { color: var(--ink-600); background: #eef1ee; }
.item-icon svg { width: 16px; height: 16px; }
.item-copy strong { display: block; margin-bottom: 3px; font-size: 10.5px; }
.item-copy span { display: block; color: var(--ink-500); font-size: 9px; line-height: 1.35; }
.item-date { color: var(--ink-500); font-size: 8.5px; white-space: nowrap; }

.toolbar { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 13px; }
.toolbar-left, .toolbar-right, .filter-chips { display: flex; align-items: center; gap: 7px; flex-wrap: wrap; }
.filter-chip { min-height: 32px; padding: 0 11px; border: 1px solid transparent; border-radius: 8px; color: var(--ink-600); background: var(--surface-soft); cursor: pointer; font-size: 9.5px; transition: .15s ease; }
.filter-chip:hover { color: var(--forest-800); background: var(--forest-50); }
.filter-chip.active { border-color: #c6ddd1; color: var(--forest-800); background: var(--forest-50); font-weight: 700; }
.result-count { color: var(--ink-500); font-size: 9.5px; }
.select-compact { min-height: 32px; padding: 0 29px 0 10px; border: 1px solid var(--line); border-radius: 8px; color: var(--ink-600); background: #fff; outline: none; font-size: 9.5px; }

/* Aylık tahsilat şeridi — Mülkler sayfasının ilk sorusu: bu ay kim ödedi. */
.collection-strip { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 18px; padding: 14px 16px; border-left: 3px solid var(--forest-600); }
.collection-strip.warning { border-left-color: var(--amber-500); }
.collection-strip.danger { border-left-color: var(--red-700); }
.collection-month { display: flex; align-items: center; gap: 8px; }
.collection-month > div { min-width: 118px; text-align: center; }
.collection-month strong { display: block; font: 700 13px/1.2 "Manrope", sans-serif; }
.collection-month small { display: block; margin-top: 2px; color: var(--ink-500); font-size: 8.5px; }
.collection-month .icon-button { width: 28px; height: 28px; }
.collection-month .icon-button svg { width: 14px; }
.collection-month .icon-button:first-child svg { transform: rotate(180deg); }
.collection-month .icon-button[disabled] { opacity: .35; cursor: default; }
.collection-progress-head { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin-bottom: 7px; color: var(--ink-600); font-size: 9.5px; }
.collection-progress-head strong { color: var(--ink-950); font: 700 13px/1 "Manrope", sans-serif; }
.collection-meter { height: 7px; overflow: hidden; border-radius: 99px; background: #e8ece8; }
.collection-meter i { display: block; height: 100%; border-radius: inherit; background: var(--forest-600); transition: width .25s ease; }
.collection-strip.warning .collection-meter i { background: var(--amber-500); }
.collection-strip.danger .collection-meter i { background: var(--red-700); }
.collection-flags { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.collection-flag { display: inline-flex; align-items: center; gap: 8px; padding: 8px 12px; border: 1px solid var(--line); border-radius: 10px; background: #fff; font-size: 9px; text-align: left; }
button.collection-flag { cursor: pointer; transition: .15s ease; }
button.collection-flag:hover { border-color: #a8c9b8; box-shadow: var(--shadow-sm); }
.collection-flag svg { width: 15px; flex-shrink: 0; }
.collection-flag span { display: flex; flex-direction: column; color: var(--ink-500); }
.collection-flag strong { color: var(--ink-950); font-size: 11px; }
.collection-flag.success { color: var(--forest-700); }
.collection-flag.warning { color: var(--amber-700); background: var(--amber-50); border-color: #f0dfb8; }
.collection-flag.danger { color: var(--red-700); background: var(--red-50); border-color: #f0c9c4; }

/* Kart / satır görünüm anahtarı */
.view-toggle { display: inline-flex; padding: 2px; border: 1px solid var(--line); border-radius: 9px; background: var(--surface-soft); }
.view-toggle-button { display: inline-flex; align-items: center; gap: 5px; min-height: 28px; padding: 0 10px; border: 0; border-radius: 7px; color: var(--ink-600); background: transparent; cursor: pointer; font-size: 9.5px; transition: .15s ease; }
.view-toggle-button svg { width: 13px; }
.view-toggle-button:hover { color: var(--forest-800); }
.view-toggle-button.active { color: var(--forest-800); background: #fff; box-shadow: var(--shadow-sm); font-weight: 700; }

/* Kart üzerindeki bu ay tahsilat bloğu */
.property-collection { align-self: stretch; display: flex; align-items: flex-end; flex-direction: column; gap: 3px; margin-top: 10px; padding-top: 9px; border-top: 1px dashed var(--line); }
.property-collection small { color: var(--ink-500); font-size: 8px; white-space: nowrap; }
.property-table td .cell-copy .status-pill { margin-top: 4px; }

/* Tahsilat hücresi: rozet üstte, açıklama altında — her satırda aynı hizada. */
.collection-cell { display: inline-flex; align-items: flex-start; flex-direction: column; gap: 5px; }
.collection-note { color: var(--ink-500); font-size: 9.5px; line-height: 1.3; white-space: nowrap; }
.collection-cell-empty { color: var(--ink-500); }

/* Tıklanabilir sütun başlığı: ok yalnız etkin sütunda görünür. */
.data-table th.sortable { padding: 0; }
.table-sort { display: inline-flex; align-items: center; gap: 5px; width: 100%; padding: 11px 13px; border: 0; background: transparent; color: inherit; cursor: pointer; font: inherit; letter-spacing: inherit; text-align: left; text-transform: inherit; transition: .15s ease; }
.table-sort:hover { color: var(--forest-700); }
.table-sort svg { width: 11px; flex-shrink: 0; opacity: 0; transform: rotate(-90deg); transition: .15s ease; }
.table-sort:hover svg { opacity: .4; }
.table-sort.active { color: var(--forest-800); font-weight: 700; }
.table-sort.active svg { opacity: 1; }
.table-sort.active.descending svg { transform: rotate(90deg); }
.table-sort:focus-visible { outline: 2px solid rgba(48,131,97,.4); outline-offset: -2px; }

.property-layout { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); overflow: hidden; }
.property-list-pane { max-height: 650px; overflow-y: auto; padding: 14px; border-right: 1px solid var(--line-soft); background: var(--surface-soft); scrollbar-width: thin; }
.property-list { display: grid; gap: 9px; }
.property-card { display: grid; grid-template-columns: 80px minmax(0, 1fr) auto; gap: 14px; padding: 12px; border: 1px solid var(--line-soft); border-radius: 12px; background: #fff; cursor: pointer; transition: .18s ease; }
.property-card:hover, .property-card.active { border-color: #a8c9b8; box-shadow: 0 7px 19px rgba(23,63,50,.075); transform: translateY(-1px); }
.property-card.active { box-shadow: inset 3px 0 var(--forest-600), 0 7px 19px rgba(23,63,50,.075); }
.property-thumb { position: relative; min-height: 94px; overflow: hidden; border-radius: 10px; background: linear-gradient(145deg, #dbe5df, #aebfb5); }
.property-thumb::before { content: ""; position: absolute; left: 18%; right: 16%; bottom: 0; height: 70%; border-radius: 3px 3px 0 0; background: rgba(255,255,255,.76); box-shadow: inset 0 -8px rgba(42,83,63,.15); }
.property-thumb::after { content: ""; position: absolute; left: 31%; top: 43%; width: 9px; height: 11px; background: #789083; box-shadow: 18px 0 #789083, 0 20px #789083, 18px 20px #789083; }
.property-thumb.office { background: linear-gradient(145deg, #d9e4e7, #9eb3ba); }
.property-thumb.office::before { left: 23%; right: 22%; height: 84%; background: repeating-linear-gradient(to bottom, rgba(255,255,255,.78) 0 10px, rgba(87,108,112,.28) 11px 14px); }
.property-thumb.villa { background: linear-gradient(155deg, #dbe9d9, #9bb596); }
.property-thumb.villa::before { left: 10%; right: 8%; height: 48%; clip-path: polygon(0 22%, 38% 22%, 50% 0, 100% 25%, 100% 100%, 0 100%); }
.property-status-dot { position: absolute; top: 7px; right: 7px; width: 9px; height: 9px; border: 2px solid #fff; border-radius: 50%; background: var(--forest-600); box-shadow: 0 1px 5px rgba(0,0,0,.25); }
.property-status-dot.vacant { background: var(--amber-500); }
.property-status-dot.maintenance { background: var(--red-700); }
.property-main { min-width: 0; }
.property-code { margin-bottom: 5px; color: var(--forest-600); font-size: 8px; font-weight: 700; letter-spacing: .08em; }
.property-main h3 { margin-bottom: 4px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font: 700 12px/1.25 "Manrope", sans-serif; }
.property-address { display: flex; align-items: center; gap: 4px; overflow: hidden; margin-bottom: 11px; color: var(--ink-500); font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.property-address svg { width: 11px; height: 11px; }
.property-meta { display: flex; align-items: center; gap: 9px; flex-wrap: wrap; color: var(--ink-600); font-size: 8.5px; }
.property-meta span { display: inline-flex; align-items: center; gap: 3px; }
.property-finance { display: grid; align-content: center; justify-items: end; text-align: right; }
.property-finance strong { display: block; margin-top: 3px; font: 700 12px/1 "Manrope", sans-serif; white-space: nowrap; }
.property-finance small { display: block; margin-top: 5px; color: var(--ink-500); font-size: 8px; }

.map-pane { position: relative; z-index: 0; isolation: isolate; min-height: 610px; overflow: hidden; background: #dfe8df; }
.map-legend { position: absolute; z-index: 7; left: 14px; bottom: 14px; display: flex; gap: 10px; padding: 8px 10px; border: 1px solid rgba(50,75,61,.1); border-radius: 8px; background: rgba(255,255,255,.9); box-shadow: var(--shadow-sm); color: var(--ink-600); font-size: 7.5px; }
.map-legend i { width: 7px; height: 7px; display: inline-block; margin-right: 3px; border-radius: 50%; background: var(--forest-600); }
.map-legend .vacant { background: var(--amber-500); }
.provider-map { position: absolute; inset: 0; z-index: 1; background: #dfe8df; }
.map-provider-fallback { position: absolute; inset: 0; z-index: 2; display: grid; place-items: center; padding: 30px; color: var(--ink-500); background: #eef3ef; font-size: 11px; text-align: center; }
.map-pane .leaflet-control-attribution { font-size: 8px; }
.map-pane .leaflet-control-zoom a { color: var(--forest-800); }
.property-map-icon { display: grid !important; place-items: center; border: 3px solid #fff; border-radius: 50% 50% 50% 9px; color: #fff; background: var(--forest-700); box-shadow: 0 7px 18px rgba(26,58,43,.32); }
.property-map-icon.vacant { background: var(--amber-500); }
.property-map-icon svg { width: 17px; height: 17px; }
.provider-popup { min-width: 175px; padding: 2px; }
.provider-popup strong, .provider-popup span, .provider-popup b { display: block; }
.provider-popup strong { color: var(--ink-950); font: 700 11px/1.35 "Manrope", sans-serif; }
.provider-popup span { margin-top: 4px; color: var(--ink-500); font-size: 9px; }
.provider-popup b { margin-top: 8px; color: var(--forest-700); font-size: 10px; }
.provider-popup button { width: 100%; min-height: 30px; margin-top: 10px; border: 0; border-radius: 7px; color: #fff; background: var(--forest-700); cursor: pointer; font-size: 9px; font-weight: 700; }
.map-pane .map-legend { z-index: 500; }
.map-toggle { width: 32px; min-height: 32px; display: grid; place-items: center; flex: 0 0 auto; padding: 0; border: 1px solid var(--line); border-radius: 8px; color: var(--ink-500); background: #fff; cursor: pointer; transition: color .18s ease, background .18s ease, border-color .18s ease; }
.map-toggle:hover { color: var(--forest-800); border-color: #b8d1c3; background: var(--forest-50); }
.map-toggle.active { color: #fff; border-color: var(--forest-800); background: var(--forest-800); }
.map-toggle.active:hover { background: var(--forest-700); border-color: var(--forest-700); }
.map-toggle svg { width: 15px; height: 15px; }
.property-layout.map-collapsed { min-height: 0; grid-template-columns: 1fr; }
.map-collapsed .property-list-pane { max-height: none; border-right: 0; }
.map-collapsed .property-list { grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)); }

.table-card { overflow: hidden; }
.table-scroll { overflow-x: auto; }
.data-table { width: 100%; border-collapse: collapse; min-width: 760px; }
.data-table th { padding: var(--row-py) var(--row-px); border-bottom: 1.5px solid #c9d2cc; color: var(--ink-700); background: #eef1ed; text-align: left; font-size: var(--head-fs); font-weight: 700; letter-spacing: .01em; white-space: nowrap; }
.data-table td { padding: var(--row-py) var(--row-px); border-bottom: 1px solid var(--line-soft); color: var(--ink-950); font-size: var(--cell-fs); line-height: var(--cell-lh); vertical-align: middle; }
.data-table tr:last-child td { border-bottom: 0; }
.data-table tbody tr { transition: background .15s ease; }
.data-table tbody tr:hover { background: #fbfcfa; }
.tenant-operations-table { min-width: 1120px; }
.tenant-clickable-row { cursor: pointer; }
.tenant-clickable-row:focus-visible { outline: 3px solid rgba(48,131,97,.22); outline-offset: -3px; }
.tenant-ledger-card .table-scroll { max-height: calc(100vh - 292px); min-height: 260px; overflow: auto; }
.tenant-ledger-card .tenant-operations-table td { height: 32px; padding: 3px 8px; white-space: nowrap; }
.tenant-ledger-card .tenant-operations-table th:first-child,
.tenant-ledger-card .tenant-operations-table td:first-child { position: sticky; left: 0; z-index: 1; background: #fff; }
.tenant-ledger-card .tenant-operations-table th:first-child { z-index: 3; background: #365c52; }
.tenant-ledger-card .tenant-operations-table tbody tr:nth-child(even) td:first-child { background: #f3f5f3; }
.tenant-ledger-card .tenant-operations-table tbody tr:hover td:first-child { background: #e7f1ec; }
.tenant-ledger-card .tenant-operations-table th:nth-child(n+5):nth-child(-n+8),
.tenant-ledger-card .tenant-operations-table td:nth-child(n+5):nth-child(-n+8) { text-align: right; }
.tenant-entity-link { width: 100%; min-width: 0; padding: 0; border: 0; color: inherit; background: transparent; cursor: pointer; text-align: left; }
.tenant-entity-link strong { overflow: hidden; color: var(--ink-950); font-weight: 650; text-overflow: ellipsis; white-space: nowrap; }
.tenant-entity-link:hover strong,
.tenant-entity-link:focus-visible strong,
.tenant-owner-link:hover,
.tenant-owner-link:focus-visible { color: var(--forest-800); text-decoration: underline; text-decoration-thickness: 1.5px; text-underline-offset: 3px; }
.tenant-entity-link:focus-visible,
.tenant-owner-link:focus-visible { outline: 2px solid rgba(48,131,97,.32); outline-offset: 2px; }
.tenant-owner-links { min-width: 0; display: flex; align-items: center; gap: 5px; overflow: hidden; }
.tenant-owner-links i { color: var(--ink-400); font-style: normal; }
.tenant-owner-link { min-width: 0; overflow: hidden; padding: 0; border: 0; color: var(--ink-800); background: transparent; cursor: pointer; font: inherit; text-overflow: ellipsis; white-space: nowrap; }
.tenant-inline-state { width: 100%; display: inline-flex; align-items: center; justify-content: flex-end; gap: 6px; white-space: nowrap; }
.tenant-inline-state > strong { font-size: inherit; }
.tenant-inline-state .status-pill { min-height: 20px; padding-inline: 6px; }
.tenant-table-muted { overflow: hidden; display: block; color: var(--ink-600); text-overflow: ellipsis; white-space: nowrap; }
.tenant-status-text { color: var(--ink-700); font-weight: 500; white-space: nowrap; }
.tenant-payment-overdue { color: var(--red-700); font-weight: 700; white-space: nowrap; }
.tenant-ledger-card .row-action { min-height: 26px; padding-inline: 7px; font-size: 10px; }
.table-record-link { display: grid; gap: 3px; min-width: 145px; padding: 0; border: 0; color: inherit; background: transparent; cursor: pointer; text-align: left; }
.table-record-link strong { color: var(--ink-900); font: 700 12px/1.25 "Manrope", sans-serif; }
.table-record-link span { color: var(--ink-500); font-size: 9px; }
.cell-main { display: flex; align-items: center; gap: 9px; min-width: 150px; }
.cell-avatar { width: 32px; height: 32px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 9px; color: var(--forest-800); background: var(--forest-50); font-size: 9px; font-weight: 700; }
.cell-avatar.building { color: var(--blue-700); background: var(--blue-50); }
.cell-avatar.bank { color: var(--amber-700); background: var(--amber-50); }
.cell-copy strong { display: block; color: var(--ink-950); font-size: 10px; }
.cell-copy span { display: block; margin-top: 3px; color: var(--ink-500); font-size: 8.5px; }
.cell-copy > .status-pill { width: max-content; display: inline-flex; align-items: center; margin-top: 4px; color: var(--forest-700); }
.cell-copy > .status-pill.warning { color: var(--amber-700); }
.cell-copy > .status-pill.danger { color: var(--red-700); }
.cell-copy > .status-pill.info { color: var(--blue-700); }
.cell-copy > .status-pill.neutral { color: var(--ink-600); }
.money { color: var(--ink-950); font-weight: 700; white-space: nowrap; }
.money-warning { color: var(--amber-700); }
.muted { color: var(--ink-500); }
.status-pill { display: inline-flex; align-items: center; gap: 5px; min-height: 22px; padding: 0 8px; border-radius: 99px; color: var(--forest-700); background: var(--forest-50); font-size: 8px; font-weight: 700; white-space: nowrap; }
.status-pill::before { content: ""; width: 5px; height: 5px; border-radius: 50%; background: currentColor; }
.status-pill.warning { color: var(--amber-700); background: var(--amber-50); }
.status-pill.danger { color: var(--red-700); background: var(--red-50); }
.status-pill.info { color: var(--blue-700); background: var(--blue-50); }
.status-pill.neutral { color: var(--ink-600); background: #eef1ee; }
.confidence { display: flex; align-items: center; gap: 7px; white-space: nowrap; }
.confidence-track { width: 54px; height: 4px; overflow: hidden; border-radius: 9px; background: #e8ece8; }
.confidence-track span { display: block; height: 100%; background: var(--forest-600); border-radius: inherit; }
.confidence.medium .confidence-track span { background: var(--amber-500); }
.row-actions { display: flex; align-items: center; gap: 4px; }
.row-action { min-height: 28px; display: inline-flex; align-items: center; gap: 5px; padding: 0 8px; border: 1px solid var(--line); border-radius: 7px; color: var(--ink-600); background: #fff; cursor: pointer; font-size: 8px; font-weight: 600; white-space: nowrap; }
.row-action:hover { color: var(--forest-800); border-color: #b8d1c3; }
.row-action.danger { color: var(--red-700); border-color: #efd6d2; background: var(--red-50); }
.row-action.danger:hover { color: #8f261d; border-color: #dcaea8; background: #fff1ef; }
.row-action.icon-only { width: 28px; padding: 0; justify-content: center; }
.row-action svg { width: 12px; height: 12px; }

.summary-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.finance-summary-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 10px; }
.finance-metric { min-width: 0; display: flex; align-items: center; gap: 11px; padding: 15px; }
.finance-metric .item-icon { width: 38px; height: 38px; display: grid; place-items: center; place-content: center; flex: none; line-height: 0; }
.finance-metric .item-icon svg { display: block; align-self: center; justify-self: center; }
.finance-metric > div { min-width: 0; }
.finance-metric span, .finance-metric small { display: block; color: var(--ink-500); font-size: 9px; }
.finance-metric strong { display: block; margin: 5px 0 4px; overflow: hidden; font: 700 16px/1 "Manrope", sans-serif; text-overflow: ellipsis; white-space: nowrap; }
.finance-metric small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.finance-exception-list { max-height: 410px; overflow-y: auto; }
/* Bölüm kapalıyken içerik gizlendiği için gövde boşluğu yalnızca açıkken uygulanır. */
.finance-exceptions > .record-disclosure-body { padding: 0 18px 18px; }
.finance-exceptions:not([open]) > summary { border-bottom: 0; }
.summary-tile { display: flex; flex-direction: row-reverse; align-items: center; justify-content: space-between; gap: 13px; padding: 15px 17px; }
.summary-tile > div { min-width: 0; }
.summary-tile .item-icon { width: 40px; height: 40px; display: grid; place-items: center; flex: none; border-radius: 12px; line-height: 0; }
.summary-tile .item-icon svg { width: 18px; height: 18px; display: block; }
.summary-tile span { display: block; color: var(--ink-500); font-size: 9px; }
.summary-tile strong { display: block; margin-top: 5px; font: 700 17px/1 "Manrope", sans-serif; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.summary-tile small { display: block; margin-top: 4px; color: var(--ink-500); font-size: 9px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

.account-strip { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 20px; padding: 18px 20px; }
.bank-account { display: flex; align-items: center; gap: 13px; }
.bank-logo { width: 41px; height: 41px; display: grid; place-items: center; border-radius: 11px; color: #fff; background: #224f8d; font: 800 15px/1 "Manrope", sans-serif; }
.bank-account strong, .bank-account span { display: block; }
.bank-account strong { font-size: 11px; }
.bank-account span { margin-top: 4px; color: var(--ink-500); font-size: 9px; }
.account-balance { text-align: right; }
.account-balance span { display: block; color: var(--ink-500); font-size: 8px; }
.account-balance strong { display: block; margin-top: 5px; font: 700 17px/1 "Manrope", sans-serif; }

.insurance-grid { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(300px, .75fr); align-items: start; gap: 14px; }
.insurance-grid > .card { align-self: start; }
.insurance-overview { display: grid; grid-template-columns: minmax(230px, .7fr) minmax(0, 1.3fr); align-items: center; gap: 24px; }
.insurance-overview-copy { display: flex; align-items: center; gap: 13px; min-width: 0; }
.insurance-overview-copy .item-icon { flex: 0 0 auto; }
.insurance-overview-copy h3 { font: 700 18px/1.3 "Manrope", sans-serif; }
.insurance-overview-copy p { margin-top: 6px; color: var(--ink-500); font-size: 13px; line-height: 1.55; }
.insurance-overview-metrics { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.insurance-overview-metrics > div { min-width: 0; padding: 15px; border-radius: 9px; background: var(--surface-soft); }
.insurance-overview-metrics span, .insurance-overview-metrics strong, .insurance-overview-metrics small { display: block; }
.insurance-overview-metrics span { color: var(--ink-500); font-size: 12px; }
.insurance-overview-metrics strong { margin-top: 7px; font: 700 21px/1 "Manrope", sans-serif; white-space: nowrap; }
.insurance-overview-metrics small { margin-top: 7px; color: var(--ink-500); font-size: 11px; line-height: 1.4; }
.insurance-renewal-card .permission-item > div { min-width: 0; }
.insurance-renewal-card .permission-item > div > strong { font-size: 14px; }
.insurance-renewal-card .permission-item > div > span { margin-top: 5px; font-size: 12px; line-height: 1.45; }
.coverage-panel { display: grid; grid-template-columns: 150px 1fr; align-items: center; gap: 22px; }
.coverage-ring { --coverage: 83%; width: 133px; height: 133px; display: grid; place-items: center; border-radius: 50%; background: conic-gradient(var(--forest-600) var(--coverage), #e5ebe6 0); }
.coverage-ring::before { content: ""; grid-area: 1/1; width: 103px; height: 103px; border-radius: 50%; background: #fff; }
.coverage-ring span { grid-area: 1/1; position: relative; text-align: center; }
.coverage-ring strong { display: block; font: 700 24px/1 "Manrope", sans-serif; }
.coverage-ring small { display: block; margin-top: 4px; color: var(--ink-500); font-size: 8px; }
.coverage-copy h3 { margin-bottom: 6px; font: 700 14px/1.3 "Manrope", sans-serif; }
.coverage-copy p { margin-bottom: 15px; color: var(--ink-500); font-size: 9.5px; line-height: 1.55; }
.coverage-facts { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
.coverage-facts div { padding: 9px; border-radius: 8px; background: var(--surface-soft); }
.coverage-facts strong, .coverage-facts span { display: block; }
.coverage-facts strong { font-size: 12px; }
.coverage-facts span { margin-top: 4px; color: var(--ink-500); font-size: 7.5px; }

.hidden-input { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }

.deposit-progress { min-width: 120px; }
.deposit-progress-head { display: flex; justify-content: space-between; margin-bottom: 5px; font-size: 8px; }
.deposit-progress-head span { color: var(--ink-500); }
.progress-track { height: 5px; overflow: hidden; border-radius: 10px; background: #e9ede9; }
.progress-track span { display: block; height: 100%; border-radius: inherit; background: var(--forest-600); }
.progress-track.warning span { background: var(--amber-500); }
.deposit-settlement-total { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 16px; border: 1px solid #c9ded2; border-radius: 11px; color: var(--forest-800); background: var(--forest-50); }
.deposit-settlement-total span { font-size: 10px; font-weight: 700; }
.deposit-settlement-total strong { font: 700 20px/1 "Manrope", sans-serif; white-space: nowrap; }
[data-deposit-detail] .detail-section-head > div p { margin: 4px 0 0; color: var(--ink-500); font-size: 9px; line-height: 1.45; }

.finance-grid { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(300px, .65fr); gap: 14px; }
.finance-chart-card { display: flex; flex-direction: column; min-height: 100%; }
.finance-chart-card .finance-chart { flex: 1; min-height: 380px; }
.finance-chart { min-height: 260px; display: grid; grid-template-columns: 50px 1fr; gap: 5px; padding: 18px 18px 12px; }
.axis-labels { display: flex; flex-direction: column; justify-content: space-between; padding-bottom: 28px; color: var(--ink-500); font-size: 8px; text-align: right; }
.finance-bars { display: grid; grid-template-columns: repeat(var(--bar-count, 6), minmax(0, 1fr)); align-items: end; gap: clamp(5px, 1vw, 14px); padding: 0 9px; border-left: 1px solid var(--line); border-bottom: 1px solid var(--line); background: repeating-linear-gradient(to bottom, transparent 0 48px, var(--line-soft) 49px); }
.finance-bar-group { height: 100%; display: flex; flex-direction: column; justify-content: flex-end; align-items: center; gap: 6px; }
.finance-bar-pair { height: calc(100% - 24px); display: flex; align-items: flex-end; gap: 3px; }
.finance-bar { width: 13px; border-radius: 3px 3px 0 0; background: var(--forest-600); animation: grow-bar .65s ease both; }
.finance-bar.expense { background: #d8ac5f; }
.finance-bar-group label { color: var(--ink-500); font-size: 8px; }
.net-card { display: grid; align-content: start; gap: 14px; }
.net-amount { padding: 17px; border-radius: 12px; color: #fff; background: linear-gradient(145deg, var(--forest-800), var(--forest-950)); }
.net-amount span { display: block; color: rgba(255,255,255,.6); font-size: 9px; }
.net-amount strong { display: block; margin: 8px 0; font: 700 25px/1 "Manrope", sans-serif; }
.net-amount small { color: #afd4c1; font-size: 8px; }
.metric-row { display: flex; align-items: center; justify-content: space-between; padding: 10px 0; border-bottom: 1px solid var(--line-soft); font-size: 9.5px; }
.metric-row span { color: var(--ink-500); }
.metric-row strong { font-size: 10px; }

.proposal-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.proposal-card { padding: 18px; }
.proposal-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; }
.proposal-head h3 { margin-bottom: 5px; font: 700 15px/1.25 "Manrope", sans-serif; }
.proposal-head p { margin: 0; color: var(--ink-500); font-size: 12px; }
.proposal-values { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 11px; margin: 18px 0; padding: 14px; border-radius: 10px; background: var(--surface-soft); }
.proposal-values div span, .proposal-values div strong { display: block; }
.proposal-values div span { margin-bottom: 5px; color: var(--ink-500); font-size: 10px; }
.proposal-values div strong { font: 700 17px/1 "Manrope", sans-serif; }
.proposal-values svg { width: 17px; color: var(--forest-600); }
.proposal-facts { display: flex; flex-wrap: wrap; gap: 13px; margin-bottom: 15px; color: var(--ink-500); font-size: 11.5px; }
.proposal-facts strong { color: var(--ink-800); }
.proposal-actions { display: flex; gap: 7px; }
.increase-due-section { display: grid; gap: 11px; }
.section-head-compact { margin-bottom: 0; }
.section-head-compact h3 { margin: 0 0 5px; font: 700 16px/1.25 "Manrope", sans-serif; }
.section-head-compact p { margin: 0; color: var(--ink-500); font-size: 12px; line-height: 1.45; }
.increase-due-list { display: grid; gap: 9px; }
.increase-due-card { display: grid; grid-template-columns: 38px minmax(180px, 1.4fr) minmax(110px, .55fr) minmax(120px, .65fr) auto; align-items: center; gap: 14px; padding: 14px 16px; border-color: #eadbbd; background: linear-gradient(100deg, #fffdf8, #fff); }
.increase-due-card > .item-icon { width: 38px; height: 38px; }
.increase-due-copy { min-width: 0; }
.increase-due-copy h3 { margin: 0 0 5px; font: 700 14px/1.25 "Manrope", sans-serif; }
.increase-due-copy p { margin: 0; color: var(--ink-500); font-size: 12px; line-height: 1.4; }
.increase-due-fact span, .increase-due-fact strong { display: block; }
.increase-due-fact span { margin-bottom: 5px; color: var(--ink-500); font-size: 10px; text-transform: uppercase; letter-spacing: .04em; }
.increase-due-fact strong { font-size: 13px; }
.increase-due-section .status-pill { font-size: 10px; }
.increase-due-section .button { font-size: 11px; }
.increase-due-empty { display: flex; align-items: center; gap: 9px; padding: 13px 15px; border: 1px dashed var(--line); border-radius: 11px; color: var(--ink-500); background: var(--surface-soft); font-size: 12px; }
.increase-due-empty svg { width: 16px; color: var(--forest-600); }


.team-grid { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(280px, .8fr); gap: 14px; }
.settings-list-card { min-width: 0; min-height: 0; display: flex; flex-direction: column; overflow: hidden; }
.settings-card-scroll { min-height: 0; flex: 1 1 auto; overflow: auto; overscroll-behavior: contain; scrollbar-width: thin; }
.settings-list-card .data-table thead { position: sticky; z-index: 2; top: 0; }
.settings-owners-table { min-width: 760px; }
.settings-owners-table th,
.settings-owners-table td { height: 32px; padding: 5px 7px; font-size: 10.5px; line-height: 1.15; white-space: nowrap; }
.owner-table-link { width: max-content; max-width: 100%; padding: 2px 0; border-radius: 2px; color: var(--ink-900); font-size: inherit; font-weight: 650; }
.owner-table-link:hover { color: var(--forest-700); text-decoration: underline; text-underline-offset: 2px; }
.owner-table-link:focus-visible { outline: 2px solid rgba(48,131,97,.35); outline-offset: 2px; }
.plain-cell-state { color: var(--ink-700); font-size: 10.5px; }
.settings-members-card .settings-card-scroll { overflow-x: hidden; }
.settings-members-table { width: 100%; min-width: 0; table-layout: fixed; }
.settings-members-table th,
.settings-members-table td { padding: 5px 6px; white-space: normal; overflow-wrap: anywhere; }
.settings-members-table th:nth-child(1) { width: 27%; }
.settings-members-table th:nth-child(2) { width: 18%; }
.settings-members-table th:nth-child(3) { width: 18%; }
.settings-members-table th:nth-child(4) { width: 20%; }
.settings-members-table th:nth-child(5) { width: 17%; }
.settings-members-table .cell-main { min-width: 0; gap: 5px; }
.settings-members-table .cell-avatar { width: 24px; height: 24px; flex: 0 0 24px; font-size: 8px; }
.settings-members-table .cell-copy { min-width: 0; }
.settings-members-table .cell-copy strong,
.settings-members-table .cell-copy span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.settings-members-table .role-pill,
.settings-members-table .status-pill { padding-inline: 4px; white-space: normal; line-height: 1.2; }
.settings-members-table .member-scope-cell { color: var(--ink-600); line-height: 1.3; }
.member-row-actions { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-start; gap: 3px; }
.member-row-actions .row-action { width: 100%; min-height: 23px; padding-inline: 4px; white-space: normal; line-height: 1.15; }
.muted-cell { color: var(--ink-400); }
.readonly-dropzone { pointer-events: none; }
.owner-access-scope { min-width: 0; margin: 0; padding: 12px; border: 1px solid var(--line); border-radius: 8px; }
.owner-access-scope legend { padding-inline: 5px; font-size: 10px; font-weight: 700; }
.owner-access-scope > p { margin: 0 0 9px; color: var(--ink-500); font-size: 9.5px; line-height: 1.4; }
.owner-access-list { max-height: 190px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; overflow-y: auto; }
.owner-access-option { min-width: 0; display: flex; align-items: center; gap: 8px; padding: 8px; border: 1px solid var(--line-soft); border-radius: 6px; cursor: pointer; background: var(--surface-soft); }
.owner-access-option input { flex: 0 0 auto; accent-color: var(--forest-700); }
.owner-access-option span, .owner-access-option strong, .owner-access-option small { min-width: 0; display: block; }
.owner-access-option strong { overflow: hidden; font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.owner-access-option small { margin-top: 2px; color: var(--ink-500); font-size: 8.5px; }
.setup-tools-card { display: grid; grid-template-columns: 44px minmax(0, 1fr) auto; align-items: center; gap: 15px; border-color: var(--blue-100); }
.setup-tools-card > .item-icon { width: 44px; height: 44px; }
.setup-tools-card h3 { margin: 3px 0 4px; font: 700 15px/1.2 "Manrope", sans-serif; }
.setup-tools-card p { margin: 0; color: var(--ink-500); font-size: 9.5px; line-height: 1.5; }
.permission-list { display: grid; gap: 9px; }
.permission-item { display: grid; grid-template-columns: 34px 1fr auto; align-items: center; gap: 10px; padding: 10px; border: 1px solid var(--line-soft); border-radius: 10px; }
.permission-item > div > strong, .permission-item > div > span { display: block; }
.permission-item > div > strong { font-size: 9.5px; }
.permission-item > div > span { margin-top: 3px; color: var(--ink-500); font-size: 8px; }
.owner-property-disclosure > summary { list-style: none; cursor: pointer; }
.owner-property-disclosure > summary::-webkit-details-marker { display: none; }
.owner-property-summary { transition: border-color .16s ease, background .16s ease; }
.owner-property-summary:hover { border-color: var(--forest-200); background: var(--forest-50); }
.owner-property-summary:focus-visible { outline: 2px solid rgba(48,131,97,.35); outline-offset: 2px; }
.owner-property-chevron { display: grid; place-items: center; color: var(--ink-400); transition: transform .16s ease; }
.owner-property-chevron svg { width: 14px; height: 14px; }
.owner-property-disclosure[open] .owner-property-summary { border-color: var(--forest-200); border-radius: 10px 10px 0 0; background: var(--forest-50); }
.owner-property-disclosure[open] .owner-property-chevron { transform: rotate(90deg); }
.owner-property-rent-card { display: grid; gap: 11px; padding: 13px; border: 1px solid var(--forest-200); border-top: 0; border-radius: 0 0 10px 10px; background: #fff; }
.owner-property-rent-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; }
.owner-property-rent-head > div > span, .owner-property-rent-head > div > strong { display: block; }
.owner-property-rent-head > div > span { color: var(--ink-500); font-size: 8px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.owner-property-rent-head > div > strong { margin-top: 4px; font: 700 13px/1.25 "Manrope", sans-serif; }
.owner-property-rent-status { display: inline-flex !important; align-items: center; color: var(--forest-700); }
.owner-property-rent-status.danger { color: var(--red-700); }
.owner-property-rent-status.warning { color: var(--amber-700); }
.owner-property-rent-status.neutral { color: var(--ink-500); }
.owner-property-rent-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 7px; }
.owner-property-rent-grid > div { min-width: 0; padding: 9px 10px; border-radius: 8px; background: var(--surface-soft); }
.owner-property-rent-grid span, .owner-property-rent-grid strong { display: block; }
.owner-property-rent-grid span { color: var(--ink-500); font-size: 7.5px; }
.owner-property-rent-grid strong { margin-top: 4px; overflow: hidden; font-size: 9.5px; text-overflow: ellipsis; white-space: nowrap; }
.owner-property-rent-note.success { color: var(--forest-700); background: var(--forest-50); }
.owner-property-rent-note.danger { color: var(--red-700); background: var(--red-50); }
.role-pill { padding: 5px 7px; border-radius: 6px; color: var(--blue-700); background: var(--blue-50); font-size: 7.5px; font-weight: 700; }
.owner-share { display: flex; align-items: center; gap: 8px; }
.share-bar { width: 70px; height: 4px; border-radius: 9px; background: #e6ebe7; }
.share-bar span { display: block; height: 100%; border-radius: inherit; background: var(--forest-600); }

.empty-state { display: grid; place-items: center; min-height: 240px; padding: 30px; text-align: center; }
.empty-icon { width: 48px; height: 48px; display: grid; place-items: center; margin: 0 auto 12px; border-radius: 14px; color: var(--forest-600); background: var(--forest-50); }
.empty-icon svg { width: 22px; }
.empty-state h3 { margin-bottom: 5px; font: 700 13px/1.2 "Manrope", sans-serif; }
.empty-state p { max-width: 320px; margin: 0; color: var(--ink-500); font-size: 9.5px; line-height: 1.5; }

.drawer { position: fixed; z-index: 80; top: 0; right: 0; width: min(460px, 100vw); height: 100vh; display: flex; flex-direction: column; transform: translateX(105%); background: #fff; box-shadow: var(--shadow-lg); transition: transform .25s ease; }
.drawer.open { transform: translateX(0); }
.drawer-scrim { position: fixed; z-index: 70; inset: 0; opacity: 0; visibility: hidden; background: rgba(12,27,21,.36); backdrop-filter: blur(2px); transition: .2s ease; }
.drawer.open + .drawer-scrim { opacity: 1; visibility: visible; }
.drawer-header, .modal-header { min-height: 76px; display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 18px 21px; border-bottom: 1px solid var(--line-soft); }
.drawer-header h2, .modal-header h2 { margin: 0; font: 700 18px/1.2 "Manrope", sans-serif; letter-spacing: -.03em; }
.drawer-close::before, .drawer-close::after, .modal-close::before, .modal-close::after, .sidebar-close::before, .sidebar-close::after { content: ""; position: absolute; width: 16px; height: 1.5px; border-radius: 2px; background: currentColor; rotate: 45deg; }
.drawer-close::after, .modal-close::after, .sidebar-close::after { rotate: -45deg; }
.drawer-close, .modal-close, .sidebar-close { position: relative; }
.drawer-body { flex: 1; overflow-y: auto; padding: 20px; }
.detail-hero { padding: 17px; border-radius: 13px; color: #fff; background: linear-gradient(145deg, var(--forest-800), var(--forest-950)); }
.detail-hero .status-pill { margin-bottom: 15px; color: #d4eddf; background: rgba(255,255,255,.1); }
.detail-hero h3 { margin-bottom: 6px; font: 700 19px/1.2 "Manrope", sans-serif; }
.detail-hero p { margin: 0; color: rgba(255,255,255,.62); font-size: 9.5px; }
.tenant-spotlight { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin-top: 13px; }
.tenant-spotlight-card { position: relative; display: flex; flex-direction: column; min-width: 0; padding: 15px 16px; border: 1px solid var(--line); border-left: 3px solid var(--forest-600); border-radius: 12px; background: #fff; box-shadow: var(--shadow-sm); }
.tenant-spotlight-label { margin-bottom: 7px; color: var(--ink-500); font-size: 8.5px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.tenant-spotlight-value { overflow: hidden; color: var(--ink-950); font: 700 17px/1.2 "Manrope", sans-serif; text-overflow: ellipsis; white-space: nowrap; }
.tenant-spotlight-card:first-child .tenant-spotlight-value { overflow: visible; overflow-wrap: anywhere; text-overflow: clip; white-space: normal; }
.tenant-spotlight-note { margin-top: 5px; overflow: hidden; color: var(--ink-500); font-size: 9.5px; line-height: 1.4; text-overflow: ellipsis; white-space: nowrap; }
.tenant-spotlight-action { align-self: flex-start; display: inline-flex; align-items: center; gap: 5px; margin-top: 11px; padding: 0; border: 0; color: var(--forest-700); background: none; cursor: pointer; font: 700 9.5px/1 "Manrope", sans-serif; }
.tenant-spotlight-action svg { width: 12px; height: 12px; }
.tenant-spotlight-action:hover { color: var(--forest-900); text-decoration: underline; }
.tenant-spotlight-meter { margin-top: 11px; height: 4px; border-radius: 99px; background: var(--line); overflow: hidden; }
.tenant-spotlight-meter span { display: block; height: 100%; border-radius: 99px; background: var(--forest-600); }
.tenant-spotlight-card.warning { border-color: var(--amber-100); border-left-color: var(--amber-500); background: var(--amber-50); }
.tenant-spotlight-card.warning .tenant-spotlight-meter span { background: var(--amber-500); }
.tenant-spotlight-card.success { border-left-color: var(--forest-600); }
.detail-section { padding: 19px 0; border-bottom: 1px solid var(--line-soft); }
.detail-section:last-child { border: 0; }
.detail-section-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 13px; }
.detail-section h4 { margin: 0; font: 700 11px/1.2 "Manrope", sans-serif; }
.detail-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 11px; }
.detail-field { padding: 10px; border-radius: 9px; background: var(--surface-soft); }
.detail-field span, .detail-field strong { display: block; }
.detail-field span { margin-bottom: 5px; color: var(--ink-500); font-size: 7.5px; }
.detail-field strong { font-size: 9.5px; line-height: 1.35; }
.timeline { display: grid; gap: 0; }
.timeline-item { position: relative; display: grid; grid-template-columns: 18px 1fr; gap: 10px; padding-bottom: 15px; }
.timeline-item::before { content: ""; position: absolute; left: 7px; top: 16px; bottom: 0; width: 1px; background: var(--line); }
.timeline-item:last-child::before { display: none; }
.timeline-dot { position: relative; z-index: 1; width: 15px; height: 15px; border: 4px solid var(--forest-100); border-radius: 50%; background: var(--forest-600); }
.timeline-copy strong { display: block; font-size: 9.5px; }
.timeline-copy span { display: block; margin-top: 3px; color: var(--ink-500); font-size: 8px; }

.signed-contract-row { margin-bottom: 12px; border-color: var(--forest-100); background: var(--forest-50); }
.signature-upload { display: grid; gap: 7px; margin-top: 4px; }
.signature-upload small { color: var(--ink-500); font-size: 7.5px; line-height: 1.5; }
.section-foot { display: block; margin-top: 10px; color: var(--ink-500); font-size: 7.5px; line-height: 1.5; }
.archived-block { margin-top: 13px; padding-top: 12px; border-top: 1px dashed var(--line); }
.archived-title { display: flex; align-items: center; gap: 6px; margin-bottom: 9px; color: var(--ink-500); font-size: 8px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; }
.archived-title svg { width: 12px; height: 12px; }
.permission-item.archived-row { background: var(--surface-soft); opacity: .78; }
.tenancy-history { margin-top: 14px; }
.tenancy-history tfoot td { padding: 12px 14px; border-top: 1px solid var(--line); background: var(--surface-soft); font-size: 9px; font-weight: 700; }
.muted-cell { color: var(--ink-500); }
.cell-note { display: block; margin-top: 3px; color: var(--ink-500); font-size: 7.5px; font-weight: 600; }
.detail-section .permission-list { display: grid; gap: 8px; }
.detail-section input[type="file"] { width: 100%; }

.modal-layer { position: fixed; z-index: 100; inset: 0; display: grid; place-items: center; padding: 20px; opacity: 0; visibility: hidden; transition: .18s ease; }
.modal-layer.open { opacity: 1; visibility: visible; }
.modal-scrim { position: absolute; inset: 0; background: rgba(12,27,21,.47); backdrop-filter: blur(3px); }
.modal { position: relative; width: min(690px, 100%); max-height: min(760px, calc(100vh - 40px)); display: flex; flex-direction: column; overflow: hidden; transform: translateY(8px) scale(.985); border-radius: 17px; background: #fff; box-shadow: var(--shadow-lg); transition: .2s ease; }
.modal-layer.open .modal { transform: none; }
.modal-body { flex: 1; overflow-y: auto; padding: 21px; }
.modal.modal-document-preview { width: min(1160px, 100%); max-height: calc(100vh - 28px); }
.modal-document-preview .modal-body { min-height: 0; overflow: hidden; padding: 0; }
.generated-contract-modal { height: min(810px, calc(100vh - 108px)); display: grid; grid-template-rows: minmax(0, 1fr) auto; }
.generated-docx-preview { min-width: 0; min-height: 0; overflow: auto; background: #dfe4e1; }
.generated-docx-preview .docx-wrapper { min-width: max-content; padding: 24px !important; background: #dfe4e1 !important; }
.generated-docx-preview .docx-wrapper > section.docx { margin-inline: auto; box-shadow: 0 4px 18px rgba(16, 39, 31, .16) !important; }
.generated-docx-preview .docx-wrapper table { table-layout: fixed !important; }
.docx-preview-loading, .docx-preview-error { min-height: 520px; display: grid; place-items: center; align-content: center; gap: 10px; padding: 28px; color: var(--ink-600); text-align: center; }
.docx-preview-loading .database-spinner { width: 30px; height: 30px; }
.docx-preview-loading strong, .docx-preview-loading small, .docx-preview-error strong, .docx-preview-error span { display: block; }
.docx-preview-loading strong, .docx-preview-error strong { color: var(--ink-950); font-size: 14px; }
.docx-preview-loading small, .docx-preview-error span { max-width: 440px; font-size: 11px; line-height: 1.55; }
.docx-preview-error > svg { width: 28px; height: 28px; color: var(--amber-700); }
.generated-contract-actions { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 12px 16px; border-top: 1px solid var(--line); background: #fff; }
.generated-contract-actions > span { display: flex; align-items: center; gap: 6px; color: var(--ink-500); font-size: 10.5px; }
.generated-contract-actions > span svg { width: 13px; height: 13px; flex: 0 0 auto; }
.generated-contract-actions .modal-actions { flex: 0 0 auto; }
.form-stack { display: grid; gap: 18px; }
.form-section { display: grid; gap: 12px; }
.form-section-title { display: flex; align-items: center; gap: 8px; padding-bottom: 8px; border-bottom: 1px solid var(--line-soft); font: 700 10px/1 "Manrope", sans-serif; }
.form-section-title span { width: 21px; height: 21px; display: grid; place-items: center; border-radius: 7px; color: var(--forest-700); background: var(--forest-50); font-size: 8px; }
.form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 11px; }
.form-grid.three { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.form-section-hint { margin: 0 0 4px; color: var(--ink-500); font-size: 9px; line-height: 1.55; }

/* Poliçe belgesinden otomatik doldurma paneli (modal içi, kompakt) */
.policy-upload { display: flex; align-items: center; gap: 11px; padding: 13px; border: 1.5px dashed #aec4b6; border-radius: 12px; background: linear-gradient(145deg, #fbfdfb, #f4f8f5); }
.policy-upload-icon { width: 31px; height: 31px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 9px; color: var(--forest-700); background: var(--forest-50); }
.policy-upload-icon svg { width: 15px; height: 15px; }
.policy-upload-copy { flex: 1; min-width: 0; display: grid; gap: 3px; }
.policy-upload-copy strong { font: 700 10px/1.3 "Manrope", sans-serif; }
.policy-upload-copy span { color: var(--ink-500); font-size: 8.5px; line-height: 1.5; }
.policy-upload .button { flex: 0 0 auto; }
.policy-upload-result { display: flex; align-items: flex-start; gap: 9px; padding: 11px; border: 1px solid var(--line); border-radius: 11px; font-size: 9px; line-height: 1.5; }
.policy-upload-result[hidden] { display: none; }
.policy-upload-result .item-icon { flex: 0 0 auto; }
.policy-upload-result > div { display: grid; gap: 3px; }
.policy-upload-result strong { font-size: 9.5px; }
.policy-upload-result span { color: var(--ink-500); }
.policy-upload-result.is-done { border-color: #b6d6c3; background: var(--forest-50); }
.policy-upload-result.is-error { border-color: #e7bdbd; background: var(--red-50); color: var(--red-700); }
.policy-upload-result.is-processing { align-items: center; color: var(--ink-500); }
.policy-upload-result.is-processing .auth-spinner { width: 15px; height: 15px; flex: 0 0 auto; }
.policy-upload-warnings { margin: 4px 0 0; padding: 0; list-style: none; display: grid; gap: 4px; }
.policy-upload-warnings li { display: flex; align-items: flex-start; gap: 5px; color: var(--ink-600); font-size: 8.5px; line-height: 1.5; }
.policy-upload-warnings svg { width: 11px; height: 11px; flex: 0 0 auto; margin-top: 1px; color: var(--amber-500); }
.property-document-upload { width: 100%; display: grid; grid-template-columns: 42px minmax(0, 1fr) auto; align-items: center; gap: 13px; padding: 16px; border: 1.5px dashed #9ebbaa; border-radius: 12px; color: inherit; background: linear-gradient(145deg, #fbfdfb, #f2f7f4); font: inherit; text-align: left; cursor: pointer; }
.property-document-upload:hover { border-color: var(--forest-600); background: var(--forest-50); }
.property-document-upload:focus-visible { outline: 3px solid rgba(48,131,97,.16); outline-offset: 2px; }
.property-document-upload-icon { width: 42px; height: 42px; display: grid; place-items: center; border-radius: 11px; color: var(--forest-700); background: #fff; box-shadow: 0 2px 8px rgba(25,69,52,.08); }
.property-document-upload-icon svg { width: 19px; height: 19px; }
.property-document-upload-copy { min-width: 0; }
.property-document-upload-copy strong, .property-document-upload-copy span { display: block; }
.property-document-upload-copy strong { font-size: 14px; }
.property-document-upload-copy span { margin-top: 4px; color: var(--ink-500); font-size: 11.5px; }
.property-document-selection { display: flex; align-items: center; gap: 10px; padding: 11px 13px; border: 1px solid var(--line-soft); border-radius: 10px; background: var(--surface-soft); }
.property-document-selection[hidden] { display: none; }
.property-document-selection > span:last-child { min-width: 0; }
.property-document-selection strong, .property-document-selection small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.property-document-selection strong { font-size: 12.5px; }
.property-document-selection small { margin-top: 3px; color: var(--ink-500); font-size: 10.5px; }
.property-document-confirm { min-height: 54px; padding: 11px 13px; line-height: 1.45; }
.property-document-row { width: 100%; color: inherit; background: #fff; font: inherit; text-align: left; cursor: pointer; }
.property-document-row:hover { border-color: #a8c8b7; background: var(--forest-50); }
.property-document-copy { min-width: 0; }
.property-document-copy strong, .property-document-copy > span { display: block; }
.property-document-copy strong { font-size: 13px; }
.property-document-copy > span { margin-top: 5px; overflow: hidden; color: var(--ink-500); font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }

/* Hisseli malik editörü: satır ekle/çıkar + hisse toplamı + gelir alıcısı */
.owner-editor { width: min(100%, 980px); display: grid; gap: 11px; }
.owner-rows { display: grid; gap: 9px; }
.owner-row { display: grid; grid-template-columns: minmax(0, 1fr) 108px 31px; align-items: end; gap: 9px; }
.owner-identity-fields { display: grid; grid-template-columns: 1fr; gap: 9px; }
.owner-identity-fields.has-manual-owner { grid-template-columns: minmax(170px, .8fr) minmax(210px, 1.2fr); }
.owner-manual-name-field[hidden], .owner-income-field[hidden] { display: none !important; }
.owner-share-field { min-width: 0; }
.owner-row-remove { width: 31px; height: 39px; display: grid; place-items: center; border: 1px solid var(--line); border-radius: 9px; color: var(--ink-500); background: #fff; cursor: pointer; transition: .15s ease; }
.owner-row-remove svg { width: 13px; height: 13px; }
.owner-row-remove:hover { border-color: var(--red-700); color: var(--red-700); background: var(--red-50); }
.owner-row-remove[hidden] { visibility: hidden; }
.owner-editor-foot { display: flex; align-items: center; justify-content: space-between; gap: 11px; flex-wrap: wrap; }
.owner-share-total { color: var(--ink-500); font-size: 9px; font-weight: 600; }
.owner-income-field { padding-top: 11px; border-top: 1px solid var(--line-soft); }
.field-note { color: var(--ink-500); font-size: 8.5px; line-height: 1.5; }
.field-note.warning { color: var(--amber-500); font-weight: 600; }
.address-code-field { margin-top: 11px; padding-top: 11px; border-top: 1px solid var(--line-soft); }
.address-code-field label small { color: var(--ink-500); font-weight: 500; }
.address-code-field input { letter-spacing: .06em; }
.table-empty { padding: 22px 12px; color: var(--ink-500); font-size: 9.5px; text-align: center; }
.table-footnote { display: flex; align-items: center; justify-content: space-between; gap: 10px; flex-wrap: wrap; padding: 11px 19px; border-top: 1px solid var(--line-soft); color: var(--ink-500); font-size: 9.5px; }
.field { display: grid; gap: 6px; }
.field.full { grid-column: 1 / -1; }
.field label { color: var(--ink-600); font-size: 8.5px; font-weight: 600; }
.field label em { color: var(--red-700); font-style: normal; }
.field input, .field select, .field textarea { width: 100%; min-height: 39px; padding: 0 11px; border: 1px solid var(--line); border-radius: 9px; outline: 0; color: var(--ink-950); background: #fff; font-size: 10px; transition: .15s ease; }
.field textarea { min-height: 80px; padding-top: 10px; resize: vertical; }
.field input:focus, .field select:focus, .field textarea:focus { border-color: #82b199; box-shadow: 0 0 0 3px rgba(48,131,97,.08); }
.checkbox-field { min-height: 39px; display: flex; align-items: center; gap: 8px; padding: 0 10px; border: 1px solid var(--line); border-radius: 9px; color: var(--ink-600); font-size: 9px; }
.checkbox-field input { accent-color: var(--forest-700); }
.form-note { display: flex; gap: 9px; padding: 11px; border-radius: 9px; color: var(--blue-700); background: var(--blue-50); font-size: 8.5px; line-height: 1.45; }
.form-note.warning { color: var(--amber-700); background: var(--amber-50); }
.form-note svg { width: 15px; height: 15px; flex: 0 0 auto; }
.correction-history { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 7px; max-height: 168px; overflow-y: auto; }
.correction-history li { display: flex; flex-direction: column; gap: 3px; padding: 8px 10px; border-radius: 8px; background: var(--sand-100); font-size: 8.5px; line-height: 1.45; }
.correction-history li strong { font-size: 8px; color: var(--forest-800); letter-spacing: .02em; }
.correction-history li span { color: var(--ink-600); }
.correction-history li span b { font-weight: 600; color: var(--ink-800); }
.correction-history .correction-note { font-style: italic; }
.charge-impact-panel { display: grid; gap: 5px; padding: 12px 14px; border: 1px solid #c8ddd2; border-radius: 10px; color: var(--forest-800); background: var(--forest-50); }
.charge-impact-panel strong, .charge-impact-panel span { display: block; }
.charge-impact-panel strong { font-size: 9.5px; }
.charge-impact-panel span { color: var(--ink-600); font-size: 8.5px; line-height: 1.5; }
.modal-actions { display: flex; align-items: center; justify-content: flex-end; gap: 8px; padding-top: 4px; }
.quick-add-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px; }
/* Kart bir <button>; tarayıcı varsayılanı text-align: center metni ikona göre
   ortalayıp kaymış gösterdiği için sola hizalama açıkça veriliyor. */
.quick-add-card { display: flex; align-items: center; gap: 12px; padding: 14px; border: 1px solid var(--line-soft); border-radius: 11px; background: var(--surface-soft); cursor: pointer; transition: .17s ease; text-align: left; }
.quick-add-card:hover { border-color: #a9cbb9; background: var(--forest-50); transform: translateY(-1px); }
.quick-add-card .item-icon { flex: 0 0 auto; }
.quick-add-card > span { flex: 1 1 auto; min-width: 0; }
.quick-add-card strong, .quick-add-card > span > span { display: block; }
.quick-add-card strong { font-size: 10px; }
.quick-add-card > span > span { margin-top: 3px; color: var(--ink-500); font-size: 8px; }

.toast-region { position: fixed; z-index: 140; right: 20px; bottom: 20px; display: grid; gap: 8px; pointer-events: none; }
.toast { width: min(345px, calc(100vw - 40px)); display: grid; grid-template-columns: 31px 1fr; align-items: center; gap: 10px; padding: 11px 13px; border: 1px solid var(--line); border-radius: 11px; background: #fff; box-shadow: var(--shadow-md); animation: toast-in .28s ease both; }
.toast.leaving { animation: toast-out .25s ease both; }
.toast-icon { width: 31px; height: 31px; display: grid; place-items: center; border-radius: 9px; color: var(--forest-700); background: var(--forest-50); }
.toast-icon.warning { color: var(--amber-700); background: var(--amber-50); }
.toast-icon svg { width: 15px; height: 15px; }
.toast strong, .toast span:not(.toast-icon) { display: block; }
.toast strong { font-size: 9.5px; }
.toast strong + span { margin-top: 3px; color: var(--ink-500); font-size: 8px; }
@keyframes toast-in { from { opacity: 0; transform: translateY(12px); } }
@keyframes toast-out { to { opacity: 0; transform: translateY(8px); } }

.page-back { width: max-content; display: inline-flex; align-items: center; gap: 6px; padding: 0; border: 0; color: var(--ink-600); background: transparent; cursor: pointer; font-size: 10px; font-weight: 600; }
.page-back:hover { color: var(--forest-700); }
.page-back svg { width: 14px; height: 14px; rotate: 180deg; }
.property-page-hero { display: grid; grid-template-columns: 118px minmax(0, 1fr) auto; align-items: center; gap: 22px; padding: 18px; }
.property-page-actions { justify-content: flex-end; }
.property-page-visual { position: relative; height: 92px; display: grid; place-items: center; overflow: hidden; border-radius: 12px; color: #fff; background: linear-gradient(145deg, #7f9d8f, #345c49); }
.property-page-visual.office { background: linear-gradient(145deg, #78919a, #3f5c67); }
.property-page-visual.villa { background: linear-gradient(145deg, #86a67f, #3e6741); }
.property-page-visual::after { content: ""; position: absolute; width: 92px; height: 92px; right: -25px; bottom: -47px; border: 1px solid rgba(255,255,255,.25); border-radius: 50%; }
.property-page-visual span { width: 46px; height: 46px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.27); border-radius: 13px; background: rgba(255,255,255,.12); }
.property-page-visual svg { width: 24px; height: 24px; }
.property-page-title { min-width: 0; }
.property-page-title > div { display: flex; align-items: center; gap: 9px; }
.record-code { color: var(--ink-500); font-size: 9px; font-weight: 700; letter-spacing: .08em; }
.property-page-title h2 { margin: 10px 0 6px; font: 700 23px/1.2 "Manrope", sans-serif; letter-spacing: -.03em; }
.property-page-title p { display: flex; align-items: center; gap: 6px; margin: 0; color: var(--ink-500); font-size: 10px; }
.property-page-title p svg { width: 13px; height: 13px; }
.record-summary-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.record-summary-item { min-width: 0; display: grid; gap: 5px; padding: 16px 18px; border: 1px solid var(--line); border-radius: var(--radius); background: #fff; box-shadow: var(--shadow-sm); }
.record-summary-item > span { color: var(--ink-500); font-size: 9px; font-weight: 700; letter-spacing: .065em; text-transform: uppercase; }
.record-summary-item > strong { overflow: hidden; color: var(--ink-950); font: 700 16px/1.3 "Manrope", sans-serif; text-overflow: ellipsis; white-space: nowrap; }
.record-summary-item > small { overflow: hidden; color: var(--ink-500); font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.record-summary-item.warning { border-color: var(--amber-100); background: var(--amber-50); }
.record-action-card { display: grid; grid-template-columns: 44px minmax(0, 1fr) auto; align-items: center; gap: 14px; padding: 16px 18px; border-color: var(--amber-100); background: linear-gradient(110deg, #fffdf8, var(--amber-50)); }
.record-action-card.blue { border-color: var(--blue-100); background: linear-gradient(110deg, #fff, var(--blue-50)); }
.record-action-card > div > span { color: var(--ink-500); font-size: 8px; font-weight: 800; letter-spacing: .1em; }
.record-action-card > div > strong { display: block; margin-top: 3px; font: 700 13px/1.3 "Manrope", sans-serif; }
.record-action-card > div > p { margin: 3px 0 0; color: var(--ink-500); font-size: 10px; line-height: 1.45; }
.record-action-buttons { display: flex; align-items: stretch; gap: 8px; }
.record-action-buttons .button { flex: 1 1 auto; white-space: nowrap; }
.record-action-card.compact { grid-template-columns: 38px minmax(0, 1fr); margin-top: 12px; padding: 13px; box-shadow: none; }
.record-action-card.compact > .item-icon { width: 38px; height: 38px; }
.record-action-card.compact > .button { grid-column: 1 / -1; width: 100%; }
.record-action-card.compact > .record-action-buttons { grid-column: 1 / -1; width: 100%; }
.record-detail-stack { display: grid; gap: 10px; }
.record-disclosure { min-height: 0; overflow: hidden; }
.record-disclosure > summary { min-height: 74px; display: grid; grid-template-columns: 38px minmax(0, 1fr) auto 17px; align-items: center; gap: 12px; padding: 15px 18px; cursor: pointer; list-style: none; }
.record-disclosure > summary::-webkit-details-marker { display: none; }
/* Kapalı bölümün başlığındaki kırılım: bölümü açmadan hangi tür işlemin ne
   kadar tuttuğunu söyler. Dar ekranda sarmalanır, başlığı taşırmaz. */
/* Grafik başlığında lejant ile dönem anahtarı yan yana durur; dar ekranda
   alt alta iner ve başlığı taşırmaz. */
.chart-head-actions { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 10px 16px; min-width: 0; }
.disclosure-breakdown { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; min-width: 0; }
.breakdown-chip, .breakdown-total { display: grid; gap: 2px; padding: 7px 12px; border: 1px solid var(--line-soft); border-radius: 10px; background: var(--surface-soft); text-align: right; }
.breakdown-chip em, .breakdown-total em { color: var(--ink-500); font-style: normal; font-size: 9.5px; letter-spacing: .02em; text-transform: uppercase; }
.breakdown-chip strong, .breakdown-total strong { font: 700 13px/1 "Manrope", sans-serif; white-space: nowrap; }
.breakdown-chip small, .breakdown-total small { color: var(--ink-500); font-size: 9.5px; white-space: nowrap; }
.breakdown-chip.warning strong { color: var(--amber-700); }
.breakdown-chip.danger strong { color: var(--red-700); }
.breakdown-chip.blue strong { color: var(--forest-700); }
.breakdown-total { border-color: var(--ink-950); background: transparent; }
.record-disclosure > summary:hover { background: var(--surface-soft); }
.record-disclosure > summary:focus-visible { outline: 3px solid rgba(48, 131, 97, .18); outline-offset: -3px; }
.record-disclosure > summary > .item-icon { width: 38px; height: 38px; }
.record-disclosure-copy { min-width: 0; }
.record-disclosure-copy strong, .record-disclosure-copy small { display: block; }
.record-disclosure-copy strong { color: var(--ink-950); font: 700 13px/1.3 "Manrope", sans-serif; }
.record-disclosure-copy small { margin-top: 4px; overflow: hidden; color: var(--ink-500); font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.record-disclosure-meta { color: var(--ink-600); font-size: 10px; font-weight: 700; white-space: nowrap; }
.record-disclosure-chevron { width: 16px; height: 16px; color: var(--ink-500); transition: rotate .18s ease; }
.record-disclosure[open] .record-disclosure-chevron { rotate: 90deg; }
.record-disclosure-body { padding: 18px; border-top: 1px solid var(--line-soft); }
.exception-breakdown { flex-wrap: nowrap; align-items: center; overflow-x: auto; scrollbar-width: thin; }
.exception-breakdown-part { display: inline-flex; flex: 0 0 auto; align-items: baseline; gap: 5px; padding: 6px 8px; border-right: 1px solid var(--line-soft); white-space: nowrap; }
.exception-breakdown-part em { color: var(--ink-500); font-style: normal; font-size: 9px; text-transform: uppercase; }
.exception-breakdown-part strong { font-size: 11px; }
.exception-breakdown-part.warning strong { color: var(--amber-700); }
.exception-breakdown-part.danger strong { color: var(--red-700); }
.exception-breakdown-part.blue strong { color: var(--forest-700); }
.exception-breakdown-part.total { padding-right: 0; border-right: 0; }
.exception-breakdown-part.total strong { color: var(--ink-950); }
.record-disclosure-actions { display: flex; justify-content: flex-end; gap: 8px; margin-bottom: 14px; }
.record-section-grid { margin-top: 14px; }
.detail-grid-wide { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.drawer-record-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin-top: 12px; }
.drawer-record-summary .record-summary-item { padding: 12px; border-radius: 11px; box-shadow: none; }
.drawer-record-summary .record-summary-item > strong { font-size: 13px; }
.drawer-record-stack { display: grid; gap: 9px; margin-top: 12px; }
.drawer-record-disclosure { border-radius: 12px; box-shadow: none; }
.drawer-record-disclosure > summary { min-height: 66px; grid-template-columns: 34px minmax(0, 1fr) auto 15px; gap: 9px; padding: 12px; }
.drawer-record-disclosure > summary > .item-icon { width: 34px; height: 34px; }
.drawer-record-disclosure .record-disclosure-body { padding: 14px; }
.tenant-open-charges { margin-top: 14px; }
.tenant-charge-list { margin-top: 16px; }
.subsection-title { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 9px; }
.subsection-title strong { font: 700 12px/1.3 "Manrope", sans-serif; }
.subsection-title span { color: var(--ink-500); font-size: 10px; }
.charge-record-row { grid-template-columns: 40px minmax(0, 1fr) auto; }
.charge-record-actions { display: flex; align-items: center; justify-content: flex-end; gap: 8px; }
.detail-page-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; align-items: start; }
.detail-page-card { min-height: 224px; }
.detail-page-card .detail-grid { gap: 12px; }
.property-media-card .card-header { align-items: flex-start; }
.property-media-card .section-actions { flex-wrap: wrap; justify-content: flex-end; }
.property-photo-strip { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; }
.property-photo-thumb { aspect-ratio: 4 / 3; min-width: 0; overflow: hidden; border: 1px solid var(--line-soft); border-radius: 10px; background: var(--surface-soft); }
.property-photo-thumb img { width: 100%; height: 100%; display: block; object-fit: cover; }
.property-photo-thumb > span { width: 100%; height: 100%; display: grid; place-items: center; align-content: center; gap: 5px; padding: 7px; color: var(--ink-500); text-align: center; }
.property-photo-thumb svg { width: 18px; height: 18px; }
.property-photo-thumb small { max-width: 100%; overflow: hidden; font-size: 7px; text-overflow: ellipsis; white-space: nowrap; }
.property-photo-foot { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-top: 10px; color: var(--ink-500); font-size: 8px; }
.photo-empty { min-height: 104px; display: flex; align-items: center; gap: 12px; padding: 15px; border: 1px dashed var(--line); border-radius: 11px; background: var(--surface-soft); }
.photo-empty > span { width: 38px; height: 38px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 10px; color: var(--forest-700); background: var(--forest-50); }
.photo-empty svg { width: 18px; height: 18px; }
.photo-empty strong { display: block; font-size: 9.5px; }
.photo-empty p { margin: 4px 0 0; color: var(--ink-500); font-size: 8px; line-height: 1.45; }
.photo-period { display: grid; gap: 12px; padding: 15px 0; border-bottom: 1px solid var(--line-soft); }
.photo-period:first-child { padding-top: 0; }
.photo-period:last-child { border-bottom: 0; }
.photo-period-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.photo-period-head strong, .photo-period-head span { display: block; }
.photo-period-head strong { font-size: 10px; }
.photo-period-head span { margin-top: 4px; color: var(--ink-500); font-size: 8px; }
.photo-gallery-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.photo-gallery-tile { min-width: 0; overflow: hidden; margin: 0; border: 1px solid var(--line-soft); border-radius: 11px; background: #fff; }
.photo-gallery-tile > a, .photo-gallery-tile > span { aspect-ratio: 4 / 3; display: grid; place-items: center; overflow: hidden; color: var(--ink-500); background: var(--surface-soft); }
.photo-gallery-tile img { width: 100%; height: 100%; display: block; object-fit: cover; transition: transform .18s ease; }
.photo-gallery-tile a:hover img { transform: scale(1.025); }
.photo-gallery-tile > span svg { width: 25px; height: 25px; }
.photo-gallery-tile figcaption { padding: 9px; }
.photo-gallery-tile figcaption strong, .photo-gallery-tile figcaption small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.photo-gallery-tile figcaption strong { font-size: 8.5px; }
.photo-gallery-tile figcaption small { margin-top: 4px; color: var(--ink-500); font-size: 7.5px; }
.detail-action { margin-top: 14px; }
.empty-inline { display: flex; align-items: center; gap: 12px; padding: 12px; border-radius: 10px; background: var(--surface-soft); }
.empty-inline strong { display: block; font-size: 10px; }
.empty-inline p { margin: 4px 0 0; color: var(--ink-500); font-size: 9px; }
.form-page-card { padding: 22px; }
.form-page-actions { display: flex; align-items: center; justify-content: flex-end; gap: 8px; padding-top: 5px; }
.page-empty { min-height: 430px; }
.page-empty-actions { display: flex; justify-content: center; margin-top: -90px; padding-bottom: 45px; }
.database-state { min-height: 390px; display: flex; align-items: center; justify-content: center; flex-direction: column; padding: 42px; text-align: center; }
.database-state h2 { margin: 18px 0 7px; font: 700 18px/1.25 "Manrope", sans-serif; }
.database-state p { max-width: 480px; margin: 0; color: var(--ink-500); font-size: 10px; line-height: 1.6; }
.database-state .button { margin-top: 20px; }
.database-state .item-icon { width: 44px; height: 44px; }
.database-spinner { width: 38px; height: 38px; border: 3px solid var(--forest-100); border-top-color: var(--forest-700); border-radius: 50%; animation: database-spin .8s linear infinite; }
.button-spinner { width: 14px; height: 14px; flex: 0 0 14px; border: 2px solid currentColor; border-right-color: transparent; border-radius: 50%; animation: database-spin .7s linear infinite; opacity: .8; }
.button[aria-busy="true"] { cursor: wait; }
@keyframes database-spin { to { transform: rotate(360deg); } }
.row-action.primary { color: var(--forest-700); border-color: #bdd8ca; background: var(--forest-50); }

.automation-kicker { display: inline-flex; align-items: center; gap: 7px; margin-bottom: 9px; color: var(--forest-700); font-size: 11px; font-weight: 800; letter-spacing: .09em; }
.automation-kicker svg { width: 13px; height: 13px; }
.contract-head-status { display: flex; align-items: center; gap: 9px; min-width: 178px; padding: 10px 12px; border: 1px solid #cde5d8; border-radius: 11px; color: var(--forest-700); background: var(--forest-50); }
.contract-head-status > svg { width: 19px; height: 19px; padding: 4px; border-radius: 50%; color: #fff; background: var(--forest-600); }
.contract-head-status strong, .contract-head-status small { display: block; }
.contract-head-status strong { font-size: 13px; }
.contract-head-status small { margin-top: 3px; color: var(--ink-500); font-size: 11px; }
.contract-head-status.needs-input { border-color: #ead8b5; color: #8a621c; background: #fff9ed; }
.contract-head-status.needs-input > svg { background: #bd8427; }
.contract-steps { display: flex; align-items: center; padding: 11px 15px; border: 1px solid var(--line); border-radius: 12px; background: #fff; }
.contract-steps span { display: flex; align-items: center; gap: 8px; color: var(--ink-400); font-size: 12px; font-weight: 700; white-space: nowrap; }
.contract-steps span i { width: 27px; height: 27px; display: grid; place-items: center; border: 1px solid #d9dfdb; border-radius: 50%; font-size: 11px; font-style: normal; background: #f7f9f7; }
.contract-steps span.complete, .contract-steps span.active { color: var(--forest-700); }
.contract-steps span.complete i { color: #fff; border-color: var(--forest-600); background: var(--forest-600); }
.contract-steps span.active i { border-color: var(--forest-500); background: var(--forest-50); box-shadow: 0 0 0 3px var(--forest-100); }
.contract-steps b { flex: 1; height: 1px; min-width: 18px; margin: 0 10px; background: #e2e7e4; }

.contract-layout { display: grid; grid-template-columns: minmax(330px, .72fr) minmax(590px, 1.28fr); gap: 14px; align-items: start; }
.contract-control-column { display: grid; gap: 12px; }
.contract-sidebar .card-body { padding-top: 14px; }
.auto-badge, .template-status, .clause-count { display: inline-flex; align-items: center; gap: 6px; padding: 7px 9px; border-radius: 8px; color: var(--forest-700); background: var(--forest-50); font-size: 10.5px; font-weight: 700; white-space: nowrap; }
.auto-badge svg, .template-status svg { width: 11px; height: 11px; }
.completion-score { color: var(--forest-700); font: 800 15px/1 "Manrope", sans-serif; }
.contract-sources { display: grid; gap: 7px; }
.contract-source-row { display: grid; grid-template-columns: 30px 1fr 14px; align-items: center; gap: 9px; padding: 8px; border: 1px solid #edf0ee; border-radius: 9px; background: #fbfcfb; }
.contract-source-icon { width: 30px; height: 30px; display: grid; place-items: center; border-radius: 8px; color: var(--ink-500); background: #eef1ef; }
.contract-source-icon.complete { color: var(--forest-700); background: var(--forest-50); }
.contract-source-icon svg { width: 14px; height: 14px; }
.contract-source-row strong, .contract-source-row small { display: block; }
.contract-source-row strong { font-size: 12.5px; }
.contract-source-row small { margin-top: 3px; color: var(--ink-500); font-size: 11px; line-height: 1.45; }
.contract-source-row > i { color: var(--forest-600); }
.contract-source-row > i svg { width: 13px; height: 13px; }
.contract-complete-note { display: flex; align-items: center; gap: 9px; padding: 11px 12px; border: 1px solid #cfe3d8; border-radius: 10px; color: var(--forest-700); background: var(--forest-50); }
.contract-complete-note > svg { width: 17px; height: 17px; padding: 3px; border-radius: 50%; color: #fff; background: var(--forest-600); }
.contract-complete-note strong, .contract-complete-note small { display: block; }
.contract-complete-note strong { font-size: 12.5px; }
.contract-complete-note small { margin-top: 3px; color: var(--ink-500); font-size: 11px; }
.contract-missing-card { border-color: #ead8b5; }
.contract-missing-card .card-body { padding-top: 13px; }
.contract-conditions-card .form-grid { gap: 9px; }
.contract-conditions-card .field:last-child { grid-column: 1 / -1; }
.contract-clause-list { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; }
.contract-clause-list label { display: flex; align-items: flex-start; gap: 10px; min-height: 68px; padding: 12px; border: 1px solid #e4e9e6; border-radius: 10px; background: #fbfcfb; cursor: pointer; }
.contract-clause-list label:has(input:checked) { border-color: #bcd8ca; background: var(--forest-50); }
.contract-clause-list .contract-annex-option { grid-column: 1 / -1; min-height: 62px; border-color: #cfe0d7; background: #f7fbf9; }
.contract-clause-list input { margin: 2px 0 0; accent-color: var(--forest-700); }
.contract-clause-list strong, .contract-clause-list small { display: block; }
.contract-clause-list strong { font-size: 12px; }
.contract-clause-list small { margin-top: 4px; color: var(--ink-500); font-size: 10.5px; line-height: 1.45; }
.contract-custom-clause { margin-top: 11px; }
.contract-custom-clause textarea { min-height: 72px !important; }
.contract-custom-clause > small { display: block; margin-top: 6px; color: var(--ink-500); font-size: 10.5px; }

.contract-preview-card { position: sticky; top: calc(var(--topbar-height) + 14px); overflow: hidden; }
.contract-preview-card > .card-header { gap: 12px; }
.contract-preview-toolbar { min-height: 44px; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 9px 17px; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); color: var(--ink-500); background: #fbfcfb; font-size: 11px; }
.contract-preview-toolbar > span { display: flex; align-items: center; gap: 5px; }
.contract-preview-toolbar svg { width: 11px; height: 11px; }
.contract-preview-toolbar button { display: inline-flex; align-items: center; gap: 5px; padding: 0; border: 0; color: var(--forest-700); background: none; font: inherit; font-weight: 700; cursor: pointer; }
.contract-preview-canvas { max-height: calc(100vh - 240px); min-height: 620px; padding: 22px; overflow: auto; background: #e7ebe8; }
.canonical-contract-live-preview { display: grid; gap: 14px; }
.canonical-contract-live-preview > .canonical-contract-annex { width: min(100%, 816px); margin: 0 auto; background: #fff; box-shadow: 0 3px 12px rgba(24, 45, 36, .08); }
.contract-live-docx-preview { overflow: visible; background: transparent; }
.contract-live-docx-preview .docx-wrapper { min-width: max-content; padding: 0 !important; background: transparent !important; }
.contract-live-docx-preview .docx-wrapper > section.docx { margin-bottom: 18px; }
.contract-live-docx-preview .docx-preview-loading, .contract-live-docx-preview .docx-preview-error { min-height: 560px; background: #fff; box-shadow: 0 6px 22px rgba(24, 45, 36, .12); }
.canonical-contract-preview { width: min(100%, 680px); margin: 0 auto; padding: 34px; color: var(--ink-800); background: #fff; box-shadow: 0 6px 22px rgba(24, 45, 36, .12); }
.canonical-contract-file { display: flex; align-items: center; gap: 16px; padding-bottom: 24px; border-bottom: 2px solid var(--forest-700); }
.canonical-contract-file > svg.canonical-contract-file-icon { width: 50px; height: 50px; flex: 0 0 50px; padding: 12px; border-radius: 10px; color: #fff; background: var(--forest-700); }
.canonical-contract-file span, .canonical-contract-file small, .canonical-contract-file strong, .canonical-contract-file em { display: block; }
.canonical-contract-file small { color: var(--forest-700); font-size: 9px; font-weight: 800; letter-spacing: .1em; }
.canonical-contract-file strong { margin-top: 5px; font-size: 15px; }
.canonical-contract-file em { margin-top: 4px; color: var(--ink-500); font-size: 11px; font-style: normal; }
.canonical-contract-lock { display: flex; gap: 11px; margin-top: 22px; padding: 14px; border: 1px solid #cfe3d8; border-radius: 10px; color: var(--forest-800); background: var(--forest-50); }
.canonical-contract-lock > svg { width: 17px; height: 17px; flex: 0 0 auto; }
.canonical-contract-lock strong, .canonical-contract-lock small { display: block; }
.canonical-contract-lock strong { font-size: 12.5px; }
.canonical-contract-lock small { margin-top: 5px; color: var(--ink-600); font-size: 11px; line-height: 1.55; }
.canonical-contract-bindings { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; margin-top: 20px; }
.canonical-contract-bindings span { padding: 12px; border: 1px solid var(--line); border-radius: 8px; }
.canonical-contract-bindings small, .canonical-contract-bindings strong { display: block; }
.canonical-contract-bindings small { color: var(--ink-500); font-size: 9.5px; }
.canonical-contract-bindings strong { margin-top: 5px; font-size: 12px; }
.canonical-contract-annex { display: flex; align-items: flex-start; gap: 10px; margin-top: 18px; padding: 13px; border: 1px solid #d7e5de; border-radius: 9px; }
.canonical-contract-annex > span { width: 24px; height: 24px; display: grid; flex: 0 0 auto; place-items: center; border-radius: 50%; color: #fff; background: var(--forest-600); }
.canonical-contract-annex[data-photo-annex-status="disabled"] > span { background: var(--ink-400); }
.canonical-contract-annex svg { width: 12px; height: 12px; }
.canonical-contract-annex strong, .canonical-contract-annex small { display: block; }
.canonical-contract-annex strong { font-size: 12px; }
.canonical-contract-annex small { margin-top: 4px; color: var(--ink-500); font-size: 10.5px; line-height: 1.45; }
.contract-document { display: grid; gap: 18px; }
.contract-paper { position: relative; width: min(100%, 680px); min-height: 962px; margin: 0 auto; padding: 44px 48px 42px; overflow: hidden; color: #1e2924; background: #fff; box-shadow: 0 6px 22px rgba(24, 45, 36, .12); font-family: Arial, "DM Sans", sans-serif; }
.paper-watermark { position: absolute; right: -43px; top: 39%; rotate: -90deg; color: rgba(25, 77, 57, .035); font: 800 64px/1 "Manrope", sans-serif; letter-spacing: .12em; pointer-events: none; }
.paper-header { display: flex; justify-content: space-between; gap: 15px; padding-bottom: 12px; border-bottom: 2px solid #204e3c; color: #315d4c; font-size: 10px; font-weight: 700; letter-spacing: .06em; }
.paper-header span:last-child { color: #6b7a73; text-align: right; }
.paper-title { padding: 28px 0 22px; text-align: center; }
.paper-title small { color: #61736b; font-size: 10px; font-weight: 700; letter-spacing: .1em; }
.paper-title h3 { margin: 10px 0 7px; color: #173f32; font: 800 22px/1.2 "Manrope", sans-serif; letter-spacing: -.02em; }
.paper-title p { margin: 0; color: #748079; font-size: 10.5px; }
.paper-section { margin-top: 18px; }
.paper-section h4 { margin: 0 0 10px; padding-bottom: 7px; border-bottom: 1px solid #cad6d0; color: #244d3d; font-size: 11px; letter-spacing: .05em; }
.paper-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; }
.paper-grid > div { padding: 10px; border: 1px solid #dfe6e2; border-radius: 4px; }
.paper-grid span, .paper-grid strong, .paper-grid small { display: block; }
.paper-grid span { color: #718078; font-size: 9px; text-transform: uppercase; }
.paper-grid strong { margin-top: 6px; font-size: 12px; }
.paper-grid small { margin-top: 5px; color: #6d7973; font-size: 9px; }
.paper-address { display: flex; gap: 9px; padding: 10px; background: #f4f7f5; }
.paper-address svg { width: 13px; height: 13px; flex: 0 0 auto; color: #376b56; }
.paper-address strong, .paper-address small { display: block; }
.paper-address strong { font-size: 12px; }
.paper-address small { margin-top: 4px; color: #65736d; font-size: 10px; }
.paper-facts { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin-top: 8px; }
.paper-facts span { padding: 8px; border: 1px solid #e4e8e5; }
.paper-facts small, .paper-facts strong { display: block; }
.paper-facts small { color: #718078; font-size: 8.5px; }
.paper-facts strong { margin-top: 4px; font-size: 10.5px; }
.paper-terms { display: grid; grid-template-columns: 1fr 1fr; border: 1px solid #dfe5e1; }
.paper-terms div { display: flex; justify-content: space-between; gap: 10px; padding: 11px; border-bottom: 1px solid #e4e8e6; font-size: 10px; }
.paper-terms div:nth-child(odd) { border-right: 1px solid #e4e8e6; }
.paper-terms div:nth-last-child(-n+2) { border-bottom: 0; }
.paper-terms span { color: #67746e; }
.paper-legal-copy { margin: 18px 0 0; color: #3f4b45; font-size: 10.5px; line-height: 1.65; text-align: justify; }
.paper-clauses { min-height: 345px; }
.paper-clauses ol { margin: 0; padding-left: 21px; }
.paper-clauses li { padding: 0 0 14px 5px; color: #3f4d46; font-size: 10.5px; line-height: 1.65; }
.paper-empty-clause { padding: 14px; color: #6e7973; background: #f5f7f6; font-size: 10.5px; }
.paper-signatures { display: grid; grid-template-columns: 1fr 1fr; gap: 28px; margin-top: 40px; }
.paper-signatures div { min-height: 85px; padding: 10px; border-top: 1px solid #8e9c95; text-align: center; }
.paper-signatures span, .paper-signatures strong, .paper-signatures i { display: block; }
.paper-signatures span { color: #56645d; font-size: 9px; font-weight: 800; letter-spacing: .08em; }
.paper-signatures strong { margin-top: 6px; font-size: 11px; }
.paper-signatures i { margin-top: 34px; color: #8b9690; font-size: 9px; font-style: normal; }
.paper-verification { display: flex; align-items: center; gap: 8px; margin-top: 22px; padding: 9px; border: 1px solid #d6e4dd; color: #315b4a; background: #f6faf8; }
.paper-verification svg { width: 14px; height: 14px; }
.paper-verification strong, .paper-verification small { display: block; }
.paper-verification strong { font-size: 10px; }
.paper-verification small { margin-top: 3px; color: #718078; font-size: 8.5px; }
.paper-footer { position: absolute; left: 48px; right: 48px; bottom: 23px; display: flex; justify-content: space-between; padding-top: 8px; border-top: 1px solid #dfe5e1; color: #7a857f; font-size: 9px; }
.contract-paper-appendix .paper-section { min-height: 390px; }
.contract-paper-photo-annex .paper-section { margin-top: 14px; }
.paper-annex-intro { margin: 0 0 12px; color: #67746e; font-size: 9.5px; }
.paper-inventory-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.paper-inventory-item { overflow: hidden; border: 1px solid #dce5e0; border-radius: 5px; background: #fff; }
.paper-inventory-images { height: 170px; display: grid; grid-auto-flow: column; grid-auto-columns: 1fr; gap: 2px; overflow: hidden; background: #eef2f0; }
.paper-inventory-images img { width: 100%; height: 100%; object-fit: cover; }
.paper-inventory-images > span { display: grid; place-items: center; align-content: center; gap: 7px; color: #75827c; text-align: center; }
.paper-inventory-images svg { width: 22px; height: 22px; }
.paper-inventory-images small { font-size: 8.5px; }
.paper-inventory-copy { padding: 8px 9px; }
.paper-inventory-copy strong, .paper-inventory-copy span, .paper-inventory-copy small { display: block; }
.paper-inventory-copy strong { font-size: 10.5px; }
.paper-inventory-copy span { margin-top: 3px; color: #56665e; font-size: 9px; }
.paper-inventory-copy small { margin-top: 4px; color: #78837e; font-size: 8px; line-height: 1.4; }
.paper-inventory-empty { grid-column: 1 / -1; min-height: 390px; display: grid; place-items: center; align-content: center; gap: 9px; color: #738078; border: 1px dashed #becdc5; text-align: center; }
.paper-inventory-empty svg { width: 34px; height: 34px; }
.paper-inventory-empty strong { color: #46564e; font-size: 12px; }
.paper-inventory-empty span { max-width: 330px; font-size: 9.5px; line-height: 1.5; }
.paper-annex-approval { margin: 14px 0 0; color: #46534d; font-size: 8.5px; line-height: 1.45; text-align: justify; }
.paper-annex-signatures { margin-top: 16px; gap: 18px; }
.paper-annex-signatures div { min-height: 68px; }
.paper-annex-signatures i { margin-top: 22px; }
.contract-final-actions { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 12px 15px; border-top: 1px solid var(--line); background: #fff; }
.contract-final-actions > span { display: flex; align-items: center; gap: 8px; }
.contract-final-actions > span > svg { width: 17px; height: 17px; color: var(--forest-600); }
.contract-final-actions strong, .contract-final-actions small { display: block; }
.contract-final-actions strong { font-size: 12.5px; }
.contract-final-actions small { margin-top: 3px; color: var(--ink-500); font-size: 10.5px; }
.contract-final-actions > div { display: flex; gap: 7px; }

.integration-flow { display: grid; grid-template-columns: 1fr auto 1fr auto 1fr; align-items: center; gap: 16px; padding: 18px; }
.integration-step { display: flex; align-items: flex-start; gap: 11px; min-width: 0; }
.integration-step .item-icon { flex: 0 0 auto; }
.integration-step strong { display: block; font-size: 10px; }
.integration-step p { margin: 5px 0 0; color: var(--ink-500); font-size: 8.5px; line-height: 1.5; }
.integration-step b { color: var(--ink-800); font-weight: 700; }
.integration-arrow { color: #aab5ae; }
.integration-arrow svg { width: 17px; height: 17px; }
.mail-integration-badge { display: inline-flex; align-items: center; gap: 6px; padding: 7px 9px; border-radius: 8px; color: var(--forest-700); background: var(--forest-50); font-size: 8.5px; font-weight: 700; white-space: nowrap; }
.mail-integration-badge svg { width: 13px; height: 13px; }
.bank-import-panel { overflow: hidden; border-color: var(--forest-100); }
.bank-import-panel.is-busy { display: flex; align-items: center; gap: 15px; }
.bank-import-panel.is-busy h3 { margin: 0 0 4px; font: 700 13.5px/1.2 "Manrope", sans-serif; }
.bank-import-panel.is-busy p { margin: 0; color: var(--ink-500); font-size: 9.5px; line-height: 1.5; }
.bank-import-panel.is-busy > div > span { display: block; margin-top: 6px; color: var(--ink-600); font-size: 8.5px; font-weight: 700; }
.bank-import-panel .deed-warning-list,
.bank-import-panel .form-note,
.bank-import-panel .modal-actions { margin: 0 19px; }
.bank-import-panel .deed-warning-list { margin-top: 0; }
.bank-import-panel .modal-actions { padding: 15px 0 19px; }
.bank-import-panel.is-error .deed-error { margin-bottom: 14px; }
.bank-import-panel.is-error .deed-error,
.bank-import-panel.is-error .modal-actions { margin-inline: 0; padding-bottom: 0; }
.import-summary { display: flex; flex-wrap: wrap; gap: 9px; padding: 15px 19px; }
.import-summary > div { min-width: 96px; flex: 1 1 96px; padding: 10px 12px; border: 1px solid var(--line-soft); border-radius: var(--radius-sm); background: var(--surface-soft); }
.import-summary span { display: block; color: var(--ink-500); font-size: 8.5px; }
.import-summary strong { display: block; margin-top: 4px; font: 700 16px/1 "Manrope", sans-serif; }
.import-summary .is-duplicate { border-color: var(--amber-100); background: var(--amber-50); }
.import-summary .is-duplicate strong { color: var(--amber-700); }
.bank-import-table { min-width: 1000px; }
.bank-import-table tr.is-duplicate-row td { color: var(--ink-500); background: var(--surface-soft); }
.bank-import-table tr.is-duplicate-row .money { color: var(--ink-500); }
.import-badge { display: inline-flex; align-items: center; gap: 5px; padding: 5px 8px; border-radius: 7px; font-size: 8px; font-weight: 700; white-space: nowrap; }
.import-badge svg { width: 12px; height: 12px; flex: 0 0 auto; }
.import-badge.success { color: var(--forest-700); background: var(--forest-50); }
.import-badge.duplicate { color: var(--amber-700); background: var(--amber-50); }
.import-badge.neutral { color: var(--blue-700); background: var(--blue-50); }
.import-badge.danger { color: var(--red-700); background: var(--red-50); }
.portfolio-import-panel { overflow: hidden; border-color: var(--blue-100); }
.portfolio-import-panel.is-busy { display: flex; align-items: center; gap: 15px; }
.portfolio-import-panel.is-busy h3 { margin: 0 0 4px; font: 700 13.5px/1.2 "Manrope", sans-serif; }
.portfolio-import-panel.is-busy p { margin: 0; color: var(--ink-500); font-size: 9.5px; line-height: 1.5; }
.portfolio-import-panel.is-busy > div > span { display: block; margin-top: 6px; color: var(--ink-600); font-size: 8.5px; font-weight: 700; }
.portfolio-import-panel .deed-warning-list,
.portfolio-import-panel .form-note,
.portfolio-import-panel > .modal-actions { margin-inline: 19px; }
.portfolio-import-panel > .modal-actions { padding: 15px 0 19px; }
.portfolio-import-panel.is-error .deed-error,
.portfolio-import-panel.is-error .modal-actions { margin-inline: 0; padding-bottom: 0; }
.portfolio-import-summary { display: grid; grid-template-columns: repeat(5, minmax(105px, 1fr)); gap: 9px; padding: 15px 19px; }
.portfolio-import-summary > div { padding: 10px 12px; border: 1px solid var(--line-soft); border-radius: var(--radius-sm); background: var(--surface-soft); }
.portfolio-import-summary span { display: block; color: var(--ink-500); font-size: 8.5px; }
.portfolio-import-summary strong { display: block; margin-top: 4px; font: 700 16px/1 "Manrope", sans-serif; }
.portfolio-import-table { min-width: 980px; }
.portfolio-import-table tr.is-duplicate-row td { color: var(--ink-500); background: var(--surface-soft); }
.import-row-messages { display: grid; gap: 3px; margin-top: 6px; max-width: 260px; }
.import-row-messages span { color: var(--red-700); font-size: 8px; line-height: 1.35; white-space: normal; }
.import-row-messages span + span { color: var(--amber-700); }
.row-check { display: inline-flex; align-items: center; cursor: pointer; }
.row-check input { width: 15px; height: 15px; margin: 0; accent-color: var(--forest-700); cursor: pointer; }
.row-check input:disabled { cursor: not-allowed; opacity: .45; }
.bank-account-list { display: grid; gap: 9px; }
.bank-account-row { display: flex; align-items: center; gap: 12px; padding: 11px 13px; border: 1px solid var(--line-soft); border-radius: var(--radius-sm); background: var(--surface-soft); }
.bank-account-row.is-unlinked { border-style: dashed; border-color: var(--line); }
.bank-account-row .item-icon { flex: 0 0 auto; }
.bank-account-row > .cell-copy { min-width: 0; flex: 1 1 auto; }
.bank-account-figures { display: grid; gap: 3px; flex: 0 0 auto; text-align: right; }
.bank-account-figures span { color: var(--ink-500); font-size: 8.5px; }
.bank-account-figures strong { font: 700 14px/1 "Manrope", sans-serif; }
.bank-table { min-width: 1040px; }
.bank-description { display: block; max-width: 190px; color: var(--ink-600); line-height: 1.4; }
.negative-amount { color: var(--red-700); }

@media (max-width: 1050px) {
  .bank-import-panel.is-busy { padding: 24px; }
  .bank-import-panel.is-busy h3 { font-size: 16px; }
  .bank-import-panel.is-busy p { font-size: 12px; }
  .bank-import-panel.is-busy > div > span { font-size: 11px; }
  .bank-import-panel .deed-warning-list,
  .bank-import-panel .form-note,
  .bank-import-panel .modal-actions { margin-inline: 23px; }
  .bank-import-panel .modal-actions { padding: 18px 0 23px; }
  .import-summary { gap: 11px; padding: 18px 23px; }
  .import-summary > div { min-width: 118px; flex-basis: 118px; padding: 13px 15px; }
  .import-summary span { font-size: 11.5px; }
  .import-summary strong { font-size: 19px; }
  .import-badge { padding: 6px 10px; font-size: 10.5px; }
  .import-badge svg { width: 14px; height: 14px; }
  .row-check input { width: 17px; height: 17px; }
  .bank-account-row { gap: 14px; padding: 14px 16px; }
  .bank-account-figures span { font-size: 11px; }
  .bank-account-figures strong { font-size: 17px; }
}

@media (max-width: 680px) {
  .bank-account-row { flex-wrap: wrap; }
  .bank-account-figures { flex-basis: 100%; text-align: left; }
  .bank-account-row .row-action { width: 100%; justify-content: center; }
}

@media (max-width: 680px) {
  .bank-import-panel .modal-actions { flex-direction: column-reverse; align-items: stretch; }
  .bank-import-panel .modal-actions .button { width: 100%; justify-content: center; }
}

/* Readability and visual hierarchy */
/* Veri yuzeyi duz beyaz: gradyanlar yer kazandirmiyor, kontrasti dusuruyordu. */
.main-area { background: var(--surface); }

button:focus-visible,
a:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
[role="button"]:focus-visible {
  outline: 3px solid rgba(48, 131, 97, .2);
  outline-offset: 2px;
}

.sidebar { padding: 25px 18px 18px; }
.brand-row { padding-bottom: 25px; }
.brand strong, .auth-brand strong { font-size: 20px; }
.brand small, .auth-brand small { margin-top: 6px; font-size: 10px; }
.nav-group + .nav-group { margin-top: 21px; }
.nav-label { padding: 0 12px 9px; font-size: 10.5px; line-height: 1.2; }
.nav-list { gap: 5px; }
.nav-link { min-height: 46px; gap: 12px; padding: 0 13px; border-radius: 11px; font-size: 14px; }
.nav-link svg { width: 19px; height: 19px; }
.nav-badge { min-width: 23px; height: 21px; font-size: 10.5px; }
.sidebar-user { grid-template-columns: 38px 1fr 34px; gap: 10px; padding-top: 14px; }
.sidebar-user .user-avatar { width: 38px; height: 38px; }
.user-meta strong { font-size: 13px; }
.user-meta small { margin-top: 3px; font-size: 11px; }

.topbar { padding: 8px 22px; border-bottom-color: rgba(214, 221, 215, .72); box-shadow: 0 4px 20px rgba(22, 34, 28, .025); }
/* Sayfa adi menude zaten isaretli; ustteki kucuk etiket yer israfiydi. */
.topbar .eyebrow { display: none; }
.eyebrow { margin-bottom: 6px; font-size: 10.5px; line-height: 1.2; }
.topbar h1 { font-size: 19px; }
.global-search { width: min(330px, 27vw); height: 38px; padding-inline: 15px 11px; border-radius: 13px; background: rgba(255, 255, 255, .88); box-shadow: 0 3px 14px rgba(22, 34, 28, .035); }
.global-search:focus-within { width: min(380px, 30vw); }
.global-search input { font-size: 13px; }
kbd { font-size: 10.5px; }
.icon-button { width: 36px; height: 36px; border-radius: 10px; }
.notification-button i { min-width: 19px; height: 19px; font-size: 10px; }
.button { min-height: 36px; padding-inline: 14px; border-radius: 9px; font-size: 13px; }
.button-small { min-height: 30px; padding-inline: 10px; font-size: 11.5px; }
.button-primary { box-shadow: 0 7px 18px rgba(23, 63, 50, .18); }

.page-container { max-width: 1600px; padding: 12px var(--page-px) 28px; }
.page-stack { gap: 12px; }
.section-head { gap: 22px; }
.section-head h2, .section-head h3 { margin-bottom: 6px; font-size: 19px; line-height: 1.3; }
.section-head p { font-size: 13px; line-height: 1.55; }
.section-actions { gap: 10px; }
.link-button { gap: 7px; font-size: 12.5px; }
.link-button svg { width: 16px; height: 16px; }

.card { border-color: rgba(216, 224, 217, .88); box-shadow: var(--shadow-sm); }
.card-pad { padding: 24px; }
.card-header { gap: 18px; padding: 21px 23px 18px; }
.card-header h3 { margin-bottom: 5px; font-size: 16px; line-height: 1.3; }
.card-header p { font-size: 12.5px; line-height: 1.5; }
.card-body { padding: 21px 23px; }
.card:hover { border-color: rgba(191, 207, 198, .9); }

.hero-strip { min-height: 0; gap: 24px; padding: 16px 20px; }
.hero-copy h2 { margin-bottom: 12px; font-size: clamp(24px, 2vw, 32px); }
.hero-copy p { font-size: 13.5px; line-height: 1.7; }
.hero-meta { gap: 11px; }
.hero-meta-item { min-height: 94px; padding: 16px; border-radius: 14px; }
.hero-meta-item span { font-size: 11.5px; }
.hero-meta-item strong { margin: 8px 0 6px; font-size: 20px; }
.hero-meta-item small { font-size: 11px; }

.kpi-grid { gap: 16px; }
.kpi-card { min-height: 142px; padding: 21px; }
.kpi-label { font-size: 13px; }
.kpi-icon { width: 38px; height: 38px; border-radius: 11px; }
.kpi-icon svg { width: 18px; height: 18px; }
.kpi-value { margin: 18px 0 9px; font-size: clamp(23px, 2vw, 29px); }
.kpi-foot { gap: 6px; font-size: 11.5px; line-height: 1.4; }

.range-switch button { padding: 7px 10px; font-size: 11.5px; }
.bar-group label, .finance-bar-group label, .axis-labels { font-size: 11px; }
.chart-x-axis label { font-size: 10.5px; }
.chart-y-axis { font-size: 10px; }
.chart-legend { font-size: 11.5px; }
.donut-center span { font-size: 11.5px; }
.status-legend-row { font-size: 12.5px; }
.alert-item, .activity-item { grid-template-columns: 40px 1fr auto; gap: 13px; padding: 15px 0; }
.item-icon { width: 40px; height: 40px; border-radius: 11px; }
.item-copy strong { margin-bottom: 4px; font-size: 13.5px; }
.item-copy span { font-size: 12px; line-height: 1.5; }
.item-date { font-size: 11px; }

.toolbar { gap: 14px; padding: 16px; }
.toolbar-left, .toolbar-right, .filter-chips { gap: 9px; }
.filter-chip, .select-compact { min-height: 38px; font-size: 12px; }
.map-toggle { width: 38px; min-height: 38px; }
.map-toggle svg { width: 17px; height: 17px; }
.filter-chip { padding-inline: 13px; }
.result-count { font-size: 12px; }

.property-layout { grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); }
.property-list-pane { max-height: 720px; padding: 16px; }
.property-list { gap: 11px; }
.property-card { grid-template-columns: 88px minmax(0, 1fr) auto; gap: 16px; padding: 14px; border-radius: 14px; }
.property-thumb { min-height: 100px; border-radius: 11px; }
.property-code { margin-bottom: 7px; font-size: 10.5px; }
.property-main h3 { margin-bottom: 6px; font-size: 15px; }
.property-address { margin-bottom: 13px; font-size: 12px; }
.property-meta { gap: 11px; font-size: 11.5px; }
.property-finance strong { font-size: 15px; }
.property-finance small { font-size: 11px; }
.map-legend { font-size: 10.5px; }
.provider-popup strong { font-size: 13px; }
.provider-popup span { font-size: 11.5px; }
.provider-popup b, .provider-popup button { font-size: 12px; }

/* Bu uc kural taban katmandaki tokenlara tasindi, burada tekrar edilmiyor. */
.data-table tbody tr:hover { background: var(--forest-50); }
.finance-definition-strip { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; padding: 12px 22px; border-top: 1px solid var(--line-soft); border-bottom: 1px solid var(--line-soft); background: var(--surface-soft); }
.finance-definition-strip span { padding: 7px 10px; border-radius: 8px; color: var(--ink-600); background: #fff; font-size: 11px; line-height: 1.4; }
.finance-definition-strip b { color: var(--ink-900); }
.finance-owner-table { min-width: 920px; }
.finance-owner-table th:first-child { width: 20%; }
.finance-owner-table th:nth-child(2) { width: 23%; }
.finance-ledger-table { min-width: 820px; }
.finance-ledger-table th:nth-child(2) { width: 42%; }
.finance-ledger-table th:nth-child(3) { width: 26%; }
.finance-clickable-row { cursor: pointer; }
.finance-clickable-row:focus-visible { outline: 3px solid rgba(48,131,97,.22); outline-offset: -3px; }
.finance-amount-summary { min-width: 110px; }
.finance-amount-summary strong, .finance-amount-summary span { display: block; }
.finance-amount-summary strong { color: var(--ink-950); font-size: 13px; white-space: nowrap; }
.finance-amount-summary span { margin-top: 4px; color: var(--ink-500); font-size: 10.5px; line-height: 1.35; }
.finance-amount-summary.net strong { color: var(--forest-800); }
.finance-amount-summary.expense strong { color: var(--amber-700); }
.finance-amount-summary .warning-text, .warning-text { color: var(--amber-700); }
.finance-metric-pair { display: grid; grid-template-columns: repeat(2, minmax(100px, 1fr)); gap: 8px; min-width: 218px; }
.finance-metric-pair > span { min-width: 0; padding: 8px 10px; border-radius: 9px; background: var(--surface-soft); }
.finance-metric-pair em, .finance-metric-pair strong { display: block; font-style: normal; }
.finance-metric-pair em { color: var(--ink-500); font-size: 9.5px; line-height: 1.25; }
.finance-metric-pair strong { margin-top: 4px; color: var(--ink-950); font-size: 12.5px; white-space: nowrap; }
.finance-metric-pair.compact { min-width: 245px; }

/* Belgeler — mülk dosyalarını klasörler ve dosya kartlarıyla yöneten çalışma alanı. */
.document-page { min-height: 0; }
.document-library { min-height: 620px; display: grid; grid-template-columns: 220px minmax(0, 1fr); overflow: hidden; border-radius: 6px; box-shadow: none; }
.document-folder-pane { min-width: 0; display: grid; grid-template-rows: auto minmax(0, 1fr); border-right: 1px solid #dfe4e1; background: #f4f6f4; }
.document-folder-heading { min-height: 59px; display: flex; align-items: center; gap: 9px; padding: 10px 12px; border-bottom: 1px solid #dfe4e1; }
.document-folder-heading > span { width: 31px; height: 31px; display: grid; flex: 0 0 auto; place-items: center; color: var(--forest-700); background: #e4eee8; }
.document-folder-heading svg { width: 16px; height: 16px; }
.document-folder-heading strong,
.document-folder-heading small { display: block; }
.document-folder-heading strong { color: var(--ink-950); font-size: 12px; }
.document-folder-heading small { margin-top: 2px; color: var(--ink-500); font-size: 9px; }
.document-folder-list { min-height: 0; display: grid; align-content: start; gap: 2px; overflow-y: auto; padding: 7px; scrollbar-width: thin; }
.document-folder-button { width: 100%; min-width: 0; min-height: 43px; display: grid; grid-template-columns: 27px minmax(0, 1fr) auto; align-items: center; gap: 7px; padding: 5px 7px; border: 1px solid transparent; border-radius: 4px; color: var(--ink-700); background: transparent; font: inherit; cursor: pointer; text-align: left; }
.document-folder-button:hover { border-color: #d7e1dc; background: #fff; }
.document-folder-button.active { border-color: #bad0c5; color: var(--forest-900); background: #fff; box-shadow: 0 1px 3px rgba(30,70,52,.06); }
.document-folder-button > span:nth-child(2) { min-width: 0; }
.document-folder-button strong,
.document-folder-button small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.document-folder-button strong { font-size: 10.5px; font-weight: 700; }
.document-folder-button small { margin-top: 1px; color: var(--ink-500); font-size: 8.5px; }
.document-folder-button b { min-width: 21px; padding: 2px 5px; border-radius: 9px; color: var(--ink-500); background: #e6ebe8; font-size: 8.5px; text-align: center; }
.document-folder-button.active b { color: #fff; background: var(--forest-700); }
.document-folder-icon { width: 27px; height: 27px; display: grid; place-items: center; color: #64756d; }
.document-folder-icon svg { width: 15px; height: 15px; }
.document-folder-button.active .document-folder-icon { color: var(--forest-700); }
.document-browser { min-width: 0; display: grid; grid-template-rows: auto auto minmax(0, 1fr) auto; align-content: start; background: #fff; }
.document-browser-head { min-height: 59px; display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 8px 13px; border-bottom: 1px solid #dfe4e1; }
.document-browser-head > div { min-width: 0; }
.document-breadcrumb { display: block; color: var(--forest-700); font-size: 8px; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; }
.document-browser-head h3 { overflow: hidden; margin: 3px 0 0; color: var(--ink-950); font-size: 13px; text-overflow: ellipsis; white-space: nowrap; }
.document-browser-head p { overflow: hidden; margin: 2px 0 0; color: var(--ink-500); font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.document-property-picker { min-width: 235px; display: grid; gap: 3px; color: var(--ink-500); font-size: 8px; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; }
.document-property-picker select { width: 100%; height: 31px; padding: 0 29px 0 9px; border: 1px solid var(--line); border-radius: 4px; color: var(--ink-900); background-color: #fff; font-size: 10px; font-weight: 600; letter-spacing: 0; text-transform: none; }
.document-browser-summary { min-height: 32px; display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 5px 13px; border-bottom: 1px solid var(--line-soft); color: var(--ink-600); background: #fafbf9; font-size: 9.5px; }
.document-browser-summary strong { color: var(--ink-950); font-size: 11px; }
.document-browser-summary small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.document-table-scroll { min-height: 0; overflow: auto; scrollbar-width: thin; }
.document-table { width: 100%; min-width: 820px; table-layout: fixed; }
.document-table th,
.document-table td { padding: 5px 7px; line-height: 1.18; }
.document-table th { position: sticky; z-index: 2; top: 0; padding-block: 7px; border-right: 1px solid #6f8b82; border-bottom-color: #31574c; color: #fff; background: #416b5f; font-size: 9.5px; }
.document-table td { height: 37px; overflow: hidden; border-right: 1px solid #d7dcd8; border-bottom: 1px solid #d7dcd8; color: var(--ink-950); font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.document-table th:last-child,
.document-table td:last-child { border-right: 0; }
.document-table tbody tr:nth-child(even) { background: #f3f5f3; }
.document-table tbody tr:hover { background: #e7f1ec; }
.document-table tbody tr.archived { opacity: .72; }
.document-table th:nth-child(1) { width: 27%; }
.document-table th:nth-child(2) { width: 14%; }
.document-table th:nth-child(3) { width: 22%; }
.document-table th:nth-child(4) { width: 12%; }
.document-table th:nth-child(5) { width: 16%; }
.document-table th:nth-child(6) { width: 9%; }
.document-row-open { width: 100%; min-width: 0; display: grid; grid-template-columns: 27px minmax(0, 1fr); align-items: center; gap: 7px; padding: 0; border: 0; color: inherit; background: transparent; font: inherit; cursor: pointer; text-align: left; }
.document-row-open:hover strong,
.document-row-open:focus-visible strong { color: var(--forest-800); text-decoration: underline; text-underline-offset: 2px; }
.document-row-open:focus-visible { outline: 2px solid rgba(48,131,97,.28); outline-offset: 1px; }
.document-row-open strong { overflow: hidden; color: var(--ink-950); font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.document-row-visual { width: 27px; height: 27px; display: grid; place-items: center; overflow: hidden; color: var(--forest-700); background: #edf4f0; }
.document-row-visual.insurance { color: #366180; background: #edf3f7; }
.document-row-visual.contract,
.document-row-visual.tenant { color: #6c5b31; background: #f7f1e4; }
.document-row-visual.deposit { color: #7a6035; background: #f7f0e2; }
.document-row-visual svg { width: 13px; height: 13px; }
.document-row-visual img { width: 100%; height: 100%; object-fit: cover; }
.document-row-type { color: var(--ink-700); font-weight: 600; }
.document-row-related { min-width: 0; display: block; }
.document-row-related strong,
.document-row-related small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.document-row-related strong { color: var(--ink-950); font-size: 10.5px; }
.document-row-related small { margin-top: 1px; color: var(--ink-500); font-size: 8.5px; }
.document-row-date { color: var(--ink-700); font-size: 10.5px; font-variant-numeric: tabular-nums; }
.document-file-status { min-width: 0; overflow: hidden; color: var(--forest-700); font-weight: 700; text-overflow: ellipsis; white-space: nowrap; }
.document-file-status.warning { color: var(--amber-700); }
.document-file-status.danger { color: var(--red-700); }
.document-file-status.neutral { color: var(--ink-500); }
.document-row-actions { display: flex; align-items: center; gap: 3px; }
.document-row-actions button { min-width: 27px; height: 27px; display: inline-flex; align-items: center; justify-content: center; padding: 0 6px; border: 1px solid transparent; border-radius: 3px; color: var(--ink-700); background: transparent; font: inherit; font-size: 9px; font-weight: 650; cursor: pointer; white-space: nowrap; }
.document-row-actions button:hover { border-color: #bad0c5; color: var(--forest-800); background: #fff; }
.document-row-actions svg { width: 12px; height: 12px; }
.document-browser-empty { min-height: 300px; display: grid; place-items: center; padding: 18px; }
.document-browser > .pagination { border-top: 1px solid var(--line-soft); }

@media (max-width: 1120px) {
  .document-library { grid-template-columns: 190px minmax(0, 1fr); }
}

@media (max-width: 760px) {
  .document-library { min-height: 0; grid-template-columns: 1fr; overflow: visible; }
  .document-folder-pane { border-right: 0; border-bottom: 1px solid #dfe4e1; }
  .document-folder-list { display: flex; overflow-x: auto; }
  .document-folder-button { min-width: 165px; }
  .document-browser-head { align-items: stretch; flex-direction: column; }
  .document-property-picker { width: 100%; min-width: 0; }
  .document-table-scroll { overflow-x: auto; }
}
.finance-record-copy { min-width: 290px; }
.cell-main { gap: 11px; min-width: 185px; }
.cell-avatar { width: 38px; height: 38px; border-radius: 11px; font-size: 11px; }
.cell-copy strong { font-size: 13px; }
.cell-copy span { margin-top: 4px; font-size: 11px; }
.status-pill { min-height: 27px; padding-inline: 10px; font-size: 10.5px; }
.status-pill::before { width: 6px; height: 6px; }
.confidence { gap: 9px; }
.confidence-track { width: 62px; height: 5px; }
.row-actions { gap: 6px; }
.row-action { min-height: 34px; gap: 6px; padding-inline: 10px; border-radius: 8px; font-size: 11px; }
.row-action.icon-only { width: 34px; }
.row-action svg { width: 14px; height: 14px; }

.summary-tile { gap: 15px; padding: 19px 22px; }
.summary-tile .item-icon { width: 46px; height: 46px; border-radius: 14px; }
.summary-tile .item-icon svg { width: 20px; height: 20px; }
.summary-tile small { margin-top: 6px; font-size: 11px; }

.summary-tile span, .account-balance span { font-size: 12px; }
.summary-tile strong, .account-balance strong { font-size: 20px; }
.bank-account strong { font-size: 14px; }
.bank-account span { font-size: 12px; }
.coverage-ring small { font-size: 11px; }
.coverage-copy h3 { font-size: 17px; }
.coverage-copy p { font-size: 12.5px; line-height: 1.65; }
.coverage-facts strong { font-size: 14px; }
.coverage-facts span { font-size: 10.5px; }
.deposit-progress-head { font-size: 11px; }
.net-amount span { font-size: 12px; }
.net-amount small { font-size: 11px; }
.metric-row { padding-block: 13px; font-size: 12.5px; }
.metric-row strong { font-size: 13px; }

.proposal-card { padding: 22px; }
.proposal-head h3 { font-size: 15px; }
.proposal-head p { font-size: 12px; }
.proposal-values { margin-block: 21px; padding: 17px; }
.proposal-values div span { font-size: 10.5px; }
.proposal-values div strong { font-size: 18px; }
.proposal-facts { gap: 16px; font-size: 11.5px; }
.permission-item { grid-template-columns: 40px 1fr auto; gap: 12px; padding: 13px; }
.permission-item > div > strong { font-size: 13px; }
.permission-item > div > span { font-size: 11px; }
.owner-property-rent-card { gap: 13px; padding: 15px; }
.owner-property-rent-head > div > span { font-size: 10px; }
.owner-property-rent-head > div > strong { font-size: 15px; }
.owner-property-rent-grid { gap: 9px; }
.owner-property-rent-grid > div { padding: 11px 12px; }
.owner-property-rent-grid span { font-size: 10px; }
.owner-property-rent-grid strong { font-size: 12.5px; }
.role-pill { font-size: 10.5px; }
.empty-state h3 { font-size: 16px; }
.empty-state p { font-size: 12.5px; line-height: 1.6; }

.drawer { width: min(520px, 100vw); }
.drawer-header, .modal-header { min-height: 84px; padding: 20px 24px; }
.drawer-header h2, .modal-header h2 { font-size: 21px; }
.drawer-body, .modal-body { padding: 24px; }
.detail-hero { padding: 21px; }
.detail-hero h3 { font-size: 23px; }
.detail-hero p { font-size: 12px; line-height: 1.5; }
.tenant-spotlight { gap: 13px; margin-top: 17px; }
.tenant-spotlight-card { padding: 18px 19px; }
.tenant-spotlight-label { font-size: 10.5px; }
.tenant-spotlight-value { font-size: 22px; }
.tenant-spotlight-note { font-size: 12px; }
.tenant-spotlight-action { font-size: 12px; }
.tenant-spotlight-action svg { width: 15px; height: 15px; }
.detail-section { padding-block: 23px; }
.detail-section h4 { font-size: 14px; }
.detail-field { padding: 13px; }
.detail-field span { font-size: 10.5px; }
.detail-field strong { font-size: 12.5px; line-height: 1.45; }
.timeline-copy strong { font-size: 13px; }
.timeline-copy span { font-size: 11.5px; line-height: 1.5; }
.detail-section p.muted { font-size: 13px !important; line-height: 1.65 !important; }

.form-stack { gap: 22px; }
.form-section { gap: 15px; }
.form-section-title { padding-bottom: 11px; font-size: 13.5px; }
.form-section-title span { width: 25px; height: 25px; font-size: 10.5px; }
.form-grid { gap: 14px; }
.field { gap: 8px; }
.field label { font-size: 12px; }
.field input, .field select, .field textarea { min-height: 46px; padding-inline: 13px; border-radius: 10px; font-size: 13px; }
.checkbox-field { min-height: 46px; font-size: 12px; }
.form-section-hint { font-size: 12px; }
.policy-upload-copy strong { font-size: 13px; }
.policy-upload-copy span { font-size: 11.5px; }
.policy-upload-result { font-size: 11.5px; }
.policy-upload-result strong { font-size: 12.5px; }
.policy-upload-warnings li { font-size: 11px; }
.owner-row { grid-template-columns: minmax(0, 1fr) 124px 38px; }
.owner-row-remove { width: 38px; height: 46px; }
.owner-row-remove svg { width: 15px; height: 15px; }
.owner-share-total { font-size: 11.5px; }
.field-note { font-size: 11px; }
.table-empty { font-size: 12px; }
.table-footnote { padding: 13px 23px; font-size: 12px; }
.form-note { gap: 11px; padding: 14px; font-size: 12px; line-height: 1.55; }
.correction-history { gap: 9px; max-height: 220px; }
.correction-history li { padding: 11px 13px; font-size: 12px; line-height: 1.55; }
.correction-history li strong { font-size: 11px; }
.charge-impact-panel { gap: 7px; padding: 15px 17px; }
.charge-impact-panel strong { font-size: 13px; }
.charge-impact-panel span { font-size: 12px; }
.signature-upload small { font-size: 11px; }
.quick-add-card { padding: 17px; }
.quick-add-card strong { font-size: 13.5px; }
.quick-add-card > span > span { font-size: 11.5px; }
.toast { grid-template-columns: 38px 1fr; padding: 14px 16px; }
.toast-icon { width: 38px; height: 38px; }
.toast strong { font-size: 13px; }
.toast strong + span { font-size: 11.5px; }
.toast-icon svg { width: 18px; height: 18px; }

.auth-copy > p:last-child { font-size: 14px; }
.auth-loading { font-size: 13px; }
.google-signin { min-height: 54px; font-size: 14px; }
.auth-error { font-size: 12px; }
.auth-legal { font-size: 10.5px; }
.auth-footer { font-size: 11px; }
.page-back { font-size: 12.5px; }
.record-code { font-size: 11px; }
.property-page-title h2 { font-size: 27px; }
.property-page-title p { font-size: 13px; }
.empty-inline strong { font-size: 13px; }
.empty-inline p { font-size: 11.5px; }
.integration-step strong { font-size: 13px; }
.integration-step p { font-size: 11.5px; line-height: 1.6; }
.mail-integration-badge { font-size: 11px; }

/* Yeni mülk oluşturma akışı */
.property-create-page { max-width: 1280px; margin: 0 auto; }
.property-create-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 36px;
  padding: 28px 30px;
  border: 1px solid rgba(204, 217, 207, .9);
  border-radius: 18px;
  background: linear-gradient(130deg, #fff 0%, #f5faf6 62%, #edf5f0 100%);
  box-shadow: var(--shadow-sm);
}
.property-create-head > div { max-width: 590px; }
.create-kicker { display: block; margin-bottom: 9px; color: var(--forest-700); font: 700 11.5px/1.2 "Manrope", sans-serif; letter-spacing: .13em; }
.property-create-head h2 { margin-bottom: 8px; font: 700 25px/1.25 "Manrope", sans-serif; letter-spacing: -.035em; }
.property-create-head p { margin: 0; color: var(--ink-500); font-size: 13px; line-height: 1.6; }
.create-progress { min-width: 410px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; margin: 0; padding: 0; list-style: none; }
.create-progress li { position: relative; display: grid; justify-items: center; gap: 8px; color: #929c96; font-size: 12px; text-align: center; }
.create-progress li::before { content: ""; position: absolute; z-index: 0; top: 16px; right: 50%; width: 100%; height: 2px; background: #dfe7e1; }
.create-progress li:first-child::before { display: none; }
.create-progress li > span { position: relative; z-index: 1; width: 33px; height: 33px; display: grid; place-items: center; border: 2px solid #d9e2db; border-radius: 50%; background: #fff; font-size: 11px; font-weight: 700; }
.create-progress li > span svg { width: 14px; height: 14px; }
.create-progress li strong { font-weight: 600; }
.create-progress li.active, .create-progress li.complete { color: var(--forest-800); }
.create-progress li.active > span { color: #fff; border-color: var(--forest-700); background: var(--forest-700); box-shadow: 0 0 0 5px rgba(39, 107, 80, .09); }
.create-progress li.complete > span { color: var(--forest-700); border-color: #a9c9b7; background: var(--forest-50); }
.create-progress li.complete::before, .create-progress li.active::before { background: #a9c9b7; }

.deed-upload-panel { padding: 28px; }
.deed-upload-copy { display: flex; align-items: center; gap: 13px; margin-bottom: 22px; }
.deed-upload-copy h3 { margin: 0 0 5px; font: 700 17px/1.25 "Manrope", sans-serif; }
.deed-upload-copy p { margin: 0; color: var(--ink-500); font-size: 12px; }
.deed-dropzone { min-height: 330px; display: flex; align-items: center; flex-direction: column; justify-content: center; gap: 13px; padding: 35px; border: 1.5px dashed #aec4b6; border-radius: 17px; background: linear-gradient(145deg, #fbfdfb, #f4f8f5); text-align: center; transition: .2s ease; }
.deed-dropzone.is-dragging { border-color: var(--forest-600); background: var(--forest-50); box-shadow: inset 0 0 0 3px rgba(48,131,97,.07); }
.deed-upload-icon { width: 66px; height: 66px; display: grid; place-items: center; border-radius: 19px; color: var(--forest-700); background: #fff; box-shadow: 0 10px 28px rgba(22,63,47,.09); }
.deed-upload-icon svg { width: 29px; height: 29px; }
.deed-dropzone h4 { margin: 0 0 4px; font: 700 16px/1.3 "Manrope", sans-serif; }
.deed-dropzone p { margin: 0; color: var(--ink-500); font-size: 12px; }
.deed-dropzone > small { color: #8b9690; font-size: 10.5px; }
.deed-dropzone .button { margin-top: 4px; }
.deed-dropzone.is-processing { min-height: 390px; display: grid; grid-template-columns: 210px minmax(220px, 330px); gap: 34px; text-align: left; }
.deed-dropzone.is-processing .auth-spinner { width: 22px; height: 22px; display: block; margin-bottom: 16px; }
.deed-scan-visual { position: relative; width: 210px; height: 275px; display: grid; place-items: center; overflow: hidden; border: 1px solid #ccd8d0; border-radius: 12px; color: var(--forest-700); background: #fff; box-shadow: 0 18px 38px rgba(22,63,47,.13); }
.deed-scan-visual img { width: 100%; height: 100%; object-fit: contain; }
.deed-scan-visual > svg { width: 52px; height: 52px; }
.deed-scan-visual i { position: absolute; left: 8px; right: 8px; top: 10%; height: 2px; border-radius: 2px; background: #45a97c; box-shadow: 0 0 16px 5px rgba(69,169,124,.27); animation: deed-scan 2.1s ease-in-out infinite; }
@keyframes deed-scan { 0%,100% { top: 10%; } 50% { top: 88%; } }
.deed-file-row { display: grid; grid-template-columns: 40px 1fr auto auto; align-items: center; gap: 11px; margin-top: 14px; padding: 12px 13px; border: 1px solid var(--line-soft); border-radius: 11px; background: var(--surface-soft); }
.deed-file-row strong, .deed-file-row span { display: block; }
.deed-file-row strong { font-size: 12.5px; }
.deed-file-row div > span { margin-top: 3px; color: var(--ink-500); font-size: 10.5px; }
.deed-privacy-note { display: flex; align-items: flex-start; gap: 10px; margin-top: 17px; padding: 13px 15px; border-radius: 10px; color: var(--blue-700); background: var(--blue-50); font-size: 11px; line-height: 1.55; }
.deed-privacy-note svg { width: 16px; height: 16px; flex: 0 0 auto; }
.deed-error { display: grid; grid-template-columns: 22px 1fr auto; align-items: center; gap: 12px; margin-top: 14px; padding: 13px 15px; border: 1px solid var(--red-100); border-radius: 11px; color: var(--red-700); background: var(--red-50); font-size: 11px; }
.deed-error > svg { width: 19px; height: 19px; }
.deed-error strong { display: block; margin-bottom: 3px; }
.manual-entry-option { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-top: 16px; padding: 16px 18px; border: 1px solid var(--line-soft); border-radius: 12px; background: var(--surface-soft); }
.manual-entry-option strong, .manual-entry-option span { display: block; }
.manual-entry-option strong { margin-bottom: 4px; font-size: 12.5px; }
.manual-entry-option span { color: var(--ink-500); font-size: 11px; line-height: 1.5; }
.manual-entry-option .button { flex: 0 0 auto; }

.deed-review-layout { display: grid; grid-template-columns: minmax(0, 1fr) 270px; gap: 20px; align-items: start; }
.deed-review-main { padding: 25px; }
.deed-review-head { display: grid; grid-template-columns: 43px 1fr auto; align-items: center; gap: 13px; padding-bottom: 20px; border-bottom: 1px solid var(--line-soft); }
.deed-review-head h3 { margin: 0 0 4px; font: 700 17px/1.25 "Manrope", sans-serif; }
.deed-review-head p { margin: 0; color: var(--ink-500); font-size: 11.5px; }
.deed-warning-list { display: grid; gap: 7px; margin-top: 16px; }
.deed-warning-list span { display: flex; align-items: flex-start; gap: 8px; padding: 10px 12px; border-radius: 9px; color: var(--amber-700); background: var(--amber-50); font-size: 10.5px; line-height: 1.45; }
.deed-warning-list svg { width: 15px; height: 15px; flex: 0 0 auto; }
.deed-review-section { padding-top: 22px; }
.deed-review-section + .deed-review-section { margin-top: 22px; border-top: 1px solid var(--line-soft); }
.deed-review-section > h4 { margin-bottom: 15px; font: 700 13.5px/1.3 "Manrope", sans-serif; }
.deed-review-hint { margin: -9px 0 14px; color: var(--ink-500); font-size: 11.5px; line-height: 1.55; }
.manual-address-section { margin-top: 20px; padding: 20px; border: 1px solid #cfe0d4; border-radius: 14px; background: linear-gradient(145deg, #fbfdfb, #f3f8f5); }
.address-section-heading, .address-section-heading > div { display: flex; align-items: center; gap: 12px; }
.address-section-heading { justify-content: space-between; margin-bottom: 18px; }
.address-section-heading h4 { margin: 0 0 3px; font: 700 14px/1.3 "Manrope", sans-serif; }
.address-section-heading p { margin: 0; color: var(--ink-500); font-size: 11px; }
.address-section-heading .choice-panel-icon { width: 40px; height: 40px; }
.address-source-badge { padding: 6px 9px; border: 1px solid #bad3c3; border-radius: 7px; color: var(--forest-700); background: #fff; font-size: 9px; font-weight: 800; letter-spacing: .08em; white-space: nowrap; }
.address-cascade-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.address-cascade-field select:disabled { color: #929c96; background: #f1f4f2; cursor: not-allowed; }
.address-lookup-status { display: flex; align-items: center; gap: 9px; margin-top: 13px; padding: 10px 12px; border-radius: 9px; color: var(--ink-600); background: #fff; font-size: 10.5px; line-height: 1.45; }
.address-lookup-status .auth-spinner { width: 16px; height: 16px; flex: 0 0 auto; }
.address-lookup-status svg { width: 16px; height: 16px; flex: 0 0 auto; }
.address-lookup-status.warning { color: var(--red-700); background: var(--red-50); }
.address-lookup-status.info { color: var(--blue-700); background: var(--blue-50); }
.address-selection-preview { display: flex; align-items: flex-start; gap: 10px; margin-top: 14px; padding: 13px 14px; border: 1px solid #d8e5dc; border-radius: 10px; background: #fff; }
.address-selection-preview > svg { width: 17px; height: 17px; margin-top: 2px; flex: 0 0 auto; color: var(--forest-700); }
.address-selection-preview span, .address-selection-preview small, .address-selection-preview strong { display: block; }
.address-selection-preview small { margin-bottom: 3px; color: var(--ink-500); font-size: 9.5px; }
.address-selection-preview strong { font-size: 11.5px; line-height: 1.45; }
.confirmed-address-card .create-form-title { grid-template-columns: 42px 1fr auto; }
.confirmed-address-value { padding: 15px 17px; border: 1px solid #d7e4da; border-radius: 11px; background: var(--forest-50); }
.confirmed-address-value strong, .confirmed-address-value span { display: block; }
.confirmed-address-value strong { color: var(--forest-900); font-size: 13px; line-height: 1.55; }
.confirmed-address-value span { margin-top: 5px; color: var(--forest-700); font-size: 10px; }
.deed-review-field label { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.confidence-tag { padding: 3px 6px; border-radius: 5px; font-size: 8px; font-style: normal; font-weight: 700; white-space: nowrap; }
.confidence-tag.high { color: var(--forest-700); background: var(--forest-50); }
.confidence-tag.medium { color: var(--amber-700); background: var(--amber-50); }
.confidence-tag.low { color: var(--red-700); background: var(--red-50); }
.deed-review-aside { position: sticky; top: calc(var(--topbar-height) + 20px); padding: 23px; text-align: center; }
.deed-review-aside .create-summary-icon { margin-bottom: 18px; }
.deed-review-aside h3 { overflow: hidden; margin-bottom: 7px; font: 700 14px/1.35 "Manrope", sans-serif; text-overflow: ellipsis; white-space: nowrap; }
.deed-review-aside > p { margin-bottom: 18px; color: var(--ink-500); font-size: 10.5px; line-height: 1.5; }
.confidence-legend { display: grid; gap: 9px; margin: 18px 0; padding: 14px; border-radius: 10px; background: var(--surface-soft); text-align: left; }
.confidence-legend span { display: flex; align-items: center; gap: 8px; color: var(--ink-600); font-size: 10.5px; }
.confidence-legend i { width: 8px; height: 8px; border-radius: 50%; }
.confidence-legend i.high { background: var(--forest-600); }
.confidence-legend i.medium { background: var(--amber-500); }
.confidence-legend i.low { background: var(--red-700); }

.list-pagination { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 14px 18px; border-top: 1px solid var(--line-soft); color: var(--ink-500); font-size: 12px; }
.list-pagination > div { display: flex; align-items: center; gap: 10px; }
.list-pagination .button svg:first-child { rotate: 180deg; }
.tenant-mobile-list { display: none; }
.bank-freshness-strip { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 16px 20px; }
.bank-freshness-strip > div { display: flex; align-items: center; gap: 12px; }
.bank-freshness-strip strong, .bank-freshness-strip span { display: block; }
.bank-freshness-strip span { margin-top: 3px; color: var(--ink-500); font-size: 12px; }
.compact-date-filter { display: flex; align-items: center; gap: 8px; color: var(--ink-500); font-size: 12px; }
.compact-date-filter input { min-height: 36px; padding: 0 9px; border: 1px solid var(--line); border-radius: 9px; color: var(--ink-800); background: #fff; }
.notification-groups { display: grid; gap: 12px; }
.notification-group { overflow: hidden; border: 1px solid var(--line); border-radius: 13px; background: #fff; }
.notification-group > summary { display: grid; grid-template-columns: 38px 1fr auto; align-items: center; gap: 10px; padding: 13px; cursor: pointer; list-style: none; }
.notification-group > summary::-webkit-details-marker { display: none; }
.notification-group > summary strong, .notification-group > summary small { display: block; }
.notification-group > summary small { margin-top: 2px; color: var(--ink-500); font-size: 11px; }
.notification-group > summary > svg { width: 16px; color: var(--ink-500); transition: rotate .18s ease; }
.notification-group[open] > summary > svg { rotate: 90deg; }
.notification-group .alert-list { padding: 0 12px 12px; }
.dashboard-empty-chart { min-height: 220px; display: grid; place-items: center; }
.dashboard-empty-chart .empty-state { padding-block: 24px; }
.empty-state-action .button { margin-top: 16px; }
.finance-scope-bar { display: flex; align-items: end; justify-content: space-between; gap: 18px; padding: 16px 18px; }
.finance-scope-bar > div { display: flex; flex-wrap: wrap; gap: 12px; }
.finance-scope-bar label { display: grid; gap: 5px; color: var(--ink-500); font-size: 10px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; }
.finance-scope-bar select { min-width: 170px; height: 38px; padding: 0 30px 0 10px; border: 1px solid var(--line); border-radius: 9px; color: var(--ink-800); background: #fff; font: 500 12px "DM Sans", sans-serif; text-transform: none; }
.finance-scope-action { align-self: end; height: 38px; white-space: nowrap; }
.finance-scope-bar > span { display: flex; align-items: center; gap: 7px; max-width: 390px; color: var(--ink-500); font-size: 11px; line-height: 1.45; }
.finance-scope-bar > span svg { width: 15px; flex: 0 0 auto; }

.choice-panel-icon { width: 43px; height: 43px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 12px; color: var(--forest-700); background: var(--forest-50); }
.choice-panel-icon svg { width: 20px; height: 20px; }
.choice-breadcrumb { display: block; margin-bottom: 4px; color: var(--forest-700); font-size: 11.5px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.property-create-layout { display: grid; grid-template-columns: 265px minmax(0, 1fr); gap: 20px; align-items: start; }
.create-summary-card { position: sticky; top: calc(var(--topbar-height) + 20px); padding: 23px; text-align: center; }
.create-summary-icon { width: 66px; height: 66px; display: grid; place-items: center; margin: 2px auto 18px; border-radius: 18px; color: #fff; background: linear-gradient(145deg, var(--forest-600), var(--forest-900)); box-shadow: 0 10px 24px rgba(23, 63, 50, .18); }
.create-summary-icon svg { width: 31px; height: 31px; }
.create-summary-label { display: block; margin-bottom: 7px; color: var(--ink-500); font-size: 11px; font-weight: 700; letter-spacing: .1em; }
.create-summary-card h3 { margin-bottom: 6px; font: 700 18px/1.3 "Manrope", sans-serif; }
.create-summary-card > p { min-height: 36px; margin-bottom: 18px; color: var(--ink-500); font-size: 12.5px; line-height: 1.55; }
.create-summary-note { display: flex; align-items: flex-start; gap: 8px; margin-top: 18px; padding: 12px; border-radius: 10px; color: var(--ink-600); background: var(--surface-soft); font-size: 12px; line-height: 1.5; text-align: left; }
.create-summary-note svg { width: 15px; height: 15px; flex: 0 0 auto; color: var(--forest-700); }
.create-form-section { padding: 23px; }
.create-form-title { display: flex; align-items: center; gap: 12px; margin-bottom: 20px; padding-bottom: 16px; border-bottom: 1px solid var(--line-soft); }
.create-form-title > span { width: 38px; height: 38px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 11px; color: var(--forest-700); background: var(--forest-50); }
.create-form-title > span svg { width: 18px; height: 18px; }
.create-form-title h3 { margin: 0 0 3px; font: 700 15px/1.25 "Manrope", sans-serif; }
.create-form-title p { margin: 0; color: var(--ink-500); font-size: 12.5px; }
.create-extra-section { overflow: hidden; }
.create-extra-section summary { display: grid; grid-template-columns: 38px 1fr auto; align-items: center; gap: 12px; padding: 18px 22px; cursor: pointer; list-style: none; }
.create-extra-section summary::-webkit-details-marker { display: none; }
.create-extra-section summary > span { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 11px; color: var(--forest-700); background: var(--forest-50); }
.create-extra-section summary svg { width: 17px; height: 17px; }
.create-extra-section summary > svg { color: var(--ink-500); transition: .18s ease; }
.create-extra-section[open] summary > svg { rotate: 90deg; }
.create-extra-section summary strong, .create-extra-section summary small { display: block; }
.create-extra-section summary strong { font-size: 13.5px; }
.create-extra-section summary small { margin-top: 4px; color: var(--ink-500); font-size: 12px; }
.create-extra-body { display: grid; grid-template-columns: minmax(240px, .7fr) 1fr; gap: 15px; padding: 0 22px 22px; border-top: 1px solid var(--line-soft); padding-top: 18px; }
.create-extra-body-single { grid-template-columns: 1fr; }
.deed-review-optional { margin-top: 22px; border-color: var(--line-soft); box-shadow: none; }
.deed-review-optional .create-extra-body { background: var(--surface-soft); }
.create-form-actions { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 12px; padding: 8px 0 2px; }
.create-form-actions > span { color: var(--ink-500); font-size: 12px; text-align: center; }
.create-form-actions em { color: var(--red-700); font-style: normal; }

@media (max-width: 1280px) {
  .page-container { padding-inline: 22px; }
  .topbar { padding-inline: 22px; }
  .kpi-grid { grid-template-columns: repeat(2, 1fr); }
  .finance-summary-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .property-layout { grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr); }
  .property-card { grid-template-columns: 76px 1fr; }
  .property-finance { grid-column: 2; display: flex; align-items: center; flex-wrap: wrap; gap: 10px; text-align: left; }
  /* Dar kartta ödeme bloğu kiranın yanına sığmaz; tam satır olarak alta iner. */
  .property-collection { width: 100%; align-items: flex-start; margin-top: 0; }
  .collection-strip { grid-template-columns: auto minmax(0, 1fr); }
  .collection-flags { grid-column: 1 / -1; }
}

@media (max-width: 1050px) {
  :root { --sidebar-width: 230px; }
  .record-summary-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .detail-grid-wide { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .property-layout { grid-template-columns: 1fr; }
  .property-list-pane { max-height: none; border-right: 0; border-bottom: 1px solid var(--line-soft); }
  .property-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .map-pane { min-height: 430px; }
  .dashboard-grid, .lower-grid, .insurance-grid, .finance-grid { grid-template-columns: 1fr; }
  .insurance-overview { grid-template-columns: 1fr; }
  .collection-card .card-body { grid-template-columns: auto 1fr; gap: 30px; }
  .proposal-grid { grid-template-columns: 1fr; }
  .increase-due-card { grid-template-columns: 38px 1fr auto; }
  .increase-due-fact { display: none; }
  .team-grid { grid-template-columns: 1fr; }
  .setup-tools-card { grid-template-columns: 44px minmax(0, 1fr); }
  .setup-tools-card > .section-actions { grid-column: 1 / -1; justify-content: flex-start; }
  .portfolio-import-summary { grid-template-columns: repeat(3, minmax(105px, 1fr)); }
  .contract-layout { grid-template-columns: 1fr; }
  .contract-sidebar { position: static; }
  .contract-preview-card { position: static; }
  .contract-preview-canvas { max-height: none; }
  .integration-flow { grid-template-columns: 1fr; }
  .integration-arrow { rotate: 90deg; justify-self: center; }
  .property-create-head { align-items: flex-start; flex-direction: column; }
  .create-progress { width: 100%; min-width: 0; max-width: 600px; }
  .property-create-layout { grid-template-columns: 1fr; }
  .deed-review-layout { grid-template-columns: 1fr; }
  .address-cascade-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .deed-review-aside { position: static; display: grid; grid-template-columns: 55px 1fr auto; align-items: center; gap: 13px; text-align: left; }
  .deed-review-aside .create-summary-icon { grid-row: 1 / span 3; margin: 0; width: 55px; height: 55px; }
  .deed-review-aside .create-summary-label, .deed-review-aside h3, .deed-review-aside > p { grid-column: 2; }
  .deed-review-aside .create-summary-label { margin-bottom: -10px; }
  .deed-review-aside h3 { margin: -7px 0; }
  .deed-review-aside > p { margin: -8px 0 0; }
  .deed-review-aside .confidence-legend { display: none; }
  .deed-review-aside > .button { grid-column: 3; grid-row: 1 / span 3; }
  .create-summary-card { position: static; display: grid; grid-template-columns: 66px 1fr auto; align-items: center; gap: 16px; text-align: left; }
  .create-summary-icon { margin: 0; }
  .create-summary-label, .create-summary-card h3, .create-summary-card > p { grid-column: 2; }
  .create-summary-label { align-self: end; margin-bottom: -12px; }
  .create-summary-card h3 { margin: -8px 0 0; }
  .create-summary-card > p { min-height: 0; margin: -11px 0 0; }
  .create-summary-card > .button { grid-column: 3; grid-row: 1 / span 3; }
  .create-summary-note { display: none; }
}

@media (max-width: 880px) {
  :root { --sidebar-width: 260px; }
  .sidebar { transform: translateX(-103%); transition: transform .23s ease; box-shadow: var(--shadow-lg); }
  .sidebar.open { transform: translateX(0); }
  .sidebar-scrim { position: fixed; z-index: 35; inset: 0; display: block; opacity: 0; visibility: hidden; background: rgba(10,27,20,.42); transition: .2s ease; }
  .sidebar.open + .sidebar-scrim { opacity: 1; visibility: visible; }
  .sidebar-close { display: inline-grid !important; }
  .main-area { margin-left: 0; }
  .mobile-menu { display: inline-grid; border-color: var(--line); background: rgba(255,255,255,.7); }
  .mobile-menu::before { content: ""; width: 17px; height: 11px; border-top: 1.5px solid; border-bottom: 1.5px solid; box-shadow: inset 0 4.5px transparent, inset 0 6px currentColor, inset 0 7.5px transparent; }
  .hero-strip { grid-template-columns: 1fr; }
  .hero-meta { max-width: 420px; }
}

@media (max-width: 680px) {
  /* Dar ekranda hisse alanı ile silme düğmesi ad alanının altına iner. */
  .setup-tools-card { grid-template-columns: 1fr; }
  .setup-tools-card > .section-actions { width: 100%; flex-direction: column; }
  .setup-tools-card > .section-actions .button { width: 100%; }
  .portfolio-import-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 12px 14px; }
  .portfolio-import-panel > .modal-actions { align-items: stretch; flex-direction: column-reverse; margin-inline: 14px; }
  .portfolio-import-panel > .modal-actions .button { width: 100%; }
  .owner-row { grid-template-columns: minmax(0, 1fr) 38px; }
  .owner-row .owner-identity-fields { grid-column: 1 / -1; }
  .owner-identity-fields { grid-template-columns: 1fr; }
  .auth-screen { padding: 18px 14px 58px; }
  .auth-card { padding: 29px 23px 27px; border-radius: 18px; }
  .auth-copy { margin: 34px 0 23px; }
  .auth-copy h1 { font-size: 25px; }
  .topbar { min-height: 72px; gap: 10px; padding: 12px 14px; flex-wrap: wrap; }
  .topbar-title-wrap { flex: 1; min-width: 0; }
  .topbar-title-wrap > div { min-width: 0; }
  .topbar .eyebrow { display: none; }
  .topbar h1 { overflow: hidden; font-size: 18px; text-overflow: ellipsis; white-space: nowrap; }
  .topbar-actions { display: grid; flex: 1 0 100%; grid-template-columns: minmax(0, 1fr) 39px 39px; gap: 6px; }
  .notification-button { display: inline-grid; }
  .global-search { display: flex; width: 100%; max-width: none; height: 39px; }
  .global-search:focus-within { width: 100%; max-width: none; }
  .global-search kbd { display: none; }
  .topbar-primary { width: 39px; padding: 0; }
  .topbar-primary span:last-child { display: none; }
  .page-container { padding: 15px 14px 30px; }
  .page-stack { gap: 14px; }
  .hero-strip { padding: 20px; min-height: auto; }
  .hero-meta { grid-template-columns: 1fr; }
  .hero-meta-item:nth-child(2) { display: none; }
  .kpi-grid { grid-template-columns: 1fr 1fr; gap: 8px; }
  .kpi-card { min-height: 108px; padding: 13px; }
  .kpi-value { font-size: 18px; }
  .kpi-foot { line-height: 1.35; }
  .chart-card { min-height: 300px; }
  .bar-chart { height: 200px; gap: 3px; }
  .chart-y-axis { height: 200px; }
  .chart-x-axis { gap: 3px; }
  .chart-x-axis label { font-size: 8.5px; }
  .bar { width: min(10px, 42%); }
  .lower-grid { gap: 10px; }
  .section-head { align-items: flex-start; flex-direction: column; }
  .card-header { gap: 10px; padding: 18px; }
  .card-header > div { min-width: 0; }
  .toolbar { align-items: flex-start; flex-direction: column; }
  .toolbar-right { width: 100%; justify-content: space-between; }
  .tenant-operations-table { display: none; }
  .tenant-mobile-list { display: grid; gap: 10px; padding: 10px; }
  .tenant-mobile-card { display: grid; gap: 10px; padding: 13px; border: 1px solid var(--line-soft); border-radius: 13px; background: #fff; }
  .tenant-mobile-main { display: grid; grid-template-columns: 38px minmax(0, 1fr) auto; align-items: center; gap: 9px; padding: 0; border: 0; color: inherit; background: transparent; text-align: left; }
  .tenant-mobile-main strong, .tenant-mobile-main small { display: block; }
  .tenant-mobile-main small { overflow: hidden; margin-top: 3px; color: var(--ink-500); font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
  .tenant-mobile-main .status-pill { max-width: 120px; text-align: center; }
  .tenant-mobile-meta { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
  .tenant-mobile-meta > span { min-width: 0; padding: 9px; border-radius: 9px; background: var(--surface-soft); }
  .tenant-mobile-meta .cell-copy strong { font-size: 12px; }
  .tenant-mobile-meta .cell-copy span { margin-top: 2px; font-size: 10px; }
  .tenant-mobile-relations { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
  .tenant-mobile-relations > span { min-width: 0; display: grid; gap: 4px; padding: 9px; border-radius: 9px; background: var(--surface-soft); }
  .tenant-mobile-relations b { color: var(--ink-500); font-size: 9px; text-transform: uppercase; }
  .tenant-mobile-relations .tenant-owner-links { align-items: flex-start; flex-direction: column; gap: 3px; }
  .tenant-mobile-relations .tenant-owner-links i { display: none; }
  .list-pagination { align-items: stretch; flex-direction: column; }
  .list-pagination > div { justify-content: space-between; }
  .bank-freshness-strip { align-items: flex-start; flex-direction: column; }
  .compact-date-filter { width: 100%; justify-content: space-between; }
  .property-list { grid-template-columns: 1fr; }
  .property-layout { min-height: 0; }
  .property-table { min-width: 0; border-collapse: separate; }
  .property-table thead { display: none; }
  .property-table tbody { display: grid; gap: 10px; padding: 10px; }
  .property-table tbody tr { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); overflow: hidden; border: 1px solid var(--line); border-radius: 12px; background: #fff; }
  .property-table tbody tr:hover { background: #fff; }
  .property-table td { min-width: 0; display: grid; align-content: start; gap: 5px; padding: 10px 12px; border-right: 1px solid var(--line-soft); border-bottom: 1px solid var(--line-soft); }
  .property-table td:nth-child(even) { border-right: 0; }
  .property-table td::before { content: attr(data-label); color: var(--ink-500); font-size: 8px; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; }
  .property-table td[data-label="Mülk"], .property-table td[data-label="Not"] { grid-column: 1 / -1; border-right: 0; }
  .property-table td[data-label="Not"] { border-bottom: 0; }
  .property-table .table-record-link { width: 100%; min-width: 0; }
  .property-table .row-action { width: 100%; justify-content: center; }
  .property-table .collection-note { white-space: normal; }
  .collection-strip { grid-template-columns: 1fr; gap: 14px; }
  .collection-month { justify-content: space-between; }
  .collection-flag { flex: 1; }
  .view-toggle-button span { display: none; }
  .map-pane { min-height: 370px; }
  .summary-grid { grid-template-columns: 1fr; }
  .finance-summary-grid { grid-template-columns: 1fr; }
  .finance-scope-bar { align-items: stretch; flex-direction: column; }
  .finance-scope-bar > div { display: grid; grid-template-columns: 1fr; }
  .finance-scope-bar select { width: 100%; }
  .account-strip { grid-template-columns: 1fr; }
  .account-balance { text-align: left; padding-left: 54px; }
  .coverage-panel { grid-template-columns: 1fr; justify-items: center; text-align: center; }
  .coverage-facts { text-align: left; }
  .insurance-overview-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .collection-card .card-body { grid-template-columns: 1fr; }
  .proposal-values { gap: 6px; padding: 11px; }
  .proposal-values div strong { font-size: 12px; }
  .proposal-actions { flex-direction: column; }
  .finance-chart { grid-template-columns: 35px 1fr; padding-inline: 9px; }
  .finance-bars { gap: 7px; }
  .finance-bar { width: 9px; }
  .form-grid, .form-grid.three { grid-template-columns: 1fr; }
  .quick-add-grid { grid-template-columns: 1fr; }
  .modal-layer { padding: 0; align-items: end; }
  .modal { max-height: 92vh; border-radius: 18px 18px 0 0; }
  .modal-body, .drawer-body { padding: 16px; }
  .modal-document-preview .modal-body { padding: 0; }
  .generated-contract-modal { height: calc(92vh - 74px); }
  .generated-docx-preview .docx-wrapper { padding: 12px !important; }
  .generated-contract-actions { align-items: stretch; flex-direction: column; }
  .generated-contract-actions > span { align-items: flex-start; }
  .generated-contract-actions .modal-actions, .generated-contract-actions .button { width: 100%; }
  .generated-contract-actions .button { justify-content: center; }
  .drawer { width: 100vw; }
  .property-page-hero { grid-template-columns: 76px minmax(0, 1fr); gap: 13px; }
  .property-page-hero > .button, .property-page-hero > .section-actions { grid-column: 1 / -1; width: 100%; }
  .property-page-hero > .section-actions .button { flex: 1; }
  .property-page-visual { height: 76px; }
  .property-page-title h2 { font-size: 17px; }
  .property-page-title p { align-items: flex-start; line-height: 1.4; }
  .record-summary-grid { gap: 8px; }
  .record-summary-item { padding: 13px; }
  .record-summary-item > strong { font-size: 14px; }
  .record-action-card { grid-template-columns: 38px 1fr; padding: 14px; }
  .record-action-card > .item-icon { width: 38px; height: 38px; }
  .record-action-card > .button { grid-column: 1 / -1; width: 100%; }
  .record-action-card > .record-action-buttons { grid-column: 1 / -1; width: 100%; flex-direction: column; }
  .record-disclosure > summary { min-height: 68px; grid-template-columns: 34px minmax(0, 1fr) 15px; gap: 10px; padding: 13px; }
  .record-disclosure > summary > .item-icon { width: 34px; height: 34px; }
  .record-disclosure > summary > .status-pill, .record-disclosure-meta { display: none; }
  .record-disclosure-body { padding: 14px; }
  .record-disclosure-actions { align-items: stretch; flex-direction: column; }
  .record-disclosure-actions .button { width: 100%; }
  [data-deposit-detail] .permission-item { grid-template-columns: 36px minmax(0, 1fr); }
  [data-deposit-detail] .permission-item > .row-action, [data-deposit-detail] .permission-item > .row-actions, [data-deposit-detail] .permission-item > .status-pill, [data-deposit-detail] .permission-item > .money { grid-column: 2; justify-self: start; }
  [data-deposit-detail] .permission-item > .row-actions { flex-wrap: wrap; }
  .deposit-settlement-total { align-items: flex-start; flex-direction: column; }
  .detail-grid-wide { grid-template-columns: 1fr; }
  .charge-record-row { grid-template-columns: 34px minmax(0, 1fr) auto; }
  .charge-record-row > .status-pill { display: none; }
  .charge-record-actions .status-pill { display: none; }
  .detail-page-grid { grid-template-columns: 1fr; }
  .property-media-card .card-header { align-items: stretch; flex-direction: column; }
  .property-media-card .section-actions { justify-content: flex-start; }
  .property-photo-strip { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .form-page-card { padding: 16px; }
  .form-page-actions { align-items: stretch; flex-direction: column-reverse; }
  .form-page-actions .button { width: 100%; }
  .contract-head-status { width: 100%; }
  .contract-steps { overflow-x: auto; }
  .contract-steps b { min-width: 12px; }
  .contract-clause-list { grid-template-columns: 1fr; }
  .contract-preview-card > .card-header, .contract-preview-toolbar, .contract-final-actions { align-items: stretch; flex-direction: column; }
  .contract-preview-card > .card-header .section-actions, .contract-final-actions > div { width: 100%; }
  .contract-preview-card > .card-header .button, .contract-final-actions .button { flex: 1; }
  .contract-preview-canvas { min-height: 0; padding: 10px; }
  .contract-paper { min-height: 720px; padding: 26px 22px 30px; }
  .paper-footer { left: 22px; right: 22px; }
  .paper-grid, .paper-terms { grid-template-columns: 1fr; }
  .paper-terms div:nth-child(odd) { border-right: 0; }
  .paper-terms div:nth-last-child(2) { border-bottom: 1px solid #e4e8e6; }
  .integration-flow { gap: 10px; }
  .property-create-head { gap: 24px; padding: 22px 20px; }
  .property-create-head h2 { font-size: 21px; }
  .create-progress li strong { font-size: 11.5px; }
  .create-summary-card { grid-template-columns: 55px 1fr; padding: 16px; }
  .create-summary-icon { width: 55px; height: 55px; }
  .create-summary-card > .button { grid-column: 1 / -1; grid-row: auto; width: 100%; }
  .create-form-section { padding: 17px; }
  .create-extra-body { grid-template-columns: 1fr; }
  .create-form-actions { grid-template-columns: 1fr; }
  .create-form-actions > span { grid-row: 1; }
  .create-form-actions .button { width: 100%; }
  .deed-upload-panel, .deed-review-main { padding: 17px; }
  .manual-address-section { padding: 15px; }
  .address-section-heading { align-items: flex-start; flex-direction: column; }
  .address-cascade-grid { grid-template-columns: 1fr; }
  .deed-upload-copy { align-items: flex-start; }
  .deed-dropzone { min-height: 275px; padding: 24px 14px; }
  .deed-dropzone.is-processing { min-height: 350px; display: flex; gap: 20px; text-align: center; }
  .deed-scan-visual { width: 135px; height: 175px; }
  .deed-dropzone.is-processing .auth-spinner { margin: 0 auto 12px; }
  .deed-file-row { grid-template-columns: 36px 1fr; }
  .deed-file-row .row-action { width: 100%; grid-column: 1 / -1; }
  .deed-error { grid-template-columns: 20px 1fr; }
  .deed-error .button { grid-column: 1 / -1; }
  .manual-entry-option { align-items: stretch; flex-direction: column; }
  .manual-entry-option .button { width: 100%; }
  .deed-review-head { grid-template-columns: 40px 1fr; }
  .deed-review-head > .link-button { grid-column: 2; justify-self: start; }
  .deed-review-aside { grid-template-columns: 48px 1fr; }
  .deed-review-aside .create-summary-icon { width: 48px; height: 48px; }
  .deed-review-aside > .button { width: 100%; grid-column: 1 / -1; grid-row: auto; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

@media print {
  @page { size: A4; margin: 0; }
  body { background: #fff !important; }
  body * { visibility: hidden !important; }
  .contract-document, .contract-document * { visibility: visible !important; }
  .contract-document { position: absolute; inset: 0; display: block; }
  .contract-paper { width: 210mm; min-height: 297mm; margin: 0; padding: 16mm 17mm 14mm; box-shadow: none; break-after: page; page-break-after: always; }
  .contract-paper:last-child { break-after: auto; page-break-after: auto; }
  .paper-footer { left: 17mm; right: 17mm; bottom: 9mm; }
}

/* Bireysel malik muhasebe aktarımı: hesaplama ayrı JS modülünde, sunum burada. */
.accounting-export-card { overflow: hidden; border-color: #d8e5dd; }
.accounting-export-head { align-items: flex-start; padding-bottom: 16px; background: linear-gradient(135deg, var(--forest-50), #fff 72%); }
.accounting-export-head .section-actions { flex-wrap: wrap; justify-content: flex-end; }
.accounting-export-filters { align-items: end; }
.accounting-date-field { display: grid; gap: 3px; color: var(--ink-600); font-size: 9px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; }
.accounting-date-field input { min-width: 142px; height: 35px; padding: 0 9px; border: 1px solid var(--line); border-radius: 9px; color: var(--ink-950); background: #fff; font-size: 11.5px; font-weight: 600; letter-spacing: 0; text-transform: none; }
.accounting-date-field input:focus { outline: 2px solid rgba(48, 131, 97, .16); border-color: var(--forest-600); }
.accounting-date-field input[aria-invalid="true"] { border-color: var(--red-700); background: var(--red-50); }
.accounting-export-filters [data-action="apply-accounting-range"].is-pending { border-color: var(--amber-500); color: #fff; background: var(--amber-700); box-shadow: 0 0 0 3px rgba(215, 155, 58, .14); }
.accounting-title-line { display: flex; align-items: center; gap: 10px; }
.accounting-title-line h3 { margin: 0; }
.accounting-export-head p { margin: 5px 0 0; color: var(--ink-600); }
.finance-owner-card-head { align-items: end; }
.finance-owner-range-controls { align-items: end; flex-wrap: wrap; }
.finance-owner-range-controls label { display: grid; gap: 3px; color: var(--ink-500); font-size: 8.5px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; }
.finance-owner-range-controls input { width: 132px; height: 34px; padding: 0 9px; border: 1px solid var(--line); border-radius: 9px; color: var(--ink-800); background: #fff; font-size: 11px; text-transform: none; }
.finance-owner-range-controls [data-action="apply-finance-owner-range"].is-pending { border-color: var(--amber-500); color: #fff; background: var(--amber-700); }
.finance-owner-summary-row.is-expanded { background: var(--forest-50); }
.finance-owner-toggle { display: flex; width: 100%; min-width: 190px; align-items: center; justify-content: space-between; gap: 9px; }
.finance-owner-toggle > span { display: grid; gap: 3px; }
.finance-owner-toggle > svg { flex: 0 0 auto; width: 14px; height: 14px; color: var(--ink-500); transition: transform .16s ease; }
.finance-owner-toggle[aria-expanded="true"] > svg { transform: rotate(90deg); }
.finance-owner-period-detail-row > td { padding: 0 !important; border-bottom-color: var(--forest-100); background: #fbfdfb; }
.finance-owner-period-list { min-width: 900px; padding: 5px 17px 8px 31px; }
.finance-owner-period-head,
.finance-owner-period-line { display: grid; grid-template-columns: 125px minmax(190px, 1.3fr) minmax(130px, 1fr) 125px 125px 110px; gap: 11px; align-items: center; }
.finance-owner-period-head { min-height: 25px; border-bottom: 1px solid var(--line); color: var(--ink-500); font-size: 8.5px; font-weight: 700; letter-spacing: .045em; text-transform: uppercase; }
.finance-owner-period-line { min-height: 34px; border-bottom: 1px solid var(--line-soft); color: var(--ink-600); font-size: 10.5px; }
.finance-owner-period-line:last-child { border-bottom: 0; }
.finance-owner-period-line b { display: block; overflow: hidden; color: var(--ink-950); font-size: 10.5px; text-overflow: ellipsis; white-space: nowrap; }
.finance-owner-period-line small { display: block; color: var(--ink-500); font-size: 8.5px; }
.finance-owner-property-link { min-width: 0; display: grid; gap: 2px; padding: 0; border: 0; color: inherit; background: none; cursor: pointer; text-align: left; }
.finance-owner-property-link b { color: var(--forest-800); }
.finance-owner-property-link:hover b { text-decoration: underline; text-underline-offset: 2px; }
.finance-owner-tenant-link { min-width: 0; overflow: hidden; padding: 0; border: 0; color: var(--forest-800); background: none; cursor: pointer; font: inherit; font-weight: 650; text-align: left; text-overflow: ellipsis; white-space: nowrap; }
.finance-owner-tenant-link:hover { text-decoration: underline; text-underline-offset: 2px; }
.finance-owner-period-line .money { color: var(--ink-950); font-size: 10.5px; font-weight: 650; }
.finance-owner-period-line .money.is-open { color: var(--red-700); }
.finance-owner-period-empty { padding: 9px 0 5px; color: var(--ink-600); font-size: 10.5px; }

@media (max-width: 900px) {
  .accounting-export-head { align-items: stretch; flex-direction: column; }
  .accounting-export-head .section-actions { justify-content: flex-start; }
  .finance-owner-card-head { align-items: stretch; flex-direction: column; }
}

@media (max-width: 560px) {
  .accounting-export-head .section-actions, .accounting-export-head select, .accounting-export-head .button, .accounting-date-field, .accounting-date-field input { width: 100%; }
  .finance-owner-range-controls, .finance-owner-range-controls label, .finance-owner-range-controls input, .finance-owner-range-controls .button, .finance-owner-range-controls select { width: 100%; }
}

/* Genel Bakış çalışma alanı — finans solda, Excel benzeri mülk/kiracı defteri sağda. */
#page-root.dashboard-workspace-root,
#page-root.finance-workspace-root,
#page-root.property-workspace-root { max-width: none; padding-inline: clamp(16px, 1.35vw, 26px); }
.dashboard-workspace { display: grid; grid-template-columns: minmax(0, 1fr) clamp(340px, 24vw, 430px); align-items: start; gap: 16px; }
.dashboard-main-column { min-width: 0; }
.dashboard-register-card {
  position: sticky;
  top: calc(var(--topbar-height) + 18px);
  max-height: calc(100vh - var(--topbar-height) - 36px);
  min-width: 0;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  overflow: hidden;
}
.dashboard-register-head,
.dashboard-register-row { display: grid; grid-template-columns: minmax(0, .95fr) minmax(0, 1fr); align-items: center; }
.dashboard-register-head { min-height: 35px; padding-inline: 10px 13px; border-bottom: 1px solid var(--line); color: var(--ink-500); background: var(--surface-soft); font-size: 9.5px; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; }
.dashboard-register-body { min-height: 0; overflow-y: auto; overscroll-behavior: contain; scrollbar-width: thin; scrollbar-color: #b9c7bf transparent; }
.dashboard-register-row { min-height: 43px; padding-inline: 10px 13px; border-bottom: 1px solid var(--line-soft); color: var(--ink-700); font-size: 11.5px; line-height: 1.25; }
.dashboard-register-row:nth-child(even) { background: rgba(239, 243, 240, .64); }
.dashboard-register-row:last-child { border-bottom: 0; }
.dashboard-register-row > * { min-width: 0; overflow: hidden; padding-right: 5px; }
.dashboard-register-link { width: 100%; min-width: 0; display: grid; grid-template-columns: minmax(48px, auto) minmax(0, 1fr); align-items: center; gap: 6px; overflow: hidden; padding: 5px 4px; border: 0; border-radius: 6px; color: inherit; background: transparent; cursor: pointer; text-align: left; transition: color .15s ease, background .15s ease; }
.dashboard-register-link small, .dashboard-register-link strong { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.dashboard-register-link small { color: var(--ink-500); font-size: 9px; font-weight: 700; letter-spacing: .02em; }
.dashboard-register-link strong { color: var(--ink-950); font-size: 11px; font-weight: 700; }
.dashboard-register-property strong { overflow: visible; text-overflow: clip; white-space: normal; overflow-wrap: anywhere; }
.dashboard-register-link:hover, .dashboard-register-link:focus-visible { color: var(--forest-800); background: var(--forest-50); }
.dashboard-register-link:hover strong, .dashboard-register-link:focus-visible strong { color: var(--forest-800); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 2px; }
.dashboard-register-link:hover small, .dashboard-register-link:focus-visible small { color: var(--forest-700); }
.dashboard-register-vacant { display: block; padding: 5px 4px; color: var(--ink-500); }
.dashboard-register-empty { padding: 24px 16px; color: var(--ink-500); font-size: 12px; text-align: center; }

/* Finans cari defteri — kart içi özetler yerine Excel gibi sabit sütunlar. */
.finance-ledger-card { overflow: hidden; }
.finance-ledger-header { align-items: center; padding: 9px 13px; }
.finance-ledger-header h3 { font-size: 13px; }
.finance-ledger-header p { font-size: 9.5px; }
.finance-ledger-header .button { min-height: 32px; padding-inline: 10px; font-size: 10.5px; }
.finance-ledger-card .finance-ledger-table { min-width: 1120px; table-layout: fixed; }
.finance-ledger-card .finance-ledger-table th,
.finance-ledger-card .finance-ledger-table td { padding: 5px 7px; line-height: 1.18; }
.finance-ledger-card .finance-ledger-table th { position: sticky; z-index: 2; top: 0; padding-block: 7px; border-right: 1px solid #dfe4e1; border-bottom-color: #dfe4e1; font-size: 9.5px; }
.finance-ledger-card .finance-ledger-table td { min-height: 37px; height: 37px; border-right: 1px solid #e2e7e4; border-bottom: 1px solid #e2e7e4; color: var(--ink-950); font-size: 12px; }
.finance-ledger-card .finance-ledger-table th:last-child,
.finance-ledger-card .finance-ledger-table td:last-child { border-right: 0; }
.finance-ledger-card .finance-ledger-table tbody tr:last-child td { border-bottom: 1px solid #e2e7e4; }
.finance-ledger-card .finance-ledger-table tbody tr:nth-child(even) { background: #fafbf9; }
.finance-ledger-card .finance-ledger-table tbody tr:hover { background: var(--forest-50); }
.finance-ledger-card .finance-ledger-table th:nth-child(1) { width: 8%; }
.finance-ledger-card .finance-ledger-table th:nth-child(2) { width: 8%; }
.finance-ledger-card .finance-ledger-table th:nth-child(3) { width: 14%; }
.finance-ledger-card .finance-ledger-table th:nth-child(4) { width: 13%; }
.finance-ledger-card .finance-ledger-table th:nth-child(5) { width: 17%; }
.finance-ledger-card .finance-ledger-table th:nth-child(6) { width: 12%; }
.finance-ledger-card .finance-ledger-table th:nth-child(7) { width: 11%; }
.finance-ledger-card .finance-ledger-table th:nth-child(8) { width: 9%; }
.finance-ledger-card .finance-ledger-table th:nth-child(9) { width: 8%; }
.finance-ledger-card .table-sort { padding: 6px 8px; }
.finance-ledger-date, .finance-ledger-code, .finance-ledger-amount { font-variant-numeric: tabular-nums; }
.finance-ledger-code { color: var(--ink-600); font-size: 10.5px; letter-spacing: .02em; }
.finance-ledger-property-link { width: 100%; min-width: 0; display: block; padding: 2px 4px; border: 0; border-radius: 6px; color: var(--ink-950); background: transparent; cursor: pointer; text-align: left; }
.finance-ledger-property-link strong { overflow: visible; font-size: 12px; text-overflow: clip; white-space: normal; overflow-wrap: anywhere; }
.finance-ledger-property-link:hover, .finance-ledger-property-link:focus-visible { color: var(--forest-800); background: var(--forest-50); }
.finance-ledger-property-link:hover strong, .finance-ledger-property-link:focus-visible strong { text-decoration: underline; text-decoration-thickness: 1.5px; text-underline-offset: 3px; }
.finance-ledger-type, .finance-ledger-description { display: block; }
.finance-ledger-type { color: var(--ink-900); font-weight: 650; }
.finance-ledger-description { color: var(--ink-600); white-space: normal; overflow-wrap: anywhere; }
.finance-ledger-amount { color: var(--ink-950); font-size: 11.5px; }
.finance-ledger-amount.expense { color: var(--amber-700); }
.finance-ledger-amount.collected { color: var(--forest-800); }
.finance-ledger-status { color: var(--ink-950); font-size: 11.5px; font-weight: 600; white-space: nowrap; }
.finance-ledger-card .row-action { min-height: 28px; padding-inline: 7px; font-size: 10px; white-space: nowrap; }

/* Malik finans özeti, cari hesap defteriyle aynı yoğun tablo dilini kullanır. */
.finance-owner-section { overflow: hidden; }
.finance-owner-section .finance-owner-card-head { align-items: center; padding: 9px 13px; }
.finance-owner-section .finance-owner-card-head h3 { font-size: 13px; }
.finance-owner-section .finance-owner-card-head p { font-size: 9.5px; }
.finance-owner-section .finance-owner-range-controls { align-items: center; gap: 6px; }
.finance-owner-section .finance-owner-range-controls input,
.finance-owner-section .finance-owner-range-controls select { height: 30px; min-height: 30px; border-radius: 5px; font-size: 10px; }
.finance-owner-section .finance-owner-range-controls .button { min-height: 30px; padding-inline: 9px; font-size: 10px; }
.finance-owner-section .finance-owner-table { min-width: 980px; table-layout: fixed; }
.finance-owner-section .finance-owner-table th,
.finance-owner-section .finance-owner-table td { padding: 5px 7px; line-height: 1.18; }
.finance-owner-section .finance-owner-table th { position: sticky; z-index: 2; top: 0; padding-block: 7px; border-right: 1px solid #dfe4e1; border-bottom-color: #dfe4e1; font-size: 9.5px; }
.finance-owner-section .finance-owner-table td { height: 39px; border-right: 1px solid #e2e7e4; border-bottom: 1px solid #e2e7e4; color: var(--ink-950); font-size: 12px; }
.finance-owner-section .finance-owner-table th:last-child,
.finance-owner-section .finance-owner-table td:last-child { border-right: 0; }
.finance-owner-section .finance-owner-table tbody tr:last-child td { border-bottom: 1px solid #e2e7e4; }
.finance-owner-section .finance-owner-table tbody tr:nth-child(even):not(.finance-owner-period-detail-row) { background: #fafbf9; }
.finance-owner-section .finance-owner-table tbody tr:hover { background: var(--forest-50); }
.finance-owner-section .finance-owner-table th:nth-child(1) { width: 24%; }
.finance-owner-section .finance-owner-table th:nth-child(2) { width: 10%; }
.finance-owner-section .finance-owner-table th:nth-child(3) { width: 14%; }
.finance-owner-section .finance-owner-table th:nth-child(4) { width: 16%; }
.finance-owner-section .finance-owner-table th:nth-child(5) { width: 12%; }
.finance-owner-section .finance-owner-table th:nth-child(6) { width: 11%; }
.finance-owner-section .finance-owner-table th:nth-child(7) { width: 13%; }
.finance-owner-section .table-sort { padding: 6px 8px; }
.finance-owner-section .finance-owner-toggle { min-width: 0; justify-content: flex-start; padding: 2px 4px; border-radius: 6px; white-space: nowrap; }
.finance-owner-section .finance-owner-toggle > span { min-width: 0; display: block; overflow: hidden; color: var(--ink-500); font-size: 8.5px; text-overflow: ellipsis; white-space: nowrap; }
.finance-owner-section .finance-owner-toggle > svg { margin-left: auto; }
.finance-owner-section .finance-owner-toggle strong { overflow: hidden; flex: 0 1 auto; text-overflow: ellipsis; white-space: nowrap; }
.finance-owner-section .finance-owner-toggle strong { font-size: 12px; }
.finance-owner-section .finance-owner-property-count { white-space: nowrap; }
.finance-owner-section .finance-owner-property-count strong,
.finance-owner-section .finance-owner-property-count span { display: inline; }
.finance-owner-section .finance-owner-property-count strong { font-size: 11.5px; }
.finance-owner-section .finance-owner-property-count span { margin-left: 5px; color: var(--ink-500); font-size: 8.5px; }
.finance-owner-section .finance-owner-value { color: var(--ink-950); font-size: 11.5px; font-weight: 700; font-variant-numeric: tabular-nums; white-space: nowrap; }
.finance-owner-section .finance-owner-value.collected,
.finance-owner-section .finance-owner-value.net { color: var(--forest-800); }
.finance-owner-section .finance-owner-value.overdue { color: var(--red-700); }
.finance-owner-section .finance-owner-value.expense { color: var(--amber-700); }
.finance-owner-section .finance-owner-period-detail-row > td { height: auto; border-right: 0; }

@media (max-width: 1280px) {
  .dashboard-workspace { grid-template-columns: 1fr; }
  .dashboard-register-card { position: static; max-height: 560px; }
}

/* Mülk portföy defteri — yüksek bilgi yoğunluğu, sabit hizalar ve tek bakışta tahsilat. */
.section-kicker { display: block; margin-bottom: 5px; color: var(--forest-700); font-size: 9.5px; font-weight: 800; letter-spacing: .12em; line-height: 1.2; }
.properties-page { gap: 12px; }
.property-month-picker { height: 72px; min-height: 72px; display: grid; grid-template-columns: 205px minmax(0, 1fr); align-items: stretch; overflow: hidden; }
.property-month-picker-title { display: grid; align-content: center; gap: 2px; padding: 10px 15px; border-right: 1px solid var(--line-soft); background: linear-gradient(135deg, var(--forest-50), #fff); }
.property-month-picker-title span, .property-month-picker-title strong { display: block; }
.property-month-picker-title span { color: var(--forest-700); font-size: 9px; font-weight: 800; letter-spacing: .12em; }
.property-month-picker-title strong { overflow: hidden; font: 700 15px/1.2 "Manrope", sans-serif; text-overflow: ellipsis; text-transform: capitalize; white-space: nowrap; }
.property-month-scroll { min-width: 0; display: flex; align-items: stretch; overflow-x: auto; scroll-behavior: smooth; scrollbar-width: thin; scrollbar-color: #c8d3cc transparent; }
.property-month-button { position: relative; min-width: 78px; flex: 1 0 78px; display: grid; place-content: center; gap: 3px; padding: 7px 5px 9px; border: 0; border-right: 1px solid var(--line-soft); color: var(--ink-600); background: #fff; cursor: pointer; text-align: center; transition: color .15s ease, background .15s ease, box-shadow .15s ease; scroll-snap-align: center; }
.property-month-button::after { content: ""; position: absolute; left: 50%; bottom: 5px; width: 4px; height: 4px; transform: translateX(-50%); border-radius: 50%; background: #c7ceca; }
.property-month-button.success::after { background: var(--forest-600); }
.property-month-button.warning::after { background: var(--amber-500); }
.property-month-button.danger::after { background: var(--red-700); }
.property-month-button:hover { color: var(--forest-800); background: var(--forest-50); }
.property-month-button.active { z-index: 1; color: #fff; background: var(--forest-800); box-shadow: inset 0 -3px #dcb56e; }
.property-month-button.active::after { background: #e7c17c; }
.property-month-button span, .property-month-button strong { display: block; }
.property-month-button span { font-size: 9px; line-height: 1; opacity: .72; }
.property-month-button strong { font: 700 15px/1.2 "Manrope", sans-serif; text-transform: capitalize; }
.portfolio-ledger-summary { min-height: 66px; display: grid; grid-template-columns: minmax(185px, .6fr) minmax(430px, 1.4fr) minmax(190px, .6fr); align-items: stretch; overflow: hidden; border-left: 3px solid var(--forest-600); }
.portfolio-ledger-summary.warning { border-left-color: var(--amber-500); }
.portfolio-ledger-summary.danger { border-left-color: var(--red-700); }
.portfolio-summary-period { min-width: 0; display: grid; align-content: center; gap: 2px; padding: 9px 14px; border-right: 1px solid var(--line-soft); }
.portfolio-summary-period span, .portfolio-summary-period strong, .portfolio-summary-period small { display: block; }
.portfolio-summary-period span { color: var(--forest-700); font-size: 8px; font-weight: 800; letter-spacing: .09em; }
.portfolio-summary-period strong { overflow: hidden; font: 700 13px/1.2 "Manrope", sans-serif; text-overflow: ellipsis; text-transform: capitalize; white-space: nowrap; }
.portfolio-summary-period small { color: var(--ink-500); font-size: 8.5px; }
.portfolio-ledger-metrics { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); align-items: stretch; }
.portfolio-ledger-metrics > div { min-width: 0; display: grid; align-content: center; gap: 3px; padding: 8px 12px; border-right: 1px solid var(--line-soft); }
.portfolio-ledger-metrics span, .portfolio-ledger-flags span span { color: var(--ink-500); font-size: 8.5px; }
.portfolio-ledger-metrics strong { overflow: hidden; font: 700 13px/1.2 "Manrope", sans-serif; text-overflow: ellipsis; white-space: nowrap; }
.portfolio-ledger-metrics .collected strong { color: var(--forest-700); }
.portfolio-ledger-metrics .open strong { color: var(--amber-700); }
.portfolio-ledger-summary.danger .portfolio-ledger-metrics .open strong { color: var(--red-700); }
.portfolio-ledger-flags { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); padding: 6px; background: var(--surface-soft); }
.portfolio-ledger-flags > span { min-width: 0; display: grid; place-content: center; gap: 2px; padding: 4px; border: 0; border-right: 1px solid var(--line); color: inherit; background: transparent; text-align: center; }
.portfolio-ledger-flags > :last-child { border-right: 0; }
.portfolio-ledger-flags strong { font: 700 14px/1 "Manrope", sans-serif; }
.property-ledger-card { overflow: hidden; }
.property-list-header { align-items: center; padding: 9px 13px; }
.property-list-header h3, .property-ledger-card .card-header h3 { font-size: 13px; }
.property-list-header p { font-size: 9.5px; }
.property-list-actions { justify-content: flex-end; }
.property-list-actions .button { min-height: 32px; padding-inline: 10px; font-size: 10.5px; }
/* Sütunlar sabit oranlarla ekrana sığar. */
.property-ledger-card .property-table { width: 100%; min-width: 0; max-width: 100%; table-layout: fixed; }
/* Kolon genişlikleri portal katmanında tanımlı. */
.property-ledger-card .property-table td { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.property-ledger-card .property-table th, .property-ledger-card .property-table td { padding: 5px 7px; line-height: 1.18; }
.property-ledger-card .property-table th { position: sticky; z-index: 2; top: 0; padding-block: 7px; border-right: 1px solid #dfe4e1; border-bottom-color: #dfe4e1; font-size: 9.5px; }
.property-ledger-card .property-table td { height: 37px; border-right: 1px solid #e2e7e4; border-bottom: 1px solid #e2e7e4; font-size: 12px; }
.property-ledger-card .property-table th:last-child,
.property-ledger-card .property-table td:last-child { border-right: 0; }
.property-ledger-card .property-table tbody tr:last-child td { border-bottom: 1px solid #e2e7e4; }
.property-ledger-card .property-table tbody tr:nth-child(even) { background: #fafbf9; }
.property-ledger-card .property-table tbody tr:hover { background: var(--forest-50); }
.property-ledger-card .table-sort { padding: 7px 11px; }
.property-ledger-card .property-detail-link { width: 100%; min-width: 0; display: block; padding: 2px 4px; border-radius: 6px; transition: color .15s ease, background .15s ease; }
.property-ledger-card .property-detail-link:hover,
.property-ledger-card .property-detail-link:focus-visible { color: var(--forest-800); background: var(--forest-50); text-decoration-line: none; }
.property-ledger-card .property-detail-link:focus-visible { outline: 2px solid rgba(48,131,97,.32); outline-offset: 1px; }
.property-ledger-card .property-detail-link > svg { width: 13px; color: var(--forest-600); opacity: .7; transition: transform .15s ease, opacity .15s ease; }
.property-ledger-card .property-detail-link:hover > svg, .property-ledger-card .property-detail-link:focus-visible > svg { transform: translateX(2px); opacity: 1; }
.property-ledger-card .property-detail-link .ledger-code,
.property-ledger-card .property-detail-link:hover .ledger-code,
.property-ledger-card .property-detail-link:focus-visible .ledger-code { text-decoration: none; }
.property-ledger-card .property-detail-link strong { overflow: visible; color: var(--ink-950); font-weight: 700; text-overflow: clip; white-space: normal; overflow-wrap: anywhere; }
.property-ledger-card .property-table td[data-label="Konum"] .cell-copy strong { color: var(--ink-500); font-weight: 500; }
.property-ledger-card .property-detail-link:hover strong, .property-ledger-card .property-detail-link:focus-visible strong,
.property-ledger-card .property-tenant-link:hover strong, .property-ledger-card .property-tenant-link:focus-visible strong { color: var(--forest-800); text-decoration: underline; text-decoration-thickness: 1.5px; text-underline-offset: 3px; }
.property-ledger-card .property-detail-link:hover strong,
.property-ledger-card .property-detail-link:focus-visible strong { text-decoration-color: var(--forest-800); text-decoration-thickness: 2px; }
.property-ledger-card .table-record-link strong, .property-ledger-card .cell-copy strong { font-size: 12px; }
.property-table-code { color: var(--ink-600); font-size: 10.5px; letter-spacing: .02em; white-space: nowrap; }
.property-owner-cell strong { overflow: hidden; color: var(--ink-700); font-weight: 600; text-overflow: ellipsis; white-space: nowrap; }
.ledger-date { color: var(--ink-800); white-space: nowrap; }
.collected-money { color: var(--forest-700); }
.ledger-balance.is-open { color: var(--red-700); }
.property-ledger-note { width: 100%; min-width: 0; height: 25px; overflow: hidden; padding: 2px 3px; border: 0; border-bottom: 1px solid transparent; border-radius: 0; color: var(--ink-900); background: transparent; font: inherit; text-overflow: ellipsis; white-space: nowrap; transition: border-color .15s ease, background .15s ease; }
.property-ledger-note:hover { border-bottom-color: var(--line); background: transparent; }
.property-ledger-note:focus { outline: 0; border-bottom-color: var(--forest-500); background: rgba(255,255,255,.55); box-shadow: none; }
.property-ledger-note.is-saving { opacity: .6; }
.property-ledger-note.is-saved { border-color: var(--forest-400); background: var(--forest-50); }
.property-status-cell { min-width: 0; display: grid; justify-items: start; gap: 5px; }
.property-tenant-link { width: 100%; min-width: 0; display: block; padding: 2px 4px; border: 0; border-radius: 6px; color: inherit; background: transparent; cursor: pointer; text-align: left; transition: color .15s ease, background .15s ease; }
.property-tenant-link:hover { color: var(--forest-800); background: var(--forest-50); }
.property-tenant-link:focus-visible { outline: 2px solid rgba(48,131,97,.32); outline-offset: 1px; }
.property-tenant-link > svg { width: 13px; color: var(--forest-600); opacity: .7; transition: transform .15s ease; }
.property-tenant-link:hover > svg, .property-tenant-link:focus-visible > svg { transform: translateX(2px); opacity: 1; }
.property-tenant-link .cell-copy { min-width: 0; }
.property-tenant-link .property-tenant-cell strong { overflow: visible; text-overflow: clip; white-space: normal; overflow-wrap: anywhere; }
.property-ledger-card .status-pill { min-height: 25px; padding-inline: 9px; font-size: 10px; }
.property-rent-cell .money { color: var(--ink-950); }
.property-ledger-card .collection-cell { gap: 0; }

/* Mülk detay çalışma alanı — referanstaki bilgi fişi ve kira defteri yapısı. */
.detail-page { gap: 10px; }
.property-detail-board { display: grid; grid-template-columns: minmax(620px, 1.4fr) minmax(340px, .7fr); gap: 14px; align-items: stretch; }
.property-information-sheet, .property-tenant-sheet, .property-charge-ledger { overflow: hidden; border-radius: 13px; }
.property-sheet-head { min-height: 72px; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 13px 16px; border-bottom: 1px solid var(--line-soft); background: linear-gradient(110deg, var(--surface-soft), #fff); }
.property-sheet-head > div { min-width: 0; }
.property-sheet-head > div > span { display: block; color: var(--forest-700); font-size: 9px; font-weight: 800; letter-spacing: .12em; }
.property-sheet-head h3 { margin: 4px 0 0; font: 700 15px/1.25 "Manrope", sans-serif; }
.property-sheet-head p { overflow: hidden; margin: 4px 0 0; color: var(--ink-500); font-size: 10.5px; text-overflow: ellipsis; white-space: nowrap; }
.property-sheet-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.property-sheet-field { min-width: 0; min-height: 46px; display: grid; grid-template-columns: minmax(100px, .72fr) minmax(0, 1.28fr); align-items: stretch; border-right: 1px solid var(--line-soft); border-bottom: 1px solid var(--line-soft); }
.property-sheet-field:nth-child(2n), .property-sheet-field.wide { border-right: 0; }
.property-sheet-field.wide { grid-column: 1 / -1; grid-template-columns: minmax(110px, .36fr) minmax(0, 1.64fr); }
.property-sheet-field > span, .property-sheet-field > strong { min-width: 0; display: flex; align-items: center; padding: 9px 12px; }
.property-sheet-field > span { color: var(--ink-600); background: #f0f2ef; font-size: 11px; font-weight: 700; }
.property-sheet-field > strong { overflow: hidden; color: var(--ink-950); background: #fff; font-size: 13px; text-overflow: ellipsis; white-space: nowrap; }
.property-sheet-field > .property-sheet-value,
.property-sheet-field > .property-sheet-actions { min-width: 0; display: flex; align-items: center; padding: 7px 12px; background: #fff; }
.property-sheet-value { justify-content: space-between; gap: 12px; }
.property-sheet-value > strong { overflow: hidden; color: var(--ink-950); font-size: 16px; text-overflow: ellipsis; white-space: nowrap; }
.property-sheet-value > div { display: flex; flex: 0 0 auto; gap: 5px; }
.property-sheet-title-field .status-pill { min-height: 23px; padding-inline: 8px; font-size: 9px; }
.property-sheet-actions { justify-content: flex-end; flex-wrap: wrap; gap: 6px; }
.property-sheet-actions .button { min-height: 31px; padding-inline: 9px; border-radius: 7px; font-size: 12px; }
.property-sheet-actions .button svg { width: 13px; height: 13px; }
.property-sheet-field.forest > span { color: var(--forest-800); background: var(--forest-100); }
.property-sheet-field.blue > span { color: var(--blue-700); background: var(--blue-100); }
.property-sheet-field.gold > span { color: var(--amber-700); background: var(--amber-100); }
.property-tenant-sheet { display: flex; flex-direction: column; }
.property-tenant-identity { width: calc(100% - 24px); min-height: 66px; display: grid; grid-template-columns: 42px minmax(0, 1fr) 17px; align-items: center; gap: 11px; margin: 12px 12px 0; padding: 9px 12px; border: 1px solid var(--forest-100); border-radius: 10px; color: inherit; background: var(--forest-50); cursor: pointer; text-align: left; }
.property-tenant-identity .cell-avatar { width: 42px; height: 42px; font-size: 12px; }
.property-tenant-identity strong, .property-tenant-identity small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.property-tenant-identity strong { font-size: 16px; line-height: 1.25; }
.property-tenant-identity small { margin-top: 4px; color: var(--ink-500); font-size: 12px; }
.property-tenant-identity > svg { width: 16px; color: var(--forest-700); }
.property-tenant-facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin: 12px; border: 1px solid var(--line-soft); border-radius: 10px; overflow: hidden; }
.property-tenant-facts > div { min-width: 0; min-height: 53px; display: grid; align-content: center; gap: 3px; padding: 8px 10px; border-right: 1px solid var(--line-soft); border-bottom: 1px solid var(--line-soft); }
.property-tenant-facts > div:nth-child(2n) { border-right: 0; }
.property-tenant-facts > div:nth-last-child(-n+2) { border-bottom: 0; }
.property-tenant-facts span { color: var(--ink-500); font-size: 11px; }
.property-tenant-facts strong { overflow: hidden; font-size: 13px; text-overflow: ellipsis; white-space: nowrap; }
.property-tenant-facts .collection-cell { gap: 2px; }
.property-tenant-facts .status-pill { width: max-content; min-height: 23px; font-size: 9.5px; }
.property-tenant-facts .collection-note { font-size: 9px; white-space: normal; }
.property-tenant-actions { display: flex; gap: 7px; margin: auto 12px 12px; }
.property-tenant-actions .button { flex: 1; }
.property-tenant-empty { min-height: 265px; display: grid; place-items: center; align-content: center; gap: 7px; padding: 24px; text-align: center; }
.property-tenant-empty strong { font-size: 12px; }
.property-tenant-empty p { max-width: 240px; margin: 0 0 5px; color: var(--ink-500); font-size: 9.5px; line-height: 1.45; }
.property-charge-ledger { grid-column: 1 / -1; }
.property-charge-ledger .card-header { align-items: center; padding: 12px 15px; }
.property-charge-ledger .card-header h3 { margin: 0; font-size: 15px; }
.property-charge-year-strip { min-height: 31px; display: flex; align-items: stretch; overflow-x: auto; border-bottom: 1px solid #dfe4e1; background: var(--surface-soft); scrollbar-width: thin; }
.property-charge-year-strip > span { display: flex; align-items: center; padding: 0 11px; border-right: 1px solid #dfe4e1; color: var(--ink-500); font-size: 9px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.property-charge-year-strip button { min-width: 58px; padding: 5px 11px; border: 0; border-right: 1px solid #dfe4e1; color: var(--ink-600); background: transparent; cursor: pointer; font-size: 10.5px; font-weight: 700; }
.property-charge-year-strip button:hover { color: var(--forest-800); background: var(--forest-50); }
.property-charge-year-strip button.active { color: #fff; background: var(--forest-800); }
.property-charge-year-strip button:focus-visible { position: relative; z-index: 1; outline: 2px solid var(--forest-500); outline-offset: -2px; }
.property-charge-ledger .property-charge-table { min-width: 1180px; table-layout: fixed; }
.property-charge-table th { padding: 8px 10px; border-right: 1px solid #dfe4e1; border-bottom-color: #dfe4e1; font-size: 9.5px; }
.property-charge-table td { height: 41px; padding: 7px 10px; border-right: 1px solid #e2e7e4; border-bottom: 1px solid #e2e7e4; color: var(--ink-950); font-size: 11.5px; }
.property-charge-table th:last-child, .property-charge-table td:last-child { border-right: 0; }
.property-charge-table tbody tr:nth-child(even) { background: #fafbf9; }
.property-charge-table tbody tr:last-child td { border-bottom: 1px solid #e2e7e4; }
.property-charge-table th:nth-child(1) { width: 11%; }
.property-charge-table th:nth-child(2) { width: 10%; }
.property-charge-table th:nth-child(3) { width: 9%; }
.property-charge-table th:nth-child(4) { width: 16%; }
.property-charge-table th:nth-child(5) { width: 11%; }
.property-charge-table th:nth-child(6) { width: 11%; }
.property-charge-table th:nth-child(7) { width: 9%; }
.property-charge-table th:nth-child(8) { width: 9%; }
.property-charge-table th:nth-child(9) { width: 8%; }
.property-charge-table th:nth-child(10) { width: 6%; }
.property-charge-status { color: var(--ink-950); font-weight: 600; white-space: nowrap; }
.property-charge-table tfoot td { border-top: 1px solid #dfe4e1; border-bottom: 1px solid #e2e7e4; color: var(--ink-950); background: var(--surface-soft); }
.property-extra-head { display: flex; align-items: end; justify-content: space-between; padding-top: 5px; }
.property-extra-head h3 { margin: 0; font: 700 17px/1.25 "Manrope", sans-serif; }
.property-extra-head p { margin: 4px 0 0; color: var(--ink-500); font-size: 12px; }
.detail-page .record-detail-stack { grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; }
.detail-page .record-detail-stack > [data-detail-section="tenancy"], .detail-page .record-detail-stack > [data-detail-section="history"] { grid-column: 1 / -1; }
.detail-page .record-disclosure > summary { min-height: 61px; padding: 11px 14px; }
.detail-page .record-disclosure-copy strong { font-size: 13px; }
.detail-page .record-disclosure-copy small { font-size: 10.5px; }
.detail-page .record-disclosure-body { padding: 14px; }

@media (max-width: 1280px) {
  .portfolio-ledger-summary { grid-template-columns: minmax(175px, .6fr) minmax(400px, 1.4fr) minmax(180px, .6fr); }
  .property-detail-board { grid-template-columns: minmax(500px, 1.25fr) minmax(285px, .75fr); }
}

@media (max-width: 1050px) {
  .property-detail-board { grid-template-columns: 1fr; }
  .property-charge-ledger { grid-column: auto; }
  .detail-page .record-detail-stack { grid-template-columns: 1fr; }
  .detail-page .record-detail-stack > [data-detail-section] { grid-column: auto; }
}

@media (max-width: 680px) {
  #page-root.dashboard-workspace-root,
  #page-root.finance-workspace-root,
  #page-root.property-workspace-root { padding-inline: 14px; }
  .dashboard-register-head,
  .dashboard-register-row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .dashboard-register-row { min-height: 40px; }
  .finance-ledger-header { align-items: stretch; flex-direction: column; }
  .finance-ledger-header .button { width: 100%; }
  .finance-ledger-card .finance-ledger-table { min-width: 0; table-layout: auto; border-collapse: separate; }
  .finance-ledger-table thead { display: none; }
  .finance-ledger-table tbody { display: grid; gap: 10px; padding: 10px; }
  .finance-ledger-table tbody tr { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); overflow: hidden; border: 1px solid var(--line); border-radius: 12px; background: #fff; }
  .finance-ledger-card .finance-ledger-table tbody tr:nth-child(even),
  .finance-ledger-card .finance-ledger-table tbody tr:hover { background: #fff; }
  .finance-ledger-card .finance-ledger-table td { min-width: 0; height: auto; display: grid; align-content: start; gap: 5px; padding: 10px 12px; border-right: 1px solid var(--line-soft); border-bottom: 1px solid var(--line-soft); white-space: normal; }
  .finance-ledger-table td:nth-child(even) { border-right: 0; }
  .finance-ledger-table td::before { content: attr(data-label); color: var(--ink-500); font-size: 8px; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; }
  .finance-ledger-table td[data-label="Mülk"],
  .finance-ledger-table td[data-label="Açıklama"] { grid-column: 1 / -1; border-right: 0; }
  .finance-ledger-table td[data-label="İşlem"] { border-bottom: 0; }
  .finance-ledger-description { white-space: normal; }
  .property-list-header { align-items: stretch; flex-direction: column; }
  .property-list-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .property-list-actions .button { width: 100%; padding-inline: 7px; }
  .property-month-picker { grid-template-columns: 1fr; }
  .property-month-picker-title { padding: 10px 12px; border-right: 0; border-bottom: 1px solid var(--line-soft); }
  .property-month-button { min-width: 58px; flex-basis: 58px; }
  .property-ledger-card .property-table { min-width: 0; table-layout: auto; }
  .portfolio-ledger-summary { grid-template-columns: 1fr; }
  .portfolio-month-control { border-right: 0; border-bottom: 1px solid var(--line-soft); }
  .portfolio-ledger-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .portfolio-ledger-metrics > div:nth-child(2) { border-right: 0; }
  .portfolio-ledger-metrics > div { border-bottom: 1px solid var(--line-soft); }
  .portfolio-ledger-flags { grid-column: auto; }
  .property-sheet-field.property-sheet-title-field,
  .property-sheet-field.property-sheet-action-field { grid-template-columns: 90px minmax(0, 1fr); }
  .property-sheet-value { align-items: flex-start; flex-direction: column; gap: 5px; }
  .property-sheet-actions { justify-content: flex-start; }
  .property-sheet-grid { grid-template-columns: 1fr; }
  .property-sheet-field, .property-sheet-field.wide { grid-column: auto; grid-template-columns: minmax(95px, .7fr) minmax(0, 1.3fr); border-right: 0; }
  .property-tenant-actions { flex-direction: column; }
  .property-charge-ledger .card-header { align-items: stretch; flex-direction: column; }
  .property-charge-ledger .card-header .button { width: 100%; }
}

/* Masaüstü menüsü daraltıldığında içerik alanı genişler; ikonlar erişilebilir kalır. */
@media (min-width: 881px) {
  body.sidebar-collapsed .sidebar { width: 82px; padding-inline: 12px; }
  body.sidebar-collapsed .main-area { margin-left: 82px; }
  body.sidebar-collapsed .brand-row { display: grid; justify-items: center; justify-content: center; gap: 12px; padding-inline: 0; }
  body.sidebar-collapsed .brand { justify-content: center; }
  body.sidebar-collapsed .brand > span:last-child { display: none; }
  body.sidebar-collapsed .sidebar-collapse svg { transform: rotate(180deg); }
  body.sidebar-collapsed .nav-label { display: none; }
  body.sidebar-collapsed .nav-group + .nav-group { margin-top: 12px; }
  body.sidebar-collapsed .nav-link { position: relative; justify-content: center; gap: 0; padding-inline: 0; }
  body.sidebar-collapsed .nav-link > span:not(.nav-badge) { display: none; }
  body.sidebar-collapsed .nav-link .nav-badge,
  body.sidebar-collapsed .nav-summary .nav-badge { position: absolute; top: 1px; right: 1px; min-width: 16px; height: 16px; padding: 0 4px; border: 2px solid var(--forest-900); font-size: 7px; }
  body.sidebar-collapsed .nav-summary { position: relative; justify-content: center; gap: 0; padding-inline: 0; }
  body.sidebar-collapsed .nav-summary > span:not(.nav-badge),
  body.sidebar-collapsed .nav-summary-chevron { display: none; }
  body.sidebar-collapsed .nav-disclosure .nav-list { display: none; }
  body.sidebar-collapsed .sidebar-user { grid-template-columns: 1fr; justify-items: center; padding-inline: 0; }
  body.sidebar-collapsed .sidebar-user .user-meta,
  body.sidebar-collapsed .sidebar-user .signout-button { display: none; }
}

@media (min-width: 881px) {
  body.settings-workspace-active { height: 100vh; min-height: 0; overflow: hidden; }
  body.settings-workspace-active .app-shell { height: 100vh; min-height: 0; overflow: hidden; }
  body.settings-workspace-active .main-area {
    height: 100vh;
    min-height: 0;
    display: flex;
    flex-direction: column;
    overflow: hidden;
  }
  body.settings-workspace-active .topbar { flex: 0 0 auto; }
  #page-root.settings-workspace-root {
    min-height: 0;
    flex: 1 1 auto;
    overflow: hidden;
  }
  .settings-workspace-root > .page-stack {
    height: 100%;
    min-height: 0;
    grid-template-rows: minmax(0, 1fr);
    grid-auto-rows: auto;
    overflow: hidden;
  }
  .settings-workspace-root .team-grid { min-height: 0; overflow: hidden; }
}

/* Mülk detayı: solda kayıt fişi, sağda kod sıralı hızlı mülk geçişi. */
.property-detail-board {
  grid-template-columns: minmax(620px, 1fr) minmax(260px, 330px);
  grid-template-areas:
    "property-main property-index"
    "property-ledger property-ledger";
  align-items: start;
}
.property-detail-main {
  grid-area: property-main;
  min-width: 0;
  display: grid;
  gap: 8px;
}
.property-detail-main > .record-action-card {
  min-height: 54px;
  margin: 0;
  padding: 7px 10px;
  border-radius: 3px;
  box-shadow: none;
}
.property-detail-main > .record-action-card > .item-icon { width: 34px; height: 34px; }
.property-detail-main > .record-action-card > div > strong { font-size: 12px; }
.property-detail-main > .record-action-card > div > p { font-size: 9.5px; }
.property-detail-main > .record-action-card .button { min-height: 31px; padding-inline: 11px; font-size: 11px; }
.property-detail-index {
  grid-area: property-index;
  min-width: 0;
  min-height: 0;
  align-self: stretch;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  overflow: hidden;
  border-radius: 3px;
  box-shadow: none;
}
.property-detail-index-head {
  min-height: 34px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 5px 8px;
  color: #fff;
  background: #365f54;
}
.property-detail-index-head strong { font-size: 9px; letter-spacing: .1em; }
.property-detail-index-head > small { flex: 0 0 auto; color: #e6efec; font-size: 9.5px; }
.property-detail-index-columns,
.property-detail-index-item {
  display: grid;
  grid-template-columns: minmax(70px, .34fr) minmax(0, 1fr);
}
.property-detail-index-columns {
  min-height: 26px;
  align-items: center;
  border-bottom: 1px solid #bcc8c3;
  color: #365f54;
  background: #e5e9e6;
  font-size: 9px;
  font-weight: 800;
}
.property-detail-index-columns span { padding: 5px 8px; }
.property-detail-index-columns span:first-child { border-right: 1px solid #cbd3cf; }
.property-detail-index-list {
  min-height: 0;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-width: thin;
  scrollbar-color: #9eaaa5 #eef1ef;
}
.property-detail-index-item {
  width: 100%;
  min-height: 39px;
  align-items: stretch;
  padding: 0;
  border: 0;
  border-bottom: 1px solid #d8dedb;
  color: #18241f;
  background: #fff;
  cursor: pointer;
  text-align: left;
}
.property-detail-index-item:nth-child(even) { background: #f1f3f1; }
.property-detail-index-item:hover { background: #deebe5; }
.property-detail-index-item:focus-visible { position: relative; z-index: 1; outline: 2px solid #2f8069; outline-offset: -2px; }
.property-detail-index-code {
  display: flex;
  align-items: center;
  padding: 6px 8px;
  border-right: 1px solid #d8dedb;
  color: #365f54;
  font-size: 10px;
  font-weight: 800;
  white-space: nowrap;
}
.property-detail-index-copy {
  min-width: 0;
  display: grid;
  align-content: center;
  gap: 1px;
  padding: 5px 8px;
}
.property-detail-index-copy strong,
.property-detail-index-copy small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.property-detail-index-copy strong { font-size: 10.5px; }
.property-detail-index-copy small { color: #68746f; font-size: 8.5px; }
.property-detail-index-item.active,
.property-detail-index-item.active:hover { color: #fff; background: #3d7d6c; }
.property-detail-index-item.active .property-detail-index-code { color: #fff; border-right-color: #78a396; }
.property-detail-index-item.active .property-detail-index-copy small { color: #dbeae5; }
.property-charge-ledger { grid-area: property-ledger; }
.property-detail-main .property-tenant-identity { min-height: 54px; margin: 8px 8px 0; }
.property-detail-main .property-tenant-facts { margin: 8px; }
.property-detail-main .property-tenant-facts > div { min-height: 44px; padding: 6px 8px; }
.property-detail-main .property-tenant-actions { margin: auto 8px 8px; }

@media (min-width: 961px) {
  .property-detail-board { grid-template-columns: minmax(620px, 1fr) minmax(260px, 330px); }
}

@media (max-width: 960px) {
  .property-detail-board {
    grid-template-columns: 1fr;
    grid-template-areas:
      "property-main"
      "property-index"
      "property-ledger";
  }
  .property-detail-index { height: 320px; max-height: 320px; }
}

@media (max-width: 880px) {
  .sidebar-collapse { display: none !important; }
}


/* ==========================================================================
   PORTAL KATMANI
   Bu bolumdeki secicilerin hepsi YENI bilesenlere ait; yukaridaki hicbir
   kurali yeniden tanimlamaz. Amac operator ekrani: kapsam matrisi kalici,
   sekmeler menuyu 11 hedeften 5'e indirir, defter satiri ~26px.
   ========================================================================== */

/* --- Merkez sekmeleri ---------------------------------------------------- */
.hub-tabs {
  display: flex;
  align-items: stretch;
  gap: 2px;
  overflow-x: auto;
  margin-bottom: 12px;
  padding: 3px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: var(--surface-soft);
  scrollbar-width: thin;
}
.hub-tab {
  min-height: 32px;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  flex: 0 0 auto;
  padding: 0 13px;
  border: 0;
  border-radius: 7px;
  color: var(--ink-600);
  background: transparent;
  cursor: pointer;
  font-size: 12.5px;
  font-weight: 600;
  white-space: nowrap;
  transition: color .15s ease, background .15s ease, box-shadow .15s ease;
}
.hub-tab:hover { color: var(--ink-950); background: rgba(23, 63, 50, .06); }
.hub-tab.active {
  color: var(--forest-900);
  background: #fff;
  box-shadow: 0 1px 2px rgba(22, 34, 28, .06), 0 2px 8px rgba(22, 34, 28, .05);
}
.hub-tab-badge {
  min-width: 18px;
  height: 17px;
  display: grid;
  place-items: center;
  padding: 0 5px;
  border-radius: 99px;
  color: #fff;
  background: var(--amber-700);
  font-size: 10px;
  font-weight: 700;
}

/* --- Kapsam matrisi (yil x ay) ------------------------------------------- */
/* Ay degistirmek icin sayfa degistirmek gerekmiyor: 36-48 donem tek tik. */
.scope-matrix { overflow: hidden; }
.scope-head {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px 18px;
  padding: 9px 14px;
  border-bottom: 1px solid var(--line-soft);
  background: linear-gradient(135deg, var(--forest-50), #fff);
}
.scope-title { display: grid; gap: 1px; margin-right: auto; }
.scope-title span { color: var(--forest-700); font-size: 9.5px; font-weight: 800; letter-spacing: .12em; }
.scope-title strong { font: 700 15px/1.2 "Manrope", sans-serif; text-transform: capitalize; }
.scope-reports { display: flex; gap: 5px; }
.scope-report {
  min-height: 28px;
  padding: 0 11px;
  border: 1px solid var(--line);
  border-radius: 7px;
  color: var(--ink-600);
  background: #fff;
  cursor: pointer;
  font-size: 11.5px;
  font-weight: 600;
  white-space: nowrap;
  transition: .15s ease;
}
.scope-report:hover { border-color: #bfc9c1; color: var(--ink-950); }
.scope-report.active { border-color: var(--forest-700); color: #fff; background: var(--forest-800); }
.scope-legend { display: flex; flex-wrap: wrap; gap: 4px 13px; }
.scope-legend span {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  color: var(--ink-500);
  font-size: 10.5px;
  white-space: nowrap;
}
.scope-legend span::before {
  content: "";
  width: 8px;
  height: 8px;
  flex: 0 0 auto;
  border-radius: 2px;
  background: currentColor;
}
.scope-legend .success::before { background: var(--forest-600); }
.scope-legend .warning::before { background: var(--amber-500); }
.scope-legend .danger::before { background: var(--red-700); }
.scope-legend .empty::before { background: #d3d9d5; }

.scope-grid { display: grid; }
.scope-row {
  display: grid;
  grid-template-columns: 56px minmax(0, 1fr);
  align-items: stretch;
  border-top: 1px solid var(--line-soft);
}
.scope-row:first-child { border-top: 0; }
.scope-year {
  display: grid;
  place-items: center;
  border-right: 1px solid var(--line-soft);
  color: var(--ink-600);
  background: var(--surface-soft);
  font-size: 11.5px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
}
.scope-cells { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); }
.scope-cell {
  position: relative;
  min-height: 30px;
  display: grid;
  place-items: center;
  border: 0;
  border-right: 1px solid var(--line-soft);
  color: var(--ink-600);
  background: #fff;
  cursor: pointer;
  font-size: 11px;
  font-weight: 600;
  transition: color .13s ease, background .13s ease;
}
.scope-cell:last-child { border-right: 0; }
.scope-cell::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 4px;
  width: 4px;
  height: 4px;
  transform: translateX(-50%);
  border-radius: 50%;
  background: #d3d9d5;
}
.scope-cell.success::after { background: var(--forest-600); }
.scope-cell.warning::after { background: var(--amber-500); }
.scope-cell.danger::after { background: var(--red-700); }
.scope-cell.empty::after { opacity: .35; }
.scope-cell:hover:not([disabled]) { color: var(--forest-900); background: var(--forest-50); }
.scope-cell.active {
  color: #fff;
  background: var(--forest-800);
  box-shadow: inset 0 0 0 1px var(--forest-700);
}
.scope-cell.active::after { background: rgba(255, 255, 255, .85); }
.scope-cell[disabled] { color: #b4bcb7; background: var(--surface-soft); cursor: not-allowed; }
.scope-cell[disabled]::after { display: none; }
.scope-cell:focus-visible { outline: 2px solid rgba(48, 131, 97, .45); outline-offset: -2px; }

/* --- Defter ana ekrani --------------------------------------------------- */
.ledger-home { padding-top: 0; }

/* Grafik ve aksiyon listesi kapali baslar: ekranin ust yarisi artik veriye
   ait. Panelin acik/kapali durumu render'lar arasinda hatirlanir. */
.ledger-analysis { overflow: hidden; }
.ledger-analysis-summary {
  min-height: 42px;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 0 14px;
  cursor: pointer;
  color: var(--ink-800);
  font-size: 12.5px;
  font-weight: 600;
  list-style: none;
}
.ledger-analysis-summary::-webkit-details-marker { display: none; }
.ledger-analysis-summary:hover { background: var(--surface-soft); }
.ledger-analysis-summary > svg:first-child { width: 16px; color: var(--forest-700); }
.ledger-analysis-summary em {
  padding: 2px 8px;
  border-radius: 99px;
  color: var(--amber-700);
  background: var(--amber-50);
  font-size: 10.5px;
  font-style: normal;
  font-weight: 700;
}
.ledger-analysis-chevron { width: 15px; margin-left: auto; color: var(--ink-500); rotate: 90deg; transition: rotate .18s ease; }
.ledger-analysis[open] .ledger-analysis-chevron { rotate: -90deg; }
.ledger-analysis[open] .ledger-analysis-summary { border-bottom: 1px solid var(--line-soft); }
.ledger-analysis > .dashboard-grid,
.ledger-analysis > .lower-grid { padding: 12px; }
.ledger-analysis > .lower-grid { padding-top: 0; }

/* --- Defter hucreleri: kod + ad TEK satirda ------------------------------ */
/* Iki satirlik hucre satir adimini 51px'ten 72px'e cikariyordu. Kod artik
   adin solunda soluk bir onek. */
.ledger-idcell {
  width: 100%;
  min-width: 0;
  display: flex;
  align-items: baseline;
  gap: 7px;
  overflow: hidden;
}
.property-ledger-card .ledger-idcell { display: flex; }
.ledger-code {
  flex: 0 0 auto;
  color: var(--ink-500);
  font-size: 10.5px;
  font-weight: 600;
  font-variant-numeric: tabular-nums;
}
.ledger-idcell > strong {
  min-width: 0;
  overflow: hidden;
  font: 600 12.5px/1.3 "DM Sans", sans-serif;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.ledger-owner, .ledger-vacant {
  display: block;
  overflow: hidden;
  color: var(--ink-600);
  text-overflow: ellipsis;
  white-space: nowrap;
}
.ledger-vacant { color: #a8b0ab; }

/* Sabit kolon duzeninde eski min-width'ler kolonlari zorluyordu. */
.property-ledger-card .table-record-link { min-width: 0; }
.property-ledger-card .property-tenant-link { padding: 0; }

/* Ilk kolon yatay kaydirmada sabit kalir: hangi mulkte oldugunuzu kaybetmeyin.
   Baslik satiri zaten sticky; ikisi birlikte tam capa olusturur. */
.property-ledger-card .property-table th:first-child,
.property-ledger-card .property-table td:first-child {
  position: sticky;
  left: 0;
  z-index: 1;
  background: #fff;
}
.property-ledger-card .property-table th:first-child { z-index: 3; background: var(--surface-soft); }
.property-ledger-card .property-table tbody tr:hover td:first-child { background: var(--forest-50); }

@media (max-width: 1050px) {
  .scope-legend { display: none; }
}

@media (max-width: 880px) {
  /* Dokunmatikte hedef boyutu korunur: dar ekranda otomatik rahat yogunluk. */
  :root { --row-py: 11px; --row-px: 12px; --cell-lh: 1.45; }
  .scope-row { grid-template-columns: 46px minmax(0, 1fr); }
  .scope-cell { min-height: 34px; font-size: 10.5px; }
  .property-ledger-card .property-table th:first-child,
  .property-ledger-card .property-table td:first-child { position: static; }
}

@media (max-width: 680px) {
  .scope-head { gap: 8px; padding: 9px 11px; }
  .scope-reports { width: 100%; }
  .scope-report { flex: 1; text-align: center; }
  .scope-cells { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  .hub-tabs { margin-bottom: 9px; }
  .ledger-analysis > .dashboard-grid,
  .ledger-analysis > .lower-grid { padding: 9px; }
}


/* ==========================================================================
   DEFTER YUZEYI
   Kart cercevesi (kenar + golge + 16px yaricap + 21px dolgu) her bolumde
   ~46px yatay ve ~40px dikey aliyordu. Defter artik tek surekli yuzey:
   bolumler kil payi cizgilerle ayriliyor, tablo tam genislige cikiyor.
   ========================================================================== */

.ledger-home { gap: 0; }

/* Tam genislik: sayfa dolgusu kadar negatif marj. 1366px'de tabloya
   fazladan 44px kazandirir. */
.ledger-home > .card,
.ledger-home > .ledger-analysis {
  margin-inline: calc(var(--page-px) * -1);
  border-right: 0;
  border-left: 0;
  border-radius: 0;
  box-shadow: none;
}
.ledger-home > .card + .card,
.ledger-home > .card + .ledger-analysis { border-top: 0; }

.ledger-home .card-header { padding: 8px var(--page-px); }
.ledger-home .card-header h3 { margin-bottom: 1px; font-size: 14px; }
.ledger-home .card-header p { font-size: 11.5px; }
.ledger-home .scope-head,
.ledger-home .portfolio-ledger-summary > * { padding-inline: var(--page-px); }
.ledger-home .table-scroll > .data-table th:first-child,
.ledger-home .table-scroll > .data-table td:first-child { padding-left: var(--page-px); }
.ledger-home .table-scroll > .data-table th:last-child,
.ledger-home .table-scroll > .data-table td:last-child { padding-right: var(--page-px); }

/* --- Zebra: yogun satiri taranabilir yapan asil unsur ------------------- */
.property-ledger-card .property-table tbody tr:nth-child(even) { background: #f6f8f6; }
.property-ledger-card .property-table tbody tr:hover { background: var(--forest-50); }
.property-ledger-card .property-table tbody tr:nth-child(even) td:first-child { background: #f6f8f6; }
.property-ledger-card .property-table tbody tr:hover td:first-child { background: var(--forest-50); }
.property-ledger-card .property-table td { border-bottom-color: #e9ede9; }

/* --- Kontrast: satirdaki en onemli metin en koyu olmali ----------------- */
.property-ledger-card .ledger-idcell > strong { color: var(--ink-950); font-weight: 650; }
.property-ledger-card .ledger-code { color: var(--ink-500); }
.property-ledger-card .ledger-owner { color: var(--ink-700); }
.property-ledger-card .ledger-date { color: var(--ink-800); font-variant-numeric: tabular-nums; }
.property-ledger-card .money { color: var(--ink-950); font-variant-numeric: tabular-nums; }
.property-ledger-card .collected-money { color: var(--forest-700); }
.property-ledger-card .ledger-balance { font-weight: 700; }
/* Bakiye sifirsa durum bilgisi zaten sayida: ayri durum etiketi gerekmiyor. */
.property-ledger-card .ledger-balance.is-open { color: var(--red-700); }

/* --- Kolon genislikleri: 10 kolon, yatay kaydirma yok ------------------- */
/* Tutar kolonlari saga hizali: rakamlar alt alta okunur. */
.property-ledger-card .property-table th:nth-child(n+5):nth-child(-n+9),
.property-ledger-card .property-table td:nth-child(n+5):nth-child(-n+9) { text-align: right; }

/* --- Kapsam matrisi: tam ay adlari -------------------------------------- */
.scope-month-short { display: none; }
.scope-cell { padding: 0 4px; }
.scope-cell > span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
/* Planlanan donem: secilebilir ama gecmisten ayirt edilir. */
.scope-cell.is-future { color: var(--ink-400); background: repeating-linear-gradient(135deg, #fff 0 5px, #fafbfa 5px 10px); }
.scope-cell.is-future:hover { color: var(--forest-800); background: var(--forest-50); }
.scope-cell.is-future.active { color: #fff; background: var(--forest-700); }
.scope-legend .future::before { background: repeating-linear-gradient(135deg, #d8ddd9 0 3px, #fff 3px 6px); }

/* --- Analiz paneli ------------------------------------------------------ */
.ledger-analysis { border-top: 1px solid var(--line); background: var(--surface); }
.ledger-analysis-body { padding: 12px var(--page-px) 18px; }
.ledger-analysis-head { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin-bottom: 12px; }
.ledger-analysis-note { color: var(--ink-500); font-size: 11.5px; }
.ledger-analysis-summary { padding-inline: var(--page-px); }

@media (max-width: 1240px) {
  /* Tam ay adi sigmadiginda kisa ada duser; matris hep 12 kolon kalir. */
  .scope-month-full { display: none; }
  .scope-month-short { display: inline; }
}

@media (max-width: 880px) {
  .ledger-home > .card,
  .ledger-home > .ledger-analysis { margin-inline: 0; }
  .ledger-home .card-header,
  .ledger-home .scope-head,
  .ledger-home .ledger-analysis-body,
  .ledger-home .ledger-analysis-summary { padding-inline: 12px; }
  .ledger-home .table-scroll > .data-table th:first-child,
  .ledger-home .table-scroll > .data-table td:first-child { padding-left: 12px; }
  .ledger-home .table-scroll > .data-table th:last-child,
  .ledger-home .table-scroll > .data-table td:last-child { padding-right: 12px; }
}

/* ========================================================================== 
   KAYIT DEFTERİ ARAYÜZÜ
   Dört ana çalışma alanı aynı sıkı tablo dilini kullanır. Dekoratif kart ve
   geniş boşluklar kaldırılır; içerik, masaüstü kayıt uygulamalarındaki gibi
   çizgilerle ayrılan tek bir çalışma yüzeyinde kalır.
   ========================================================================== */

:root {
  --canvas: #ecefec;
  --surface-soft: #f3f5f3;
  --line: #cfd5d1;
  --line-soft: #dde2de;
  --shadow-sm: none;
  --shadow-md: 0 10px 28px rgba(22, 34, 28, .13);
  --radius-sm: 3px;
  --radius: 4px;
  --radius-lg: 5px;
  --sidebar-width: 228px;
  --topbar-height: 52px;
  --page-px: 14px;
  --row-py: 5px;
  --row-px: 8px;
  --cell-fs: 12px;
  --head-fs: 10px;
  font-family: "Segoe UI", Arial, sans-serif;
}

body,
button,
input,
select,
textarea { font-family: "Segoe UI", Arial, sans-serif; }

body { background: var(--canvas); }
.main-area { background: var(--canvas); }

/* Kapalı menü veri alanını küçültmez; dört hedef ikonla erişilebilir kalır. */
.sidebar {
  padding: 12px 10px 10px;
  background: #263b35;
  box-shadow: inset -1px 0 rgba(0, 0, 0, .2);
}
.brand-row { padding: 0 5px 14px; }
.brand-mark { width: 31px; height: 34px; border-radius: 4px; }
.brand strong { font: 700 17px/1 "Segoe UI", Arial, sans-serif; letter-spacing: .1em; }
.brand small { margin-top: 4px; font-size: 7px; }
.nav-group + .nav-group { margin-top: 8px; }
.nav-label { padding: 0 9px 6px; font: 700 8px/1 "Segoe UI", Arial, sans-serif; }
.nav-list { gap: 2px; }
.nav-link,
.nav-summary {
  min-height: 38px;
  border-radius: 3px;
  font-size: 12px;
}
.nav-link.active { background: #42665b; box-shadow: inset 3px 0 #e0b863; }
.sidebar-user { padding-top: 9px; }

.topbar {
  min-height: var(--topbar-height);
  gap: 12px;
  padding: 6px 14px;
  border-bottom-color: #cbd1cd;
  background: #f7f8f7;
  backdrop-filter: none;
}
.topbar-title-wrap { gap: 9px; }
.topbar-title-wrap .eyebrow { display: none; }
.topbar h1 { font: 650 18px/1.15 "Segoe UI", Arial, sans-serif; letter-spacing: 0; }
.topbar-actions { gap: 6px; }
.global-search {
  width: min(380px, 35vw);
  height: 36px;
  gap: 7px;
  padding: 0 7px 0 10px;
  border-color: #cbd1cd;
  border-radius: 3px;
  background: #fff;
}
.global-search:focus-within {
  width: min(420px, 38vw);
  border-color: var(--forest-600);
  box-shadow: 0 0 0 2px rgba(48, 131, 97, .12);
}
.global-search input { font-size: 12px; }
.global-search input::-webkit-search-cancel-button { -webkit-appearance: none; appearance: none; }
.global-search kbd { border-radius: 2px; }
.search-clear {
  width: 22px;
  height: 22px;
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  padding: 0 0 2px;
  border: 0;
  border-radius: 2px;
  color: var(--ink-500);
  background: transparent;
  cursor: pointer;
  font-size: 18px;
  line-height: 1;
}
.search-clear:hover { color: var(--ink-950); background: var(--line-soft); }
.global-search input:placeholder-shown ~ .search-clear { display: none; }
.global-search input:not(:placeholder-shown) ~ kbd { display: none; }
.icon-button { width: 36px; height: 36px; border-radius: 3px; }
.notification-button { background: #fff; }
.button {
  min-height: 34px;
  padding-inline: 11px;
  border-radius: 3px;
  font-size: 11px;
}
.button:hover { transform: none; }
.button-primary { background: #2f6655; box-shadow: none; }
.button-small { min-height: 29px; border-radius: 3px; font-size: 10.5px; }

.page-container { max-width: none; padding: 10px var(--page-px) 24px; }
.page-stack { gap: 8px; }
.section-head { min-height: 39px; align-items: center; gap: 12px; }
.section-head h2,
.section-head h3 { margin-bottom: 1px; font: 650 15px/1.2 "Segoe UI", Arial, sans-serif; letter-spacing: 0; }
.section-head p { font-size: 10px; }
.section-actions { gap: 5px; }

.card {
  border-color: var(--line);
  border-radius: 3px;
  box-shadow: none;
}
.card-pad { padding: 12px; }
.card-header { padding: 9px 11px; border-bottom-color: var(--line); }
.card-header h3 { font: 650 13px/1.2 "Segoe UI", Arial, sans-serif; letter-spacing: 0; }
.card-header p { font-size: 9.5px; }
.card-body { padding: 10px 11px; }

/* Alt işlevler yeni sayfa gibi görünmez; ana çalışma alanının sekmeleridir. */
.hub-tabs {
  min-height: 35px;
  gap: 0;
  margin: -10px calc(var(--page-px) * -1) 8px;
  padding: 0 var(--page-px);
  border: 0;
  border-bottom: 1px solid #bfc7c2;
  border-radius: 0;
  background: #dfe4e1;
}
.hub-tab {
  min-height: 34px;
  padding: 0 13px;
  border-right: 1px solid #c7ceca;
  border-radius: 0;
  color: #46534d;
  font-size: 11.5px;
}
.hub-tab:first-child { border-left: 1px solid #c7ceca; }
.hub-tab:hover { background: #eef1ef; }
.hub-tab.active {
  color: #fff;
  background: #3e6b5e;
  box-shadow: none;
}
.hub-tab-badge { height: 16px; min-width: 16px; padding-inline: 4px; font-size: 9px; }

.toolbar { min-height: 40px; padding: 5px 8px; border-radius: 3px; }
.filter-chips { gap: 3px; }
.filter-chip,
.view-toggle,
.view-toggle-button,
.range-switch,
.range-switch button,
.status-pill,
.role-pill,
.mail-integration-badge { border-radius: 2px; }
.filter-chip { min-height: 28px; padding-inline: 9px; }

/* Bütün ana listeler aynı elektronik tablo davranışını kullanır. */
.table-card { border-radius: 3px; }
.table-scroll { scrollbar-width: thin; }
.data-table { border-collapse: separate; border-spacing: 0; }
.data-table th {
  position: sticky;
  top: 0;
  z-index: 2;
  padding: 7px 8px;
  border-right: 1px solid #6f8b82;
  border-bottom: 1px solid #31574c;
  color: #fff;
  background: #416b5f;
  font-size: var(--head-fs);
  letter-spacing: .025em;
}
.data-table th:last-child { border-right: 0; }
.data-table td {
  height: 34px;
  padding: var(--row-py) var(--row-px);
  border-right: 1px solid #d7dcd8;
  border-bottom: 1px solid #d7dcd8;
  font-size: var(--cell-fs);
  line-height: 1.2;
}
.data-table td:last-child { border-right: 0; }
.data-table tbody tr:nth-child(even) { background: #f3f5f3; }
.data-table tbody tr:hover { background: #e7f1ec; }
.data-table tbody tr:last-child td { border-bottom: 1px solid #d7dcd8; }
.table-sort { padding: 7px 8px; color: inherit; }
.table-sort:hover,
.table-sort.active { color: #fff; }
.cell-avatar { border-radius: 2px; }
.row-action { border-radius: 2px; }

.property-ledger-card .table-scroll,
.tenant-operations-table + * { scrollbar-width: thin; }
.property-ledger-card .table-scroll { max-height: calc(100vh - 292px); min-height: 310px; overflow: auto; }
.property-ledger-card .property-table th { color: #fff; background: #416b5f; border-right-color: #6f8b82; border-bottom-color: #31574c; }
.property-ledger-card .property-table th:first-child { background: #365c52; }
.property-ledger-card .property-table td { height: 32px; border-right-color: #d7dcd8; border-bottom-color: #d7dcd8; }
.property-ledger-card .property-table tbody tr:nth-child(even),
.property-ledger-card .property-table tbody tr:nth-child(even) td:first-child { background: #f3f5f3; }
.property-ledger-card .property-table tbody tr:hover,
.property-ledger-card .property-table tbody tr:hover td:first-child { background: #e7f1ec; }
.property-ledger-note { height: 23px; border-radius: 2px; }

.scope-matrix,
.portfolio-ledger-summary { border-radius: 3px; }
.scope-head { padding-block: 6px; background: #eef2ef; }
.scope-title strong { font: 650 14px/1.2 "Segoe UI", Arial, sans-serif; }
.scope-report { min-height: 26px; border-radius: 2px; }
.scope-cell { min-height: 28px; border-right-color: #d2d8d4; border-radius: 0; }
.scope-cell.active { background: #315f51; }
.portfolio-ledger-summary > * { min-height: 54px; }

.summary-grid,
.finance-summary-grid { gap: 0; }
.summary-grid > .card,
.finance-summary-grid > .card {
  border-radius: 0;
  border-right-width: 0;
}
.summary-grid > .card:first-child,
.finance-summary-grid > .card:first-child { border-radius: 3px 0 0 3px; }
.summary-grid > .card:last-child,
.finance-summary-grid > .card:last-child { border-right-width: 1px; border-radius: 0 3px 3px 0; }
.summary-tile,
.finance-metric { min-height: 72px; padding: 9px 11px; }
.finance-metric strong { margin-block: 3px; font-size: 15px; }

/* Büyük tanıtım blokları işlem şeridine dönüştürülür. */
.hero-strip {
  min-height: auto !important;
  padding: 12px 14px;
  border: 1px solid var(--line);
  border-radius: 3px;
  color: var(--ink-950);
  background: #eef2ef;
  box-shadow: none;
}
.hero-strip::after { display: none; }
.hero-copy .eyebrow { color: var(--forest-700); }
.hero-copy h2 { margin-bottom: 4px; font: 650 17px/1.2 "Segoe UI", Arial, sans-serif; letter-spacing: 0; }
.hero-copy p { color: var(--ink-600); font-size: 10px; }
.hero-meta { gap: 0; border: 1px solid var(--line); }
.hero-meta-item { min-height: 56px; padding: 8px 10px; border: 0; border-right: 1px solid var(--line); border-radius: 0; color: var(--ink-950); background: #fff; backdrop-filter: none; }
.hero-meta-item:nth-child(2n) { border-right: 0; }
.hero-meta-item span { color: var(--ink-500); }
.hero-meta-item strong { margin: 3px 0; font: 650 14px/1 "Segoe UI", Arial, sans-serif; }
.hero-meta-item small { color: var(--forest-700); }

.account-strip,
.bank-freshness-strip,
.integration-flow,
.finance-scope-bar,
.setup-tools-card { border-radius: 3px; box-shadow: none; }
.integration-flow { gap: 0; }
.integration-step { border-radius: 0; }
.proposal-grid { gap: 7px; }
.proposal-card { border-radius: 3px; }

/* Mülk fişi: renkli alan başlıkları ve sıkı satırlar referans düzenini izler. */
.property-detail-board { gap: 8px; }
.property-information-sheet,
.property-tenant-sheet,
.property-charge-ledger { border-radius: 3px; }
.property-sheet-head { min-height: 55px; padding: 9px 11px; border-bottom-color: var(--line); border-radius: 0; background: #e5e9e6; }
.property-sheet-head h3 { font: 650 14px/1.2 "Segoe UI", Arial, sans-serif; }
.property-sheet-field { min-height: 38px; border-color: #d4dad6; }
.property-sheet-field > span,
.property-sheet-field > strong { padding: 6px 9px; }
.property-sheet-field > span { color: #263d36; background: #e1e5e2; font-size: 10.5px; }
.property-sheet-field > strong { font-size: 12px; }
.property-sheet-field.forest > span { color: #15523f; background: #cfe7dc; }
.property-sheet-field.blue > span { color: #28547c; background: #d5e3f1; }
.property-sheet-field.gold > span { color: #744b0f; background: #f3dfb9; }
.property-tenant-identity,
.property-tenant-facts { border-radius: 2px; }
.property-charge-ledger .property-charge-table th { color: #fff; background: #416b5f; border-right-color: #6f8b82; }
.detail-page .record-detail-stack { gap: 7px; }
.detail-page .record-disclosure > summary { min-height: 48px; padding: 8px 10px; }
.detail-page .record-disclosure-body { padding: 9px 10px; }
.record-disclosure { border-radius: 3px; }
.record-disclosure > summary { border-radius: 2px; }

/* Fotoğraflar menü açıldığında doğrudan küçük önizlemeler halinde görünür. */
.property-photo-strip,
.photo-gallery-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(118px, 1fr)); gap: 6px; }
.property-photo-thumb,
.photo-gallery-tile { border-radius: 2px; }
.property-photo-thumb { min-height: 88px; }
.photo-gallery-tile img { aspect-ratio: 4 / 3; object-fit: cover; }

.drawer { border-radius: 0; }
.drawer-header { border-bottom-color: var(--line); background: #eef1ef; }
.modal { border-radius: 4px; }
.modal-header { background: #eef1ef; }
.field input,
.field select,
.field textarea,
.compact-date-filter input,
.finance-scope-bar select { border-radius: 2px; }

@media (min-width: 881px) {
  body.sidebar-collapsed .sidebar { width: 60px; padding-inline: 7px; }
  body.sidebar-collapsed .main-area { margin-left: 60px; }
  body.sidebar-collapsed .brand-row { gap: 8px; }
  body.sidebar-collapsed .nav-link { min-height: 38px; border-radius: 3px; }
  body.sidebar-collapsed .nav-link svg { width: 17px; height: 17px; }
  body.sidebar-collapsed .sidebar-user { padding-top: 9px; }
}

@media (max-width: 880px) {
  :root { --page-px: 10px; }
  .topbar { padding-inline: 9px; }
  .global-search { width: min(330px, 46vw); }
  .global-search:focus-within { width: min(380px, 52vw); }
  .hub-tabs { margin-inline: -10px; padding-inline: 10px; }
  .property-ledger-card .table-scroll { max-height: none; min-height: 0; }
}

@media (max-width: 680px) {
  .topbar-title-wrap > div { display: none; }
  .topbar-actions { width: calc(100% - 42px); }
  .global-search,
  .global-search:focus-within { width: auto; flex: 1; }
  .topbar-primary span:last-child { display: none; }
  .topbar-primary { width: 36px; padding: 0; }
  .summary-grid,
  .finance-summary-grid { gap: 5px; }
  .summary-grid > .card,
  .finance-summary-grid > .card { border-width: 1px; border-radius: 3px; }
}

/* Referans paleti: koyu çalışma şeridi, gri zemin, yeşil tablo başlıkları ve
   mülk fişindeki belirgin renk grupları. */
:root {
  --canvas: #d8dbd9;
  --surface-soft: #eceeec;
  --forest-900: #234f43;
  --forest-800: #2d6758;
  --forest-700: #397d6c;
  --forest-600: #46927f;
}
.sidebar { background: #2f3332; }
.topbar { border-bottom-color: #222625; color: #fff; background: #3b3f3e; }
.topbar .mobile-menu,
.topbar .notification-button { border-color: #626765; color: #f4f5f4; background: #4a4f4d; }
.topbar .mobile-menu:hover,
.topbar .notification-button:hover { color: #fff; background: #555b58; }
.topbar .notification-button i { border-color: #3b3f3e; }
.global-search { border-color: #737875; color: var(--ink-950); background: #fff; }
.global-search:focus-within { border-color: #82c2ad; box-shadow: 0 0 0 2px rgba(130, 194, 173, .22); }
.topbar-primary { background: #3d8d76; }
.topbar-primary:hover { background: #4a9b83; }
.page-container { background: #d8dbd9; }
.hub-tabs { border-bottom-color: #2c302f; background: #4a4e4d; }
.hub-tab { border-color: #686d6b; color: #eef1ef; }
.hub-tab:first-child { border-left-color: #686d6b; }
.hub-tab:hover { color: #fff; background: #5a605e; }
.hub-tab.active { color: #fff; background: #3d8b75; }
.scope-head { background: #e6e9e7; }
.scope-cell.active,
.property-charge-year-strip button.active { background: #397e6c; }
.data-table th,
.property-ledger-card .property-table th,
.property-charge-ledger .property-charge-table th { border-right-color: #79a397; border-bottom-color: #29584c; background: #3d7d6c; }
.data-table th:first-child,
.property-ledger-card .property-table th:first-child { background: #326a5b; }
.data-table tbody tr:nth-child(even),
.property-ledger-card .property-table tbody tr:nth-child(even),
.property-ledger-card .property-table tbody tr:nth-child(even) td:first-child { background: #e8ebe9; }
.data-table tbody tr:hover,
.property-ledger-card .property-table tbody tr:hover,
.property-ledger-card .property-table tbody tr:hover td:first-child { background: #d9eee6; }

/* Mülk bilgi fişinde alan aileleri referanstaki renk kodlarıyla ayrılır. */
.property-sheet-field > span {
  color: #fff;
  background: #c33d4c;
  text-shadow: 0 1px rgba(0, 0, 0, .16);
}
.property-sheet-field.forest > span {
  color: #f2ef4e;
  background: #292c2b;
}
.property-sheet-field.blue > span {
  color: #fff46a;
  background: #176fd2;
}
.property-sheet-field.gold > span {
  color: #fff;
  background: #6b26ae;
}
.property-sheet-field > strong,
.property-sheet-field > .property-sheet-value,
.property-sheet-field > .property-sheet-actions { background: #fbf8c9; }
.property-sheet-field.blue > strong { background: #d9f1f4; }
.property-sheet-field.gold > strong { background: #f5e6f6; }
.property-sheet-field:not(.forest):not(.blue):not(.gold) > strong { background: #f2d4d7; }
.property-sheet-field.property-sheet-action-field > span { color: #eff36c; background: #292c2b; }
.property-sheet-field.property-sheet-action-field > .property-sheet-actions { background: #e4e7e5; }
.property-tenant-sheet { border-top: 4px solid #6b26ae; }
.property-tenant-identity { border-color: #cfb7dc; background: #f2e6f5; }
.property-tenant-facts > div:nth-child(1),
.property-tenant-facts > div:nth-child(2),
.property-tenant-facts > div:nth-child(5),
.property-tenant-facts > div:nth-child(6) { background: #f7f1c8; }
.property-charge-ledger .card-header { color: #fff; background: #3d7d6c; }
.property-charge-ledger .card-header p { color: rgba(255, 255, 255, .75); }

/* Mülk defteri sabit çalışma yüzeyi: sayfa değil yalnızca kayıt tablosu kayar. */
.topbar-export {
  min-height: 36px;
  border-color: #6a706d;
  color: #fff;
  background: #4a4f4d;
}
.topbar-export:hover { border-color: #82a99d; color: #fff; background: #555b58; }
.topbar-export svg { width: 14px; height: 14px; }

/* Tekrar eden seçili dönem metni kaldırıldığı için özet yalnızca rakamlardan oluşur. */
.portfolio-ledger-summary {
  min-height: 48px;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr);
}
.portfolio-ledger-summary > * { min-height: 48px; }
.portfolio-ledger-metrics > div { gap: 1px; padding-block: 4px; }
.portfolio-ledger-metrics strong,
.portfolio-ledger-flags strong { font-size: 12px; }
.portfolio-period-metric small {
  display: block;
  overflow: hidden;
  color: var(--ink-500);
  font-size: 8px;
  line-height: 1.1;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.portfolio-period-metric > span {
  font-size: 9.5px;
  font-weight: 700;
}
.portfolio-ledger-metrics .portfolio-period-metric > strong {
  font-size: 15px;
  line-height: 1.15;
}
.portfolio-ledger-side {
  min-width: 0;
  display: grid;
  grid-template-rows: 1fr;
  border-left: 1px solid var(--line-soft);
  background: var(--surface-soft);
}
.portfolio-ledger-side-head {
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 5px;
  padding-right: 5px;
}
.portfolio-ledger-side .scope-reports { flex: 0 0 auto; align-items: center; gap: 4px; }
.portfolio-ledger-side .scope-report { min-height: 28px; padding-inline: 11px; font-size: 10.5px; }
.portfolio-ledger-side .scope-legend {
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: nowrap;
  gap: 3px 7px;
  padding: 1px 7px;
  border-top: 1px solid var(--line-soft);
  overflow: hidden;
}
.portfolio-ledger-side .scope-legend span { gap: 3px; font-size: 7.5px; }
.portfolio-ledger-side .scope-legend span::before { width: 6px; height: 6px; }

.scope-row { grid-template-columns: 58px minmax(0, 1fr); }
.scope-year { font-size: 12.5px; }
.scope-cell { min-height: 30px; font-size: 12px; }

/* Satır vurgusu bütün hücrelerde aynı anda ve aynı renkte çalışır. */
.property-ledger-card .property-table tbody tr > td {
  background-color: inherit;
  transition: background-color .12s ease;
}
.property-ledger-card .property-table tbody tr:hover > td {
  background-color: #d9eee6;
}
.property-ledger-card .property-table tbody tr:hover .property-detail-link,
.property-ledger-card .property-table tbody tr:hover .property-tenant-link {
  background: transparent;
}

/* Mülk detayında bütün bilgi grupları aynı kayıt paletini kullanır. */
.property-sheet-field > span,
.property-sheet-field.forest > span,
.property-sheet-field.blue > span,
.property-sheet-field.gold > span,
.property-sheet-field.property-sheet-action-field > span {
  color: #fff;
  background: #365f54;
  text-shadow: none;
}
.property-sheet-field > strong,
.property-sheet-field.blue > strong,
.property-sheet-field.gold > strong,
.property-sheet-field:not(.forest):not(.blue):not(.gold) > strong,
.property-sheet-field > .property-sheet-value,
.property-sheet-field > .property-sheet-actions,
.property-sheet-field.property-sheet-action-field > .property-sheet-actions {
  background: #f6f8f6;
}
.property-sheet-field.property-sheet-title-field > strong,
.property-sheet-field.property-sheet-title-field > .property-sheet-value { background: #edf3f0; }
.property-tenant-sheet { border-top: 1px solid var(--line); }
.property-tenant-identity { border-color: #cbd8d2; background: #edf3f0; }
.property-tenant-facts > div,
.property-tenant-facts > div:nth-child(1),
.property-tenant-facts > div:nth-child(2),
.property-tenant-facts > div:nth-child(5),
.property-tenant-facts > div:nth-child(6) { background: #f8faf8; }

/* Mülk detayı tahsilat defteri daha sık satırlar kullanır. */
.property-charge-ledger .property-charge-table th { padding: 6px 8px; }
.property-charge-ledger .property-charge-table td {
  height: 32px;
  padding: 4px 8px;
  font-size: 10.5px;
  line-height: 1.15;
}
.property-charge-ledger .property-charge-table .row-action {
  min-height: 24px;
  padding-inline: 7px;
  font-size: 9.5px;
}

@media (min-width: 881px) {
  body.property-ledger-active,
  body.tenant-ledger-active { height: 100vh; min-height: 0; overflow: hidden; }
  body.property-ledger-active .app-shell,
  body.tenant-ledger-active .app-shell { height: 100vh; min-height: 0; overflow: hidden; }
  body.property-ledger-active .main-area,
  body.tenant-ledger-active .main-area {
    height: 100vh;
    min-height: 0;
    display: flex;
    flex-direction: column;
    overflow: hidden;
  }
  body.property-ledger-active .topbar,
  body.tenant-ledger-active .topbar { flex: 0 0 auto; }
  #page-root.property-ledger-root,
  #page-root.tenant-ledger-root {
    min-height: 0;
    flex: 1 1 auto;
    display: grid;
    grid-template-rows: auto minmax(0, 1fr);
    padding-inline: 0;
    padding-bottom: 0;
    overflow: hidden;
  }
  #page-root.property-ledger-root > .hub-tabs,
  #page-root.tenant-ledger-root > .hub-tabs {
    margin-right: 0;
    margin-bottom: 0;
    margin-left: 0;
  }
  .property-ledger-root .ledger-home,
  .tenant-ledger-root .tenants-page {
    min-height: 0;
    display: grid;
    grid-template-rows: auto auto minmax(0, 1fr);
    overflow: hidden;
  }
  .property-ledger-root .ledger-home > .card,
  .tenant-ledger-root .tenants-page > .card { margin-inline: 0; }
  .property-ledger-root .property-ledger-card,
  .tenant-ledger-root .tenant-ledger-card {
    min-height: 0;
    display: grid;
    grid-template-rows: minmax(0, 1fr) auto;
  }
  .property-ledger-root .property-ledger-card .table-scroll,
  .tenant-ledger-root .tenant-ledger-card .table-scroll {
    height: 100%;
    min-height: 0;
    max-height: none;
    overflow-x: auto;
    overflow-y: auto;
    overscroll-behavior: contain;
  }
  .property-ledger-root .list-pagination,
  .tenant-ledger-root .list-pagination {
    min-height: 30px;
    flex: 0 0 auto;
    gap: 8px;
    padding: 2px 8px;
    color: var(--ink-600);
    background: #fff;
    font-size: 10px;
    line-height: 1;
  }
  .property-ledger-root .list-pagination > div,
  .tenant-ledger-root .list-pagination > div { gap: 6px; }
  .property-ledger-root .list-pagination .button,
  .tenant-ledger-root .list-pagination .button {
    min-height: 24px;
    height: 24px;
    padding-inline: 7px;
    font-size: 9.5px;
  }
  .property-ledger-root .list-pagination .button svg,
  .tenant-ledger-root .list-pagination .button svg {
    width: 11px;
    height: 11px;
    rotate: 0deg;
  }
  .property-ledger-root .list-pagination .button:first-child svg,
  .tenant-ledger-root .list-pagination .button:first-child svg { rotate: 180deg; }
  .property-ledger-root .list-pagination strong,
  .tenant-ledger-root .list-pagination strong { font-size: 10px; }
  .property-ledger-root .property-ledger-card .property-table td:first-child {
    position: static;
  }
  .property-ledger-root .property-ledger-card .property-table th:first-child {
    left: auto;
  }
}

@media (max-width: 1120px) and (min-width: 681px) {
  .topbar-export span:last-child { display: none; }
  .topbar-export { width: 36px; padding: 0; }
}

@media (max-width: 680px) {
  .topbar-export span:last-child { display: none; }
  .topbar-export { width: 36px; padding: 0; }
  .portfolio-ledger-summary { grid-template-columns: 1fr; }
}

/* Mülk listesindeki kayıt yoğunluğu bütün ana çalışma alanlarına taşınır. */
.compact-workspace-root .page-stack { gap: 6px; }
.compact-workspace-root .card-header {
  min-height: 34px;
  align-items: center;
  padding: 6px 8px;
}
.compact-workspace-root .card-header h3 { margin: 0; font-size: 12.5px; }
.compact-workspace-root .card-header p { margin-top: 1px; font-size: 9px; line-height: 1.2; }
.compact-workspace-root .compact-card-head { justify-content: space-between; }
.compact-workspace-root .card-body { padding: 7px 8px; }
.compact-workspace-root .toolbar {
  min-height: 34px;
  gap: 5px;
  padding: 3px 6px;
}
.compact-workspace-root .toolbar-left,
.compact-workspace-root .toolbar-right,
.compact-workspace-root .filter-chips { gap: 3px; }
.compact-workspace-root .toolbar-right { flex-wrap: wrap; justify-content: flex-end; }
.compact-workspace-root .filter-chip { min-height: 27px; padding-inline: 8px; font-size: 10px; }
.compact-workspace-root .result-count { font-size: 9.5px; white-space: nowrap; }
.compact-workspace-root .button-small { min-height: 27px; height: 27px; padding-inline: 8px; font-size: 9.5px; }

.compact-workspace-root .summary-tile,
.compact-workspace-root .finance-metric { min-height: 52px; gap: 8px; padding: 4px 9px; }
.compact-workspace-root .summary-tile .item-icon,
.compact-workspace-root .finance-metric .item-icon { width: 30px; height: 30px; border-radius: 2px; }
.compact-workspace-root .summary-tile .item-icon svg,
.compact-workspace-root .finance-metric .item-icon svg { width: 14px; height: 14px; }
.compact-workspace-root .summary-tile span,
.compact-workspace-root .summary-tile small,
.compact-workspace-root .finance-metric span,
.compact-workspace-root .finance-metric small { font-size: 9px; line-height: 1.1; }
.compact-workspace-root .summary-tile small { margin-top: 1px; }
.compact-workspace-root .summary-tile strong,
.compact-workspace-root .finance-metric strong { margin-block: 2px; font: 650 14px/1.1 "Segoe UI", Arial, sans-serif; }
.compact-workspace-root .insurance-overview { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; }

.compact-workspace-root .permission-list { gap: 4px; }
.compact-workspace-root .permission-item {
  grid-template-columns: 30px minmax(0, 1fr) auto;
  gap: 7px;
  padding: 6px 7px;
  border-radius: 2px;
}
.compact-workspace-root .permission-item .item-icon,
.compact-workspace-root .permission-item .cell-avatar { width: 30px; height: 30px; border-radius: 2px; }
.compact-workspace-root .permission-item > div > strong,
.compact-workspace-root .insurance-renewal-card .permission-item > div > strong { font-size: 11px; }
.compact-workspace-root .permission-item > div > span,
.compact-workspace-root .insurance-renewal-card .permission-item > div > span { margin-top: 2px; font-size: 9.5px; line-height: 1.25; }

.compact-workspace-root .account-strip {
  grid-template-columns: minmax(220px, 1fr) auto;
  gap: 10px;
  padding: 6px 9px;
}
.compact-workspace-root .bank-account { gap: 8px; }
.compact-workspace-root .bank-logo { width: 30px; height: 30px; border-radius: 2px; font-size: 12px; }
.compact-workspace-root .bank-account strong { font-size: 11px; }
.compact-workspace-root .bank-account span { margin-top: 1px; font-size: 9px; }
.bank-register-facts { display: flex; align-items: stretch; }
.bank-register-facts > div { min-width: 105px; padding: 1px 10px; border-left: 1px solid var(--line); text-align: right; }
.bank-register-facts span,
.bank-register-facts strong { display: block; }
.bank-register-facts span { color: var(--ink-500); font-size: 8.5px; }
.bank-register-facts strong { margin-top: 2px; font-size: 12px; }
.compact-workspace-root .account-balance strong { margin-top: 2px; font: 650 13px/1.1 "Segoe UI", Arial, sans-serif; }
.compact-workspace-root .integration-flow { min-height: 38px; padding: 4px 7px; }
.compact-workspace-root .integration-step { align-items: center; gap: 6px; padding: 2px 7px; }
.compact-workspace-root .integration-step .item-icon { width: 25px; height: 25px; border-radius: 2px; }
.compact-workspace-root .integration-step .item-icon svg { width: 12px; height: 12px; }
.compact-workspace-root .integration-step strong { font-size: 10px; }
.compact-workspace-root .mail-integration-badge { min-height: 25px; padding: 4px 7px; font-size: 9px; }
.compact-workspace-root .bank-account-list { max-height: 158px; gap: 3px; overflow-y: auto; scrollbar-width: thin; }
.compact-workspace-root .bank-account-row { gap: 7px; min-height: 39px; padding: 4px 6px; border-radius: 2px; }
.compact-workspace-root .bank-account-row .item-icon { width: 28px; height: 28px; border-radius: 2px; }
.compact-workspace-root .bank-account-row .cell-copy strong { font-size: 10.5px; }
.compact-workspace-root .bank-account-row .cell-copy span,
.compact-workspace-root .bank-account-figures span { margin-top: 1px; font-size: 8.5px; }
.compact-workspace-root .bank-account-figures strong { font: 650 11.5px/1 "Segoe UI", Arial, sans-serif; }
.compact-workspace-root .bank-account-row .row-action { min-height: 26px; padding-inline: 7px; font-size: 9px; }

.compact-workspace-root .finance-scope-bar { padding: 5px 7px; }
.compact-workspace-root .finance-scope-bar > div { width: 100%; align-items: end; gap: 5px; }
.compact-workspace-root .finance-scope-bar label { gap: 2px; font-size: 8.5px; }
.compact-workspace-root .finance-scope-bar select { min-width: 135px; height: 30px; border-radius: 2px; font-size: 10px; }
.compact-workspace-root .finance-scope-action { height: 30px; }
.compact-workspace-root .finance-owner-card-head { align-items: end; }
.compact-workspace-root .finance-owner-range-controls { flex-wrap: wrap; }
.compact-workspace-root .finance-owner-range-controls label { gap: 2px; font-size: 8.5px; }
.compact-workspace-root .finance-owner-range-controls input,
.compact-workspace-root .finance-owner-range-controls select { min-height: 27px; height: 27px; border-radius: 2px; font-size: 9.5px; }

.accounting-export-head {
  width: 100%;
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 10px;
}
.accounting-export-head h3 { margin: 0 0 5px; font-size: 12.5px; white-space: nowrap; }
.compact-workspace-root .accounting-export-filters { flex-wrap: wrap; justify-content: flex-end; }
.compact-workspace-root .accounting-date-field { gap: 2px; font-size: 8.5px; }
.compact-workspace-root .accounting-date-field input,
.compact-workspace-root .accounting-export-filters select { min-height: 27px; height: 27px; border-radius: 2px; font-size: 9.5px; }

.compact-workspace-root .workspace-action-toolbar { justify-content: flex-end; }
.compact-workspace-root .section-head-compact { min-height: 30px; }
.compact-workspace-root .section-head-compact h3 { margin: 0; font: 650 13px/1.2 "Segoe UI", Arial, sans-serif; }
.compact-workspace-root .increase-due-section,
.compact-workspace-root .increase-due-list { gap: 5px; }
.compact-workspace-root .increase-due-card {
  grid-template-columns: 30px minmax(160px, 1.4fr) minmax(95px, .55fr) minmax(105px, .65fr) auto;
  gap: 8px;
  padding: 6px 8px;
  border-color: var(--line);
  background: #fff;
}
.compact-workspace-root .increase-due-card > .item-icon { width: 30px; height: 30px; border-radius: 2px; }
.compact-workspace-root .increase-due-copy h3 { margin-bottom: 2px; font-size: 11.5px; }
.compact-workspace-root .increase-due-copy p { font-size: 9.5px; }
.compact-workspace-root .increase-due-fact span { margin-bottom: 2px; font-size: 8px; }
.compact-workspace-root .increase-due-fact strong { font-size: 11px; }
.compact-workspace-root .proposal-card { padding: 9px; }
.compact-workspace-root .proposal-head h3 { margin-bottom: 2px; font-size: 12px; }
.compact-workspace-root .proposal-head p { font-size: 9.5px; }
.compact-workspace-root .proposal-values { margin: 8px 0; padding: 7px; border-radius: 2px; }
.compact-workspace-root .proposal-values div strong { font-size: 14px; }
.compact-workspace-root .proposal-facts { gap: 8px; margin-bottom: 7px; font-size: 9.5px; }

.compact-workspace-root .team-grid { gap: 6px; }
.compact-workspace-root .setup-tools-card { grid-template-columns: 30px minmax(0, 1fr) auto; gap: 8px; padding: 7px 9px; }
.compact-workspace-root .setup-tools-card > .item-icon { width: 30px; height: 30px; border-radius: 2px; }
.compact-workspace-root .setup-tools-card h3 { margin: 0 0 2px; font-size: 12px; }
.compact-workspace-root .setup-tools-card p { font-size: 9px; line-height: 1.25; }
.compact-status-card { min-height: 34px; display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 4px 8px; }
.compact-status-card > strong { font-size: 11px; }

@media (min-width: 1200px) {
  .compact-workspace-root .proposal-grid { grid-template-columns: 1fr; }
  .compact-workspace-root .proposal-card {
    display: grid;
    grid-template-columns: minmax(210px, 1.1fr) minmax(230px, .9fr) minmax(250px, .9fr) minmax(230px, .75fr);
    align-items: center;
    gap: 8px;
    min-height: 58px;
  }
  .compact-workspace-root .proposal-values,
  .compact-workspace-root .proposal-facts { margin: 0; }
  .compact-workspace-root .proposal-actions { min-width: 0; }
  .compact-workspace-root .proposal-actions .button { min-width: 0; min-height: 29px; padding-inline: 7px; font-size: 9.5px; }
}

@media (max-width: 880px) {
  .compact-workspace-root .account-strip { grid-template-columns: 1fr; }
  .bank-register-facts { width: 100%; }
  .bank-register-facts > div { flex: 1 1 0; }
  .compact-workspace-root .toolbar-right { justify-content: flex-start; }
  .accounting-export-head { align-items: stretch; flex-direction: column; }
}

@media (max-width: 680px) {
  .compact-workspace-root .summary-grid,
  .compact-workspace-root .finance-summary-grid,
  .compact-workspace-root .insurance-overview { grid-template-columns: 1fr; gap: 4px; }
  .compact-workspace-root .summary-grid > .card,
  .compact-workspace-root .finance-summary-grid > .card { border-width: 1px; border-radius: 3px; }
  .compact-workspace-root .increase-due-card { grid-template-columns: 30px 1fr; }
  .compact-workspace-root .increase-due-card > .increase-due-fact,
  .compact-workspace-root .increase-due-card > .button { grid-column: 2; }
  .compact-workspace-root .setup-tools-card { grid-template-columns: 30px 1fr; }
  .compact-workspace-root .setup-tools-card > .section-actions { grid-column: 1 / -1; }
  .owner-access-list { grid-template-columns: 1fr; }
}

/* Üç yıllık tahsilat matrisi aynı alan içinde gezilir ve yıl satırları ayrışır. */
.scope-year {
  grid-template-columns: 14px minmax(0, 1fr) 14px;
  gap: 1px;
  padding-inline: 1px;
}
.scope-year-label,
.scope-year-shift {
  display: grid;
  place-items: center;
  padding: 0;
  border: 0;
  color: inherit;
  background: transparent;
  cursor: pointer;
}
.scope-year-label { min-width: 0; height: 24px; font: 700 11px/1 "Segoe UI", Arial, sans-serif; }
.scope-year-label:hover,
.scope-year-label.active { color: #173f32; background: rgba(255, 255, 255, .66); }
.scope-year-label.active { box-shadow: inset 0 -2px #397e6c; }
.scope-year-shift { width: 14px; height: 24px; }
.scope-year-shift svg { width: 10px; height: 10px; }
.scope-year-shift.previous svg { rotate: 180deg; }
.scope-year-shift:hover:not([disabled]) { color: #173f32; background: rgba(255, 255, 255, .7); }
.scope-year-shift[disabled] { cursor: default; opacity: .22; }
.scope-year-nav-spacer { width: 14px; }

.scope-row.scope-year-band-0 .scope-year { background: #e8dcc0; }
.scope-row.scope-year-band-0 .scope-cell:not(.active):not([disabled]) { background: #f6f0df; }
.scope-row.scope-year-band-0 .scope-cell:hover:not([disabled]) { background: #eee2c4; }
.scope-row.scope-year-band-1 .scope-year { background: #cddfe6; }
.scope-row.scope-year-band-1 .scope-cell:not(.active):not([disabled]) { background: #eaf2f5; }
.scope-row.scope-year-band-1 .scope-cell:hover:not([disabled]) { background: #dcebef; }
.scope-row.scope-year-band-2 .scope-year { background: #cce0d6; }
.scope-row.scope-year-band-2 .scope-cell:not(.active):not([disabled]) { background: #eaf4ef; }
.scope-row.scope-year-band-2 .scope-cell:hover:not([disabled]) { background: #dcece4; }
.scope-row.scope-year-band-0 .scope-cell[disabled] { background: repeating-linear-gradient(135deg, #f6f0df 0 5px, #fbf8f0 5px 10px); }
.scope-row.scope-year-band-1 .scope-cell[disabled] { background: repeating-linear-gradient(135deg, #eaf2f5 0 5px, #f5f8f9 5px 10px); }
.scope-row.scope-year-band-2 .scope-cell[disabled] { background: repeating-linear-gradient(135deg, #eaf4ef 0 5px, #f5f9f7 5px 10px); }
.scope-row .scope-cell.active { color: #fff; background: #315f51; }

/* Tek parça mülk fişi: bilgi, kiracı ve sekmeli alt kayıtlar. */
.detail-page { gap: 6px; }
.property-detail-board {
  gap: 6px;
  grid-template-areas:
    "property-main property-index"
    "property-content property-content";
}
.property-information-sheet { border: 1px solid #aeb9b4; }
.property-sheet-field { min-height: 34px; border-color: #cbd3cf; }
.property-sheet-field > span,
.property-sheet-field > strong { padding: 5px 8px; }
.property-sheet-field > span { color: #fff; background: #365f54; font-size: 10px; }
.property-sheet-field > strong,
.property-sheet-field > .property-sheet-value,
.property-sheet-field > .property-sheet-actions { background: #f7f9f7; }
.property-sheet-field.gold > span { color: #fff; background: #80642f; }
.property-sheet-field.gold > strong { background: #faf5e9; }
.property-sheet-field.insurance > span { color: #fff; background: #2f6b82; }
.property-sheet-field.insurance > strong { background: #edf5f8; }
.property-sheet-field.measure > span { color: #fff; background: #a34f43; }
.property-sheet-field.measure > strong { background: #faf0ee; }
.property-sheet-field.tenant > span { color: #fff; background: #704984; }
.property-sheet-field.tenant > strong,
.property-sheet-field.tenant > .property-sheet-actions,
.property-sheet-field.tenant > .property-sheet-link { background: #f7f1f9; }
.property-sheet-divider {
  grid-column: 1 / -1;
  height: 3px;
  background: #273c35;
}
.property-sheet-link {
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 5px 8px;
  border: 0;
  color: #18241f;
  cursor: pointer;
  text-align: left;
}
.property-sheet-link strong,
.property-sheet-link small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.property-sheet-link strong { font-size: 12px; }
.property-sheet-link small { color: #6e6172; font-size: 9px; }
.property-sheet-link:hover { background: #eee2f1; }
.property-sheet-actions > strong { margin-right: auto; font-size: 11px; }
.property-detail-index-item { min-height: 28px; }
.property-detail-index-code { color: #77817d; font-size: 9px; font-weight: 600; }
.property-detail-index-copy { padding-block: 3px; }
.property-detail-index-copy strong { font-size: 9.5px; font-weight: 650; }
.property-detail-index-item.active .property-detail-index-code { color: rgba(255, 255, 255, .76); font-weight: 600; }

.property-detail-content {
  grid-area: property-content;
  min-width: 0;
}
.property-detail-tabs {
  min-height: 36px;
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  gap: 8px;
  overflow: hidden;
  padding: 3px 4px 0;
  border: 1px solid #aeb9b4;
  border-bottom: 0;
  background: #d9dedb;
  scrollbar-width: thin;
}
.property-detail-tab-buttons {
  min-width: 0;
  display: flex;
  align-items: end;
  gap: 2px;
  overflow-x: auto;
  scrollbar-width: thin;
}
.property-detail-tab-buttons > button {
  min-height: 31px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  padding: 5px 13px;
  border: 1px solid #aeb9b4;
  border-bottom: 0;
  color: #263b34;
  background: #eef1ef;
  cursor: pointer;
  font-size: 10.5px;
  font-weight: 700;
  white-space: nowrap;
}
.property-detail-tab-buttons > button:hover { background: #fff; }
.property-detail-tab-buttons > button.active { color: #fff; border-color: #315f51; background: #315f51; }
.property-detail-tab-buttons > button small {
  min-width: 17px;
  height: 17px;
  display: grid;
  place-items: center;
  padding: 0 4px;
  border-radius: 2px;
  color: #40524b;
  background: rgba(255, 255, 255, .72);
  font-size: 8px;
}
.property-detail-tab-buttons > button.active small { color: #234a3f; background: #fff; }
.property-detail-primary-actions {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 4px;
  padding: 0 0 3px;
}
.property-detail-primary-actions .button { min-height: 29px; height: 29px; padding-inline: 9px; border-radius: 3px; font-size: 10px; }
.property-detail-primary-actions .button svg { width: 13px; height: 13px; }
.property-detail-tab-body > .card,
.property-tab-panel { border-radius: 0 0 3px 3px; box-shadow: none; }
.property-detail-tab-body .property-charge-ledger { grid-area: auto; }
.property-tab-actions {
  min-height: 35px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 4px 8px;
  border-bottom: 1px solid #cbd3cf;
  color: #4c5b55;
  background: #f3f5f3;
  font-size: 9.5px;
}
.property-tab-actions .button { min-height: 27px; height: 27px; padding-inline: 8px; font-size: 9.5px; }
.property-charge-actions > span { font-weight: 700; }
.property-tab-empty { min-height: 54px; display: grid; place-items: center; color: #69756f; font-size: 10px; }
.property-secondary-table { min-width: 860px; table-layout: fixed; }
.property-secondary-table th { padding: 6px 8px; color: #fff; border-right: 1px solid #79a397; background: #3d7d6c; font-size: 9px; }
.property-secondary-table td { height: 31px; padding: 4px 8px; border-right: 1px solid #d7dedb; border-bottom: 1px solid #d7dedb; font-size: 10px; }
.property-secondary-table tbody tr:nth-child(even) { background: #f0f2f0; }
.property-secondary-table tbody tr:hover { background: #deebe5; }
.property-document-panel { min-height: 120px; }
.property-register-row {
  width: calc(100% - 12px);
  min-height: 48px;
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
  margin: 6px;
  padding: 6px 8px;
  border: 1px solid #cbd3cf;
  color: inherit;
  background: #f7f9f7;
  cursor: pointer;
  text-align: left;
}
.property-register-row .item-icon { width: 30px; height: 30px; border-radius: 2px; }
.property-register-row strong,
.property-register-row small { display: block; }
.property-register-row strong { font-size: 11px; }
.property-register-row small { margin-top: 2px; color: #66736d; font-size: 9px; }
.property-photos-panel { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.property-photo-group + .property-photo-group { border-left: 2px solid #aeb9b4; }
.property-photo-group-head {
  min-height: 36px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 4px 7px;
  border-bottom: 1px solid #cbd3cf;
  background: #f3f5f3;
}
.property-photo-group-head > strong { font-size: 10.5px; }
.property-photo-group-head > div { display: flex; gap: 4px; }
.property-photo-group .property-photo-strip { padding: 6px; }
.property-sheet-actions .property-departure-button {
  color: #fff;
  border-color: #982f2a;
  background: #b64038;
  box-shadow: 0 2px 7px rgba(123, 35, 30, .2);
}
.property-sheet-actions .property-departure-button:hover { color: #fff; border-color: #812720; background: #982f2a; }

@media (max-width: 960px) {
  .property-detail-board {
    grid-template-areas:
      "property-main"
      "property-index"
      "property-content";
  }
  .property-photos-panel { grid-template-columns: 1fr; }
  .property-photo-group + .property-photo-group { border-top: 2px solid #aeb9b4; border-left: 0; }
}

@media (max-width: 680px) {
  .property-detail-tabs { align-items: stretch; flex-direction: column; gap: 3px; padding-bottom: 3px; }
  .property-detail-tab-buttons { width: 100%; }
  .property-detail-primary-actions { width: 100%; }
}

/* Mülk detayındaki metinler %110 okunabilirlik ölçeğinde. */
.detail-page .property-sheet-field > span { font-size: 11px; }
.detail-page .property-sheet-field > strong { font-size: 13.2px; }
.detail-page .property-sheet-value > strong { font-size: 17.5px; }
.detail-page .property-sheet-title-field .status-pill { font-size: 10px; }
.detail-page .property-sheet-link strong { font-size: 13.2px; }
.detail-page .property-sheet-link small { font-size: 10px; }
.detail-page .property-sheet-actions .button { font-size: 12px; }
.detail-page .property-detail-index-columns { font-size: 10px; }
.detail-page .property-detail-index-code { font-size: 10px; }
.detail-page .property-detail-index-copy strong { font-size: 10.5px; }
.detail-page .property-detail-tab-buttons > button { font-size: 11.5px; }
.detail-page .property-detail-tab-buttons > button small { font-size: 9px; }
.detail-page .property-tab-actions { font-size: 10.5px; }
.detail-page .property-tab-actions .button { font-size: 10.5px; }
.detail-page .property-charge-ledger .property-charge-table th { font-size: 10.5px; }
.detail-page .property-charge-ledger .property-charge-table td { font-size: 11.5px; }
.detail-page .property-secondary-table th { font-size: 10px; }
.detail-page .property-secondary-table td { font-size: 11px; }
.detail-page .property-register-row strong { font-size: 12px; }
.detail-page .property-register-row small { font-size: 10px; }
.detail-page .property-photo-group-head > strong { font-size: 11.5px; }

/* Tahsilat özeti: %125 metin ölçeği ve içerik genişliğinde filtre alanı. */
.property-ledger-root .portfolio-ledger-summary {
  min-height: 58px;
  grid-template-columns: minmax(0, 1fr) max-content;
}
.property-ledger-root .portfolio-ledger-summary > * { min-height: 58px; }
.property-ledger-root .portfolio-ledger-metrics span { font-size: 10.625px; }
.property-ledger-root .portfolio-ledger-metrics strong { font-size: 15px; }
.property-ledger-root .portfolio-period-metric > span { font-size: 11.875px; }
.property-ledger-root .portfolio-ledger-metrics .portfolio-period-metric > strong { font-size: 18.75px; }
.property-ledger-root .portfolio-period-metric small { font-size: 10px; }
.property-ledger-root .portfolio-ledger-side {
  width: auto;
  display: flex;
  border-left: 0;
  background: #fff;
}
.property-ledger-root .portfolio-ledger-side-head { padding: 5px; }
.property-ledger-root .portfolio-ledger-side .scope-report {
  min-height: 35px;
  padding-inline: 14px;
  font-size: 13.125px;
}

/* Kiracı detayı: tekrar eden kartlar yerine tek, yoğun kayıt görünümü. */
.tenant-detail-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 5px;
  margin-bottom: 8px;
}
.tenant-detail-register {
  overflow: hidden;
  border: 1px solid #cbd3cf;
  border-radius: 4px;
  background: #fff;
}
.tenant-detail-row {
  display: grid;
  grid-template-columns: 132px minmax(0, 1fr) auto;
  align-items: stretch;
  min-height: 39px;
  border-bottom: 1px solid #d7ddda;
}
.tenant-detail-row:last-child { border-bottom: 0; }
.tenant-detail-label {
  display: flex;
  align-items: center;
  padding: 7px 10px;
  border-right: 1px solid #d7ddda;
  color: #4f5d56;
  background: #eef1ef;
  font-size: 11px;
  font-weight: 700;
}
.tenant-detail-value {
  min-width: 0;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 5px 8px;
  padding: 7px 10px;
}
.tenant-detail-value strong {
  color: #17231e;
  font-size: 13px;
  line-height: 1.25;
  overflow-wrap: anywhere;
}
.tenant-detail-value > span {
  color: #65716b;
  font-size: 10.5px;
}
.tenant-detail-row-action {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 3px;
  padding: 5px 7px 5px 0;
}
.tenant-detail-row-action .row-action { min-height: 28px; }
.tenant-detail-row.success .tenant-detail-value strong { color: #237763; }
.tenant-detail-row.warning .tenant-detail-value strong { color: #9b6713; }
.tenant-detail-row.danger .tenant-detail-value strong { color: #a23e37; }
.tenant-detail-divider {
  height: 3px;
  background: #9da9a3;
}
.tenant-documents-panel {
  margin-top: 8px;
  overflow: hidden;
  border: 1px solid #cbd3cf;
  border-radius: 4px;
  background: #fff;
}
.tenant-documents-head {
  min-height: 46px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 6px 9px;
  background: #eef1ef;
}
.tenant-documents-head > div { min-width: 0; }
.tenant-documents-head strong,
.tenant-documents-head small { display: block; }
.tenant-documents-head strong { color: #17231e; font-size: 12px; }
.tenant-documents-head small { margin-top: 2px; color: #627069; font-size: 9.5px; }
.tenant-documents-head .button { flex: 0 0 auto; }
.tenant-document-list { border-top: 1px solid #cbd3cf; }
.tenant-document-row {
  min-height: 52px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 7px;
  padding: 5px 8px;
  border-bottom: 1px solid #dde2df;
}
.tenant-document-row:last-child { border-bottom: 0; }
.tenant-document-row.is-archived { background: #f7f8f7; opacity: .72; }
.tenant-document-main {
  min-width: 0;
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  align-items: center;
  gap: 8px;
  padding: 0;
  border: 0;
  color: inherit;
  background: transparent;
  text-align: left;
  cursor: pointer;
}
.tenant-document-preview {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  overflow: hidden;
  border: 1px solid #d4dbd7;
  border-radius: 4px;
  color: #346957;
  background: #f0f5f3;
}
.tenant-document-preview img { width: 100%; height: 100%; object-fit: cover; }
.tenant-document-preview svg { width: 18px; }
.tenant-document-copy { min-width: 0; }
.tenant-document-copy strong,
.tenant-document-copy small { display: block; }
.tenant-document-copy strong {
  overflow: hidden;
  color: #17231e;
  font-size: 10.5px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.tenant-document-copy small {
  margin-top: 2px;
  overflow: hidden;
  color: #6d7872;
  font-size: 9px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.tenant-document-actions { display: flex; align-items: center; gap: 3px; }
.tenant-document-actions .row-action { min-height: 26px; padding-inline: 6px; font-size: 9px; }
.tenant-document-empty { padding: 13px 9px; border-top: 1px solid #cbd3cf; color: #6d7872; font-size: 10.5px; }
.tenant-detail-payments {
  margin-top: 8px;
  border: 1px solid #cbd3cf;
  border-radius: 4px;
  background: #fff;
}
.tenant-detail-payments > summary {
  min-height: 38px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto 14px;
  align-items: center;
  gap: 8px;
  padding: 6px 9px;
  color: #17231e;
  background: #eef1ef;
  cursor: pointer;
  list-style: none;
}
.tenant-detail-payments > summary::-webkit-details-marker { display: none; }
.tenant-detail-payments > summary span { font-size: 12px; font-weight: 800; }
.tenant-detail-payments > summary strong { color: #627069; font-size: 10.5px; }
.tenant-detail-payments > summary svg { width: 13px; transition: transform .15s ease; }
.tenant-detail-payments[open] > summary svg { transform: rotate(90deg); }
.tenant-payment-movements > summary { background: #e9f3ef; }
.tenant-payment-movement-list { border-top: 1px solid #cbd3cf; }
.tenant-payment-movement-row {
  display: grid;
  grid-template-columns: 88px minmax(110px, 1fr) minmax(112px, auto);
  align-items: center;
  gap: 8px;
  min-height: 44px;
  padding: 5px 8px;
  border-bottom: 1px solid #dde2df;
  font-size: 10.5px;
}
.tenant-payment-movement-row:last-child { border-bottom: 0; }
.tenant-payment-movement-row strong,
.tenant-payment-movement-row span { display: block; }
.tenant-payment-movement-row span { margin-top: 1px; color: #6d7872; font-size: 9.5px; }
.tenant-payment-movement-description { min-width: 0; }
.tenant-payment-movement-description strong {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.tenant-payment-movement-amount { text-align: right; }
.tenant-payment-movement-amount strong { color: #237763; font-size: 11px; }
.tenant-payment-movement-empty { padding: 11px 9px; border-top: 1px solid #cbd3cf; color: #6d7872; font-size: 10.5px; }
.tenant-ledger-help { padding: 8px 9px; border-top: 1px solid #cbd3cf; color: #627069; background: #f8faf9; font-size: 10px; }
.tenant-ledger-head {
  display: grid;
  grid-template-columns: minmax(90px, 1fr) 84px 88px minmax(154px, auto);
  gap: 6px;
  padding: 5px 7px;
  border-top: 1px solid #dde2df;
  border-bottom: 1px solid #cbd3cf;
  color: #6d7872;
  background: #f5f7f6;
  font-size: 9px;
  font-weight: 700;
  text-transform: uppercase;
}
.tenant-ledger-head span:last-child { text-align: right; }
.tenant-ledger-list { border-top: 1px solid #cbd3cf; }
.tenant-ledger-row {
  display: grid;
  grid-template-columns: minmax(90px, 1fr) 84px 88px minmax(154px, auto);
  align-items: center;
  gap: 6px;
  min-height: 38px;
  padding: 4px 7px;
  border-bottom: 1px solid #dde2df;
  font-size: 10.5px;
}
.tenant-ledger-row:last-child { border-bottom: 0; }
.tenant-ledger-row > div:first-child strong,
.tenant-ledger-row > div:first-child span { display: block; }
.tenant-ledger-row > div:first-child span { margin-top: 1px; color: #6d7872; font-size: 9.5px; }
.tenant-ledger-state { display: flex; align-items: center; justify-content: flex-end; gap: 5px; }
.tenant-ledger-actions { display: flex; align-items: center; justify-content: flex-end; gap: 3px; }
.tenant-ledger-actions .row-action { min-height: 26px; padding-inline: 6px; font-size: 9px; }
.tenant-cancelled-list { padding: 7px 0 0; border-top: 2px solid #cbd3cf; }
.tenant-cancelled-list > strong { display: block; padding: 0 7px 6px; font-size: 10.5px; }
.tenant-cancelled-head,
.tenant-cancelled-row {
  display: grid;
  grid-template-columns: minmax(100px, 1fr) 88px minmax(130px, 1.35fr) 78px;
  align-items: center;
  gap: 6px;
  padding-inline: 7px;
}
.tenant-cancelled-head {
  min-height: 24px;
  border-top: 1px solid #dde2df;
  border-bottom: 1px solid #cbd3cf;
  color: #6d7872;
  background: #f5f7f6;
  font-size: 9px;
  font-weight: 700;
  text-transform: uppercase;
}
.tenant-cancelled-row {
  min-height: 30px;
  border-bottom: 1px solid #dde2df;
  color: #33413a;
  font-size: 10px;
}
.tenant-cancelled-row:last-child { border-bottom: 0; }
.tenant-cancelled-row > * {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.tenant-cancelled-row > span:last-child { color: #627069; }

@media (max-width: 520px) {
  .tenant-detail-row { grid-template-columns: 108px minmax(0, 1fr); }
  .tenant-detail-row-action { grid-column: 2; justify-content: flex-start; padding: 0 7px 6px 10px; }
  .tenant-ledger-head { display: none; }
  .tenant-ledger-row { grid-template-columns: minmax(92px, 1fr) 76px minmax(118px, auto); }
  .tenant-ledger-row > span:nth-child(2) { display: none; }
  .tenant-ledger-state { align-items: flex-end; flex-direction: column; }
  .tenant-cancelled-head,
  .tenant-cancelled-row { grid-template-columns: minmax(92px, 1fr) 78px minmax(112px, 1.3fr); }
  .tenant-cancelled-head > span:last-child,
  .tenant-cancelled-row > span:last-child { display: none; }
}

/* Sigorta: dosya merkezli, sade ve yoğun çalışma görünümü. */
.insurance-upload-card {
  padding: 12px;
  border: 1.5px dashed #9ebbaa;
  background: linear-gradient(145deg, #fbfdfb, #f2f7f4);
  transition: border-color .15s ease, background .15s ease;
}
.insurance-upload-card.is-dragging,
.policy-upload.is-dragging { border-color: var(--forest-600); background: var(--forest-50); }
.insurance-upload-main { display: grid; grid-template-columns: 38px minmax(0, 1fr) auto; align-items: center; gap: 11px; }
.insurance-upload-icon { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 4px; color: var(--forest-700); background: #fff; }
.insurance-upload-icon svg { width: 18px; height: 18px; }
.insurance-upload-main h3 { margin: 0; font-size: 13px; }
.insurance-upload-main p { margin: 3px 0 0; color: var(--ink-500); font-size: 10px; line-height: 1.35; }
.insurance-upload-results { display: grid; gap: 3px; margin-top: 9px; padding-top: 8px; border-top: 1px solid var(--line-soft); }
.insurance-upload-result { display: grid; grid-template-columns: minmax(120px, .7fr) minmax(180px, 1.3fr); gap: 10px; padding: 5px 7px; color: var(--ink-600); background: rgba(255,255,255,.7); font-size: 9.5px; }
.insurance-upload-result strong { overflow: hidden; color: var(--ink-900); text-overflow: ellipsis; white-space: nowrap; }
.insurance-upload-result.saved span { color: var(--forest-700); }
.insurance-upload-result.error span { color: var(--red-700); }
.insurance-upload-result.processing span { color: var(--amber-700); }

.insurance-overview .insurance-summary-metric span,
.insurance-overview .insurance-summary-metric small { font-size: 11.25px; }
.insurance-overview .insurance-summary-metric strong { font-size: 21.25px; }
.compact-workspace-root .insurance-overview .insurance-summary-metric span,
.compact-workspace-root .insurance-overview .insurance-summary-metric small { font-size: 11.25px; }
.compact-workspace-root .insurance-overview .insurance-summary-metric strong { font-size: 17.5px; }
.insurance-table-card.is-dragging { outline: 2px dashed var(--forest-600); outline-offset: -3px; background: var(--forest-50); }
.insurance-table-actions { display: flex; align-items: center; gap: 8px; }
.insurance-table-card > .insurance-upload-results { margin: 0; padding: 6px 8px; border-top: 1px solid var(--line-soft); }

.insurance-renewal-list { padding: 0 !important; }
.insurance-renewal-row { display: grid; grid-template-columns: minmax(130px, 1fr) 75px minmax(100px, .8fr) 90px 80px auto; align-items: center; gap: 8px; min-height: 34px; padding: 5px 8px; border-bottom: 1px solid var(--line-soft); font-size: 10px; }
.insurance-renewal-row:last-child { border-bottom: 0; }
.insurance-renewal-row > span { color: var(--ink-600); }

.insurance-table th,
.insurance-table td { height: 30px; padding: 3px 7px; font-size: 11px; line-height: 1.15; white-space: nowrap; }
.insurance-table .table-sort { min-height: 22px; padding: 3px 7px; font-size: 11px; line-height: 1.15; }
.insurance-policy-link { padding: 0; border: 0; color: var(--ink-900); background: transparent; font: inherit; font-weight: 650; cursor: pointer; }
.insurance-policy-link:hover { color: var(--forest-700); text-decoration: underline; }
.insurance-status-text { color: inherit; font: inherit; }
.insurance-actions-heading,
.insurance-actions-cell { width: 48px; text-align: right !important; }
.insurance-actions-cell .row-action { width: 24px; min-height: 22px; height: 22px; margin-left: auto; padding: 0; justify-content: center; }
.insurance-actions-cell .row-action svg { width: 13px; }
.insurance-document-row { width: 100%; min-height: 42px; display: grid; grid-template-columns: 28px minmax(0, 1fr) auto; align-items: center; gap: 8px; padding: 6px 9px; border: 0; border-top: 1px solid var(--line-soft); color: inherit; background: #fff; font: inherit; text-align: left; cursor: pointer; }
.insurance-document-row:hover { background: var(--forest-50); }
.insurance-document-row > span { width: 28px; height: 28px; display: grid; place-items: center; color: var(--forest-700); background: var(--forest-50); }
.insurance-document-row > span svg { width: 14px; }
.insurance-document-row strong { overflow: hidden; font-size: 10.5px; text-overflow: ellipsis; white-space: nowrap; }
.insurance-document-row small { color: var(--forest-700); font-size: 9.5px; }

.deposit-summary-metric span { font-size: 11.25px; }
.deposit-summary-metric strong { font-size: 21.25px; }
.compact-workspace-root .deposit-summary-metric span { font-size: 11.25px; }
.compact-workspace-root .deposit-summary-metric strong { font-size: 17.5px; }
.deposit-table-head { flex-wrap: wrap; }
.deposit-table th,
.deposit-table td { height: 30px; padding: 3px 7px; font-size: 11px; line-height: 1.15; white-space: nowrap; }
.deposit-table .table-sort { min-height: 22px; padding: 3px 7px; font-size: 11px; line-height: 1.15; }
.deposit-record-link { padding: 0; border: 0; color: var(--ink-900); background: transparent; font: inherit; font-weight: 650; cursor: pointer; }
.deposit-record-link:hover { color: var(--forest-700); text-decoration: underline; }
.deposit-status-text { color: inherit; font: inherit; }
.deposit-actions-heading,
.deposit-actions-cell { width: 48px; text-align: right !important; }
.deposit-actions-cell .row-action { width: 24px; min-height: 22px; height: 22px; margin-left: auto; padding: 0; justify-content: center; }
.deposit-actions-cell .row-action svg { width: 13px; }
.deposit-detail-register { margin-top: 8px; }
.deposit-detail-section-head { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 6px 8px; border-top: 1px solid var(--line-soft); background: #f8faf9; }
.deposit-detail-section-head > span { color: var(--ink-500); font-size: 9.5px; }
.deposit-detail-section > .permission-list { padding: 6px; border-top: 1px solid var(--line-soft); }

@media (max-width: 720px) {
  .insurance-upload-main { grid-template-columns: 34px minmax(0, 1fr); }
  .insurance-upload-main .button { grid-column: 1 / -1; width: 100%; justify-content: center; }
  .insurance-renewal-row { grid-template-columns: minmax(120px, 1fr) 80px auto; }
  .insurance-renewal-row > span:nth-of-type(1),
  .insurance-renewal-row > span:nth-of-type(2),
  .insurance-renewal-row > span:nth-of-type(3) { display: none; }
}

/* Mülk defteri ekran genişliğine sabitlenir; sütun ayarı yatay kaydırma üretmez. */
body.property-ledger-active,
body.property-ledger-active .app-shell,
body.property-ledger-active .main-area { max-width: 100vw; overflow-x: hidden; }
#page-root.property-ledger-root,
.property-ledger-root .ledger-home,
.property-ledger-root .property-ledger-card,
.property-ledger-root .property-ledger-card .table-scroll,
.property-ledger-root .scope-matrix,
.property-ledger-root .scope-row,
.property-ledger-root .scope-cells { width: 100%; min-width: 0; max-width: 100%; }
.property-ledger-root .property-ledger-card .table-scroll {
  overflow-x: hidden;
}

@media (max-width: 880px) {
  .property-ledger-root .property-ledger-card .property-table {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }
}

/* Finans defteri masaüstünde çalışma alanını kenardan kenara kullanır. */
@media (min-width: 681px) {
  #page-root.finance-workspace-root { padding-inline: 0; }
  #page-root.finance-workspace-root > .hub-tabs { margin-inline: 0; }
}
