/* ══════════════════════════════════════════════════════════════
   HM4 Studio — stil dosyası
   Renkleri ve yazı tiplerini değiştirmek için yalnızca aşağıdaki
   :root değişkenlerini düzenlemeniz yeterli.
   ══════════════════════════════════════════════════════════════ */
:root {
  --bg: #fbfaf8;          /* sayfa zemini */
  --bg-tint: #f3f0eb;     /* alternatif bölüm zemini */
  --surface: #ffffff;     /* kartlar */
  --ink: #1c1a18;         /* ana metin */
  --ink-2: #47423c;       /* ikincil metin */
  --muted: #6b645c;       /* soluk metin */
  --line: #e2ddd5;        /* çizgiler */
  --accent: #7a3a2e;      /* vurgu (kına kırmızısı) */
  --accent-soft: #f4e9e5;
  --danger: #a3271f;
  --success: #2f5d3a;

  --serif: "Cormorant Garamond", Georgia, "Times New Roman", serif;
  --sans: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;

  --radius: 3px;
  --gutter: 20px;
  --max: 1240px;
  --header-h: 72px;
  --ease: cubic-bezier(.2, .7, .2, 1);
}

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--bg);
  color: var(--ink);
  font-family: var(--sans);
  font-size: 16px;
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
img, video { display: block; max-width: 100%; height: auto; }
a { color: inherit; }
button, input, select, textarea { font: inherit; color: inherit; }
h1, h2, h3 { margin: 0; font-weight: 400; }
p { margin: 0 0 1em; }
code { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: .9em; background: var(--bg-tint); padding: .1em .4em; border-radius: var(--radius); }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
.skip-link { position: absolute; left: 12px; top: -60px; z-index: 100; background: var(--ink); color: #fff; padding: 10px 16px; border-radius: var(--radius); }
.skip-link:focus { top: 12px; }
:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }
.muted { color: var(--muted); }
.icon { width: 20px; height: 20px; flex: none; }

.container { width: 100%; max-width: var(--max); margin: 0 auto; padding: 0 var(--gutter); }
.container--narrow { max-width: 640px; }
@media (min-width: 768px) { :root { --gutter: 40px; } }

/* ── Tipografi ── */
.eyebrow { font-size: .72rem; font-weight: 500; letter-spacing: .2em; text-transform: uppercase; color: var(--accent); margin-bottom: 18px; }
.eyebrow--light { color: rgba(255, 255, 255, .86); }
.section-title { font-family: var(--serif); font-size: clamp(2rem, 4.2vw, 3.2rem); line-height: 1.08; letter-spacing: -.005em; margin-bottom: 20px; }
.section-text { color: var(--ink-2); font-size: 1.05rem; max-width: 56ch; }
.page-title { font-family: var(--serif); font-size: clamp(2.4rem, 6vw, 4.2rem); line-height: 1.04; margin-bottom: 14px; }
.page-lead { color: var(--ink-2); font-size: 1.1rem; max-width: 60ch; }
.text-link { display: inline-flex; align-items: center; gap: 8px; font-weight: 500; font-size: .95rem; text-decoration: none; border-bottom: 1px solid currentColor; padding-bottom: 2px; }
.text-link .icon { width: 16px; height: 16px; transition: transform .3s var(--ease); }
.text-link:hover .icon { transform: translateX(3px); }

/* ── Butonlar ── */
.btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 10px;
  min-height: 48px; padding: 0 26px;
  border: 1px solid transparent; border-radius: var(--radius);
  font-size: .9rem; font-weight: 500; letter-spacing: .02em;
  text-decoration: none; cursor: pointer; background: none;
  transition: background-color .25s var(--ease), color .25s var(--ease), border-color .25s var(--ease);
}
.btn .icon { width: 18px; height: 18px; }
.btn--primary { background: var(--ink); color: #fff; }
.btn--primary:hover { background: #000; }
.btn--outline { border-color: var(--ink); color: var(--ink); }
.btn--outline:hover { background: var(--ink); color: #fff; }
.btn--light { background: #fff; color: var(--ink); }
.btn--light:hover { background: var(--bg-tint); }
.btn--ghost-light { border-color: rgba(255, 255, 255, .7); color: #fff; }
.btn--ghost-light:hover { background: #fff; color: var(--ink); }
.btn--danger { background: var(--danger); color: #fff; }
.btn--danger:hover { background: #82201a; }
.btn--text { padding: 0 10px; min-height: 44px; color: var(--ink-2); }
.btn--text:hover { color: var(--ink); background: var(--bg-tint); }
.btn--danger-text { color: var(--danger); }
.btn--sm { min-height: 44px; padding: 0 16px; font-size: .85rem; }
.btn--block { width: 100%; }
.btn-row { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 32px; }
.btn-row--center { justify-content: center; }
.inline-form { display: inline; margin: 0; }

/* ── Üst menü ── */
.site-header { position: sticky; top: 0; z-index: 40; height: var(--header-h); background: rgba(251, 250, 248, .94); border-bottom: 1px solid var(--line); transition: background-color .3s var(--ease), border-color .3s var(--ease); }
@supports (backdrop-filter: blur(8px)) { .site-header { backdrop-filter: blur(10px); background: rgba(251, 250, 248, .85); } }
.site-header__inner { height: 100%; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.site-header--overlay { position: fixed; left: 0; right: 0; background: transparent; border-color: transparent; color: #fff; backdrop-filter: none; }
.site-header--overlay.is-solid { background: rgba(251, 250, 248, .94); border-color: var(--line); color: var(--ink); }
.brand { text-decoration: none; display: inline-flex; align-items: center; min-height: 44px; }
.brand__name { font-family: var(--serif); font-size: 1.6rem; letter-spacing: .04em; font-weight: 500; }
.brand__logo { height: 40px; width: auto; }

.nav-toggle { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border: 0; background: none; cursor: pointer; margin-right: -10px; }
.nav-toggle .icon { width: 26px; height: 26px; }
.site-nav { display: none; }
.site-nav.is-open {
  display: flex; flex-direction: column; gap: 8px;
  position: fixed; inset: var(--header-h) 0 0 0; z-index: 39;
  background: var(--bg); color: var(--ink); padding: 24px var(--gutter) 40px; overflow-y: auto;
}
.site-nav__list { list-style: none; margin: 0; padding: 0; }
.site-nav__list a { display: block; padding: 14px 0; font-family: var(--serif); font-size: 2rem; text-decoration: none; border-bottom: 1px solid var(--line); }
.site-nav__list a[aria-current="page"] { color: var(--accent); }
.site-nav__login { display: inline-flex; align-items: center; gap: 8px; margin-top: 20px; min-height: 48px; font-size: .9rem; font-weight: 500; text-decoration: none; }
body.nav-open { overflow: hidden; }
.site-header--overlay:has(.site-nav.is-open) { background: var(--bg); color: var(--ink); }

@media (min-width: 900px) {
  .nav-toggle { display: none; }
  .site-nav, .site-nav.is-open { display: flex; flex-direction: row; align-items: center; gap: 36px; position: static; padding: 0; background: none; color: inherit; overflow: visible; }
  .site-nav__list { display: flex; gap: 32px; }
  .site-nav__list a { padding: 8px 0; font-family: var(--sans); font-size: .88rem; letter-spacing: .04em; border: 0; position: relative; }
  .site-nav__list a::after { content: ""; position: absolute; left: 0; right: 0; bottom: 2px; height: 1px; background: currentColor; transform: scaleX(0); transform-origin: left; transition: transform .35s var(--ease); }
  .site-nav__list a:hover::after, .site-nav__list a[aria-current="page"]::after { transform: scaleX(1); }
  .site-nav__list a[aria-current="page"] { color: inherit; }
  .site-nav__login { margin: 0; min-height: 40px; padding: 0 16px; border: 1px solid currentColor; border-radius: var(--radius); font-size: .82rem; }
  .site-nav__login .icon { width: 16px; height: 16px; }
}

/* ── Anasayfa kapak ── */
.hero { position: relative; min-height: 100vh; min-height: 100svh; display: flex; align-items: flex-end; color: #fff; overflow: hidden; background: #2a2622; }
.hero__media { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.hero__media--empty { display: flex; align-items: center; justify-content: center; background: linear-gradient(160deg, #4a423b, #221f1c); color: rgba(255, 255, 255, .55); font-size: .85rem; letter-spacing: .04em; }
.hero__media--empty span { display: inline-flex; align-items: center; gap: 10px; margin-bottom: 30vh; }
.hero__shade { position: absolute; inset: 0; background: linear-gradient(to bottom, rgba(16, 14, 12, .38) 0%, rgba(16, 14, 12, 0) 22%), linear-gradient(to top, rgba(16, 14, 12, .75) 0%, rgba(16, 14, 12, .3) 45%, rgba(16, 14, 12, .12) 100%); }
.hero__content { position: relative; padding-top: calc(var(--header-h) + 40px); padding-bottom: clamp(56px, 12vh, 120px); }
.hero__title { font-family: var(--serif); font-size: clamp(2.9rem, 9vw, 6rem); line-height: .98; letter-spacing: -.01em; max-width: 12ch; margin-bottom: 22px; }
.hero__text { font-size: clamp(1rem, 1.6vw, 1.15rem); max-width: 46ch; color: rgba(255, 255, 255, .9); }

/* ── Bölümler ── */
.section { padding: clamp(72px, 10vw, 128px) 0; }
.section--tint { background: var(--bg-tint); }
.section--flush-top { padding-top: 0; }
.section-head { margin-bottom: 36px; max-width: 720px; }
.section-head--center { text-align: center; margin-left: auto; margin-right: auto; }
.section-head .section-title { margin-bottom: 0; }
.section-head .section-text { margin-top: 16px; }
.section-head-row { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 20px; margin-bottom: 36px; }
.section-head-row .section-head { margin-bottom: 0; }

.intro { display: grid; gap: 48px; }
.services { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--line); }
.services__item { display: grid; grid-template-columns: 48px 1fr; gap: 12px; padding: 22px 0; border-bottom: 1px solid var(--line); }
.services__num { font-family: var(--serif); font-size: 1.1rem; color: var(--accent); line-height: 1.6; }
.services__item h3 { font-family: var(--serif); font-size: 1.6rem; line-height: 1.2; margin-bottom: 4px; }
.services__item p { margin: 0; color: var(--ink-2); }
@media (min-width: 900px) { .intro { grid-template-columns: 1fr 1fr; gap: 96px; align-items: start; } }

.split { display: grid; gap: 40px; align-items: center; }
.split--top { align-items: start; }
.split__media img, .split__media .ph { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; }
@media (min-width: 900px) { .split { grid-template-columns: 5fr 6fr; gap: 88px; } }
.prose p { font-size: 1.08rem; color: var(--ink-2); max-width: 60ch; }
.prose p:first-child { font-family: var(--serif); font-size: 1.55rem; line-height: 1.4; color: var(--ink); }

.page-hero { padding: calc(clamp(56px, 9vw, 112px)) 0 clamp(40px, 6vw, 64px); }
.page-hero--center { text-align: center; }
.page-hero--center .page-lead { margin: 0 auto; }

/* ── Galeri ── */
.gallery { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
@media (min-width: 700px) { .gallery { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; } }
@media (min-width: 1100px) { .gallery { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; } }
.gallery__item[hidden] { display: none; }
.gallery__link { display: block; overflow: hidden; background: var(--line); aspect-ratio: 4 / 5; }
.gallery__link img { width: 100%; height: 100%; object-fit: cover; transition: transform .8s var(--ease), opacity .4s; }
.gallery__link:hover img { transform: scale(1.035); }
.gallery--placeholder .ph { aspect-ratio: 4 / 5; }

.ph { display: flex; align-items: center; justify-content: center; text-align: center; padding: 16px; background: repeating-linear-gradient(135deg, #ebe6df 0 12px, #e6e0d8 12px 24px); color: var(--muted); font-size: .8rem; letter-spacing: .03em; }
.ph span { display: inline-flex; flex-direction: column; align-items: center; gap: 8px; }
.ph--portrait { aspect-ratio: 4 / 5; }

.filters { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 28px; }
.chip { min-height: 40px; padding: 0 18px; border: 1px solid var(--line); border-radius: 999px; background: var(--surface); font-size: .85rem; cursor: pointer; transition: all .2s var(--ease); }
.chip:hover { border-color: var(--ink); }
.chip.is-active { background: var(--ink); border-color: var(--ink); color: #fff; }
.empty > p { color: var(--ink-2); margin-bottom: 24px; }

.ig-grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; }
@media (min-width: 900px) { .ig-grid { grid-template-columns: repeat(6, minmax(0, 1fr)); } }
.ig-grid a { display: block; aspect-ratio: 1; overflow: hidden; background: var(--line); }
.ig-grid img { width: 100%; height: 100%; object-fit: cover; }

/* ── Hakkımızda adımları ── */
.steps { list-style: none; margin: 0; padding: 0; display: grid; gap: 1px; background: var(--line); border: 1px solid var(--line); }
@media (min-width: 700px) { .steps { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1100px) { .steps { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.steps__item { background: var(--bg-tint); padding: 32px 28px; }
.steps__num { display: block; font-family: var(--serif); font-size: 2.4rem; color: var(--accent); line-height: 1; margin-bottom: 20px; }
.steps__item h3 { font-family: var(--serif); font-size: 1.6rem; margin-bottom: 8px; }
.steps__item p { margin: 0; color: var(--ink-2); }

/* ── İletişim ── */
.band { background: var(--ink); color: #fff; padding: clamp(64px, 8vw, 96px) 0; }
.band__inner { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 24px 48px; }
.band__inner .btn-row { margin-top: 0; }
.band__title { font-family: var(--serif); font-size: clamp(2rem, 4vw, 3rem); line-height: 1.1; margin-bottom: 8px; }
.band__text { margin: 0; color: rgba(255, 255, 255, .78); }

.contact-grid { list-style: none; margin: 40px 0 0; padding: 0; display: grid; grid-template-columns: repeat(1, minmax(0, 1fr)); gap: 12px; }
@media (min-width: 600px) { .contact-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1100px) { .contact-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.contact-card { display: flex; flex-direction: column; gap: 6px; height: 100%; padding: 28px 24px; background: var(--surface); border: 1px solid var(--line); text-decoration: none; transition: border-color .25s var(--ease); }
.contact-card:hover { border-color: var(--ink); }
.contact-card__icon { color: var(--accent); margin-bottom: 12px; }
.contact-card__icon .icon { width: 26px; height: 26px; }
.contact-card__title { font-size: .75rem; letter-spacing: .16em; text-transform: uppercase; color: var(--muted); font-weight: 500; }
.contact-card__value { font-family: var(--serif); font-size: 1.45rem; line-height: 1.25; overflow-wrap: anywhere; }
.info-row { display: grid; gap: 12px; margin-top: 12px; }
@media (min-width: 700px) { .info-row { grid-template-columns: 1fr 1fr; } }
.info-block { padding: 28px 24px; border: 1px solid var(--line); background: var(--surface); }
.info-block__title { display: flex; align-items: center; gap: 10px; font-family: var(--serif); font-size: 1.5rem; margin-bottom: 14px; }
.info-block__title .icon { color: var(--accent); }
.info-block p { color: var(--ink-2); }
.plain-list { list-style: none; margin: 0; padding: 0; color: var(--ink-2); }
.plain-list li { padding: 8px 0; border-bottom: 1px solid var(--line); }
.plain-list li:last-child { border: 0; }

/* ── Alt bilgi ── */
.site-footer { background: #141210; color: rgba(255, 255, 255, .78); padding: 64px 0 28px; font-size: .92rem; }
.site-footer a { text-decoration: none; }
.site-footer a:hover { color: #fff; }
.site-footer__inner { display: grid; gap: 36px; }
@media (min-width: 900px) { .site-footer__inner { grid-template-columns: 2fr 2fr 1fr; } }
.site-footer .brand { color: #fff; }
.site-footer__brand p { margin: 8px 0 0; }
.site-footer__nav { display: flex; flex-wrap: wrap; gap: 4px 24px; align-content: start; }
.site-footer__nav a { min-height: 44px; display: inline-flex; align-items: center; }
.site-footer__social { display: flex; flex-direction: column; gap: 4px; }
.icon-link { display: inline-flex; align-items: center; gap: 10px; min-height: 44px; }
.site-footer__base { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px; margin-top: 48px; padding-top: 24px; border-top: 1px solid rgba(255, 255, 255, .12); font-size: .8rem; color: rgba(255, 255, 255, .6); }

/* ── Büyük görüntüleme (lightbox) ── */
.lb { position: fixed; inset: 0; z-index: 100; display: none; align-items: center; justify-content: center; background: rgba(16, 14, 12, .97); color: #fff; touch-action: pan-y; }
.lb.is-open { display: flex; }
.lb__img { max-width: 94vw; max-height: 84vh; max-height: 84svh; object-fit: contain; user-select: none; -webkit-user-drag: none; transition: opacity .25s; }
.lb__img.is-loading { opacity: .3; }
.lb__btn { position: absolute; display: inline-flex; align-items: center; justify-content: center; width: 52px; height: 52px; border: 0; border-radius: 50%; background: rgba(255, 255, 255, .08); color: #fff; cursor: pointer; transition: background .2s; }
.lb__btn:hover { background: rgba(255, 255, 255, .18); }
.lb__btn .icon { width: 24px; height: 24px; }
.lb__close { top: 14px; right: 14px; }
.lb__prev { left: 14px; top: 50%; transform: translateY(-50%); }
.lb__next { right: 14px; top: 50%; transform: translateY(-50%); }
.lb__bar { position: absolute; left: 0; right: 0; bottom: 0; display: flex; align-items: center; justify-content: center; gap: 16px; padding: 14px 16px calc(14px + env(safe-area-inset-bottom)); font-size: .85rem; color: rgba(255, 255, 255, .75); }
.lb__fav { position: static; transform: none; }
.lb__fav[aria-pressed="true"] { color: #f0a69a; }
.lb__fav[aria-pressed="true"] .icon { fill: currentColor; }
@media (max-width: 699px) { .lb__prev, .lb__next { display: none; } }

/* ══════════════════════════ Paneller ══════════════════════════ */
.panel-body { background: var(--bg); }
.panel-header { background: var(--surface); border-bottom: 1px solid var(--line); position: sticky; top: 0; z-index: 30; }
.panel-header__inner { min-height: 64px; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 16px; padding-top: 6px; padding-bottom: 6px; }
.panel-header .brand__name { font-size: 1.35rem; }
.panel-nav { display: flex; flex-wrap: wrap; align-items: center; gap: 4px; }
.panel-nav__who { font-weight: 500; margin-right: 8px; font-size: .92rem; }
.panel-nav__link { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 0 12px; text-decoration: none; font-size: .9rem; color: var(--ink-2); border-radius: var(--radius); }
.panel-nav__link:hover { background: var(--bg-tint); color: var(--ink); }
.panel-nav__link[aria-current="page"] { color: var(--ink); background: var(--bg-tint); font-weight: 500; }
@media (max-width: 599px) { .panel-nav__link span, .panel-nav .btn--text span { display: none; } }
.panel-main { padding: 36px 0 96px; }
.panel-main .page-title { font-size: clamp(2rem, 5vw, 3rem); }
.welcome { margin-bottom: 28px; }
.welcome .page-title { margin-bottom: 4px; }
.panel-title-row { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 16px; margin-bottom: 24px; }
.back-link { display: inline-flex; align-items: center; gap: 6px; min-height: 44px; margin-bottom: 8px; font-size: .9rem; color: var(--ink-2); text-decoration: none; }
.back-link .icon { width: 18px; height: 18px; }

.panel-section { margin-top: 48px; }
.panel-section__head { margin-bottom: 18px; }
.panel-section__title { font-family: var(--serif); font-size: 1.9rem; line-height: 1.15; margin-bottom: 6px; }
.panel-section__head p { margin: 0; max-width: 70ch; }

.card { background: var(--surface); border: 1px solid var(--line); padding: 24px; }
.card__title { font-family: var(--serif); font-size: 1.5rem; line-height: 1.2; margin-bottom: 16px; }
.card .muted { font-size: .92rem; }
.admin-grid { display: grid; gap: 16px; align-items: start; }
@media (min-width: 960px) { .admin-grid { grid-template-columns: 360px 1fr; } .admin-grid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.admin-grid--3 { margin-top: 16px; }

.flash { padding: 14px 18px; margin-bottom: 18px; border: 1px solid var(--line); background: var(--surface); border-left-width: 1px; font-size: .95rem; }
.flash--success { border-color: #b9cfbd; background: #eef5ef; color: var(--success); }
.flash--error { border-color: #e7bdb8; background: #fbefed; color: var(--danger); }
.credentials { padding: 20px; margin-bottom: 18px; background: var(--accent-soft); border: 1px solid #e3cbc3; }
.credentials__title { display: flex; align-items: center; gap: 8px; font-weight: 600; margin-bottom: 12px; }
.credentials dl { display: grid; gap: 8px; margin: 0 0 12px; }
.credentials dl div { display: flex; flex-wrap: wrap; gap: 4px 12px; }
.credentials dt { min-width: 110px; color: var(--ink-2); }
.credentials dd { margin: 0; font-weight: 500; overflow-wrap: anywhere; }
.credentials code { background: #fff; font-size: 1rem; }
.credentials p { margin: 0; font-size: .88rem; }

/* Formlar */
.form { display: grid; gap: 16px; }
.form--compact { gap: 8px; }
.field { display: grid; gap: 6px; }
.field--inline { max-width: 320px; margin-bottom: 14px; }
.field label, .field--inline label { font-size: .88rem; font-weight: 500; }
.hint { margin: 0; font-size: .82rem; color: var(--muted); }
input[type="text"], input[type="password"], input[type="date"], select, textarea {
  width: 100%; min-height: 48px; padding: 10px 14px;
  background: var(--surface); border: 1px solid #cfc8bf; border-radius: var(--radius);
  font-size: 1rem; transition: border-color .2s;
}
textarea { min-height: 88px; resize: vertical; }
input:focus, select:focus, textarea:focus { border-color: var(--ink); outline: none; box-shadow: 0 0 0 3px rgba(122, 58, 46, .14); }
.check { display: flex; align-items: center; gap: 10px; min-height: 44px; font-size: .92rem; cursor: pointer; }
.check input { width: 20px; height: 20px; accent-color: var(--ink); }

/* Giriş ekranı */
.auth { min-height: calc(100vh - var(--header-h) - 200px); display: flex; align-items: center; justify-content: center; padding: 64px var(--gutter); }
.auth__card { width: 100%; max-width: 420px; background: var(--surface); border: 1px solid var(--line); padding: 36px 28px; }
.auth__icon { display: inline-flex; width: 48px; height: 48px; align-items: center; justify-content: center; border-radius: 50%; background: var(--bg-tint); color: var(--accent); margin-bottom: 16px; }
.auth__title { font-family: var(--serif); font-size: 2.2rem; line-height: 1.1; margin-bottom: 8px; }
.auth__lead { color: var(--ink-2); font-size: .95rem; margin-bottom: 24px; }
.auth__note { padding: 14px; background: var(--bg-tint); font-size: .92rem; margin: 0; }
.auth__help { text-align: center; color: var(--muted); font-size: .9rem; margin: -40px 0 64px; }

/* Durum çubuğu */
.status { background: var(--surface); border: 1px solid var(--line); padding: 24px; }
.status__head { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: baseline; gap: 6px 20px; margin-bottom: 18px; }
.status__title { font-family: var(--serif); font-size: 1.6rem; }
.status__current { margin: 0; color: var(--ink-2); font-size: .95rem; }
.status__track { height: 4px; background: var(--bg-tint); border-radius: 4px; overflow: hidden; margin-bottom: 22px; }
.status__fill { display: block; height: 100%; width: 0; background: var(--accent); border-radius: 4px; transition: width .8s var(--ease); }
.status__steps { list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; }
.status__step { display: flex; align-items: center; gap: 12px; font-size: .92rem; color: var(--muted); }
.status__dot { flex: none; display: inline-flex; align-items: center; justify-content: center; width: 30px; height: 30px; border-radius: 50%; border: 1px solid var(--line); background: var(--surface); font-size: .8rem; font-weight: 500; }
.status__dot .icon { width: 16px; height: 16px; }
.status__step--done { color: var(--ink-2); }
.status__step--done .status__dot { background: var(--ink); border-color: var(--ink); color: #fff; }
.status__step--current { color: var(--ink); font-weight: 600; }
.status__step--current .status__dot { background: var(--accent); border-color: var(--accent); color: #fff; box-shadow: 0 0 0 4px var(--accent-soft); }
.status__note { margin: 18px 0 0; padding: 12px 14px; background: var(--bg-tint); font-size: .92rem; color: var(--ink-2); }
@media (min-width: 900px) {
  .status__steps { grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 8px; }
  .status__step { flex-direction: column; align-items: flex-start; gap: 10px; font-size: .85rem; line-height: 1.35; }
}

/* Sekmeler */
.tabs { display: flex; flex-wrap: wrap; gap: 4px; margin-bottom: 16px; border-bottom: 1px solid var(--line); }
.tab { display: inline-flex; align-items: center; gap: 8px; min-height: 46px; padding: 0 14px; font-size: .92rem; text-decoration: none; color: var(--ink-2); border-bottom: 2px solid transparent; margin-bottom: -1px; }
.tab .icon { width: 16px; height: 16px; }
.tab.is-active { color: var(--ink); border-bottom-color: var(--ink); font-weight: 500; }
.tab__count { font-size: .78rem; background: var(--bg-tint); border-radius: 999px; padding: 1px 8px; color: var(--ink-2); }

/* Fotoğraf kutuları */
.tiles { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
@media (min-width: 600px) { .tiles { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (min-width: 900px) { .tiles { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; } }
@media (min-width: 1200px) { .tiles { grid-template-columns: repeat(5, minmax(0, 1fr)); } }
.tile { position: relative; background: var(--line); }
.tile__img { display: block; aspect-ratio: 1; overflow: hidden; }
.tile__img img { width: 100%; height: 100%; object-fit: cover; }
.tile__bar { display: flex; align-items: center; justify-content: flex-end; gap: 2px; padding: 2px; background: var(--surface); border: 1px solid var(--line); border-top: 0; }
.tile__fav { margin-right: auto; }
.tile__fav, .tile__btn { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border: 0; background: none; color: var(--ink-2); cursor: pointer; border-radius: var(--radius); text-decoration: none; }
.tile__fav:hover, .tile__btn:hover { background: var(--bg-tint); color: var(--ink); }
.tile__fav[aria-pressed="true"] { color: var(--accent); }
.tile__fav[aria-pressed="true"] .icon { fill: currentColor; }
.tile__btn--danger:hover { color: var(--danger); }
.tile.is-fav .tile__img { outline: 2px solid var(--accent); outline-offset: -2px; }
.tile__fav.is-busy { opacity: .5; pointer-events: none; }

.empty-box { display: flex; flex-direction: column; align-items: center; gap: 10px; text-align: center; padding: 56px 20px; border: 1px dashed #cfc8bf; color: var(--muted); }
.empty-box .icon { width: 32px; height: 32px; }
.empty-box p { margin: 0; max-width: 46ch; }

.table-wrap { overflow-x: auto; margin: 0 -24px; padding: 0 24px; }
.table { width: 100%; border-collapse: collapse; font-size: .92rem; min-width: 560px; }
.table th { text-align: left; font-weight: 500; font-size: .78rem; text-transform: uppercase; letter-spacing: .1em; color: var(--muted); padding: 10px 12px 10px 0; border-bottom: 1px solid var(--line); }
.table td { padding: 14px 12px 14px 0; border-bottom: 1px solid var(--line); vertical-align: middle; }
.table code { font-size: .8rem; }
.strong-link { font-weight: 600; text-decoration: none; }
.strong-link:hover { text-decoration: underline; }
.badge { display: inline-block; padding: 3px 10px; border-radius: 999px; background: var(--accent-soft); color: var(--accent); font-size: .8rem; font-weight: 500; white-space: nowrap; }
.badge--done { background: #e6efe7; color: var(--success); }

/* Yükleyici */
.uploader { background: var(--surface); border: 1px solid var(--line); padding: 20px; }
.uploader__drop { position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px; text-align: center; min-height: 160px; padding: 24px; border: 1px dashed #bdb5ab; background: var(--bg); cursor: pointer; transition: border-color .2s, background .2s; }
.uploader__drop:hover, .uploader__drop.is-over { border-color: var(--ink); background: var(--bg-tint); }
.uploader__drop .icon { width: 28px; height: 28px; color: var(--accent); }
.uploader__drop input { position: absolute; inset: 0; opacity: 0; cursor: pointer; }
.uploader__drop:has(input:focus-visible) { outline: 2px solid var(--accent); outline-offset: 3px; }
.uploader__list { list-style: none; margin: 12px 0 0; padding: 0; display: grid; gap: 6px; font-size: .88rem; }
.uploader__list li { display: flex; justify-content: space-between; gap: 12px; padding: 8px 12px; background: var(--bg-tint); }
.uploader__list .ok { color: var(--success); }
.uploader__list .err { color: var(--danger); }
.uploader__list .name { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

.pf-admin { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 14px; }
.pf-admin__item { position: relative; background: var(--surface); border: 1px solid var(--line); padding: 8px; display: grid; gap: 8px; }
.pf-admin__item.is-hero { border-color: var(--success); }
.pf-admin__img { display: block; aspect-ratio: 4 / 5; overflow: hidden; background: var(--line); }
.pf-admin__img img { width: 100%; height: 100%; object-fit: cover; }
.pf-admin__badge { position: absolute; top: 16px; left: 16px; }
.pf-admin__actions { display: flex; justify-content: space-between; }
.pf-admin input, .pf-admin select { min-height: 44px; font-size: .9rem; }

.danger-zone { margin-top: 56px; padding: 24px; border: 1px solid #e7bdb8; background: #fdf7f6; }
.danger-zone .btn { margin-top: 8px; }

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

/* ══════════════════════ Demo ve görüşler ══════════════════════ */
.demo-banner { position: relative; z-index: 50; display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 4px 16px; padding: 8px var(--gutter); background: var(--accent); color: #fff; font-size: .85rem; text-align: center; }
.demo-banner__link { display: inline-flex; align-items: center; gap: 6px; min-height: 32px; font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
.demo-banner__link .icon { width: 16px; height: 16px; }
.demo-banner + .site-header--overlay { top: auto; }
body:has(.demo-banner) .site-header--overlay { position: absolute; }
body:has(.demo-banner) .site-header--overlay.is-solid { position: fixed; top: 0; }
.demo-try { margin: 0 0 24px; padding: 18px; background: var(--accent-soft); border: 1px solid #e3cbc3; }
.demo-try__title { font-weight: 600; margin: 0 0 2px; }
.demo-try .muted { font-size: .88rem; margin-bottom: 14px; }
.demo-try__actions { display: grid; gap: 8px; }
.demo-try__actions form { margin: 0; }

.hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.thanks { text-align: center; }
.thanks .btn-row { justify-content: center; margin-top: 20px; }
.rating { border: 0; margin: 0; padding: 0; }
.rating legend { font-size: .88rem; font-weight: 500; margin-bottom: 8px; padding: 0; }
.rating__row { display: flex; gap: 8px; }
.rating__opt { position: relative; flex: 1; }
.rating__opt input { position: absolute; opacity: 0; inset: 0; cursor: pointer; }
.rating__opt span { display: flex; align-items: center; justify-content: center; height: 48px; border: 1px solid #cfc8bf; border-radius: var(--radius); font-weight: 500; background: var(--surface); transition: all .2s var(--ease); }
.rating__opt input:checked + span { background: var(--ink); border-color: var(--ink); color: #fff; }
.rating__opt input:focus-visible + span { outline: 2px solid var(--accent); outline-offset: 2px; }
.rating .hint { margin-top: 6px; }

.stats { display: grid; gap: 12px; margin-bottom: 16px; }
@media (min-width: 800px) { .stats { grid-template-columns: 1fr 1fr 2fr; } }
.stat { background: var(--surface); border: 1px solid var(--line); padding: 20px; display: flex; flex-direction: column; gap: 4px; }
.stat__num { font-family: var(--serif); font-size: 2.6rem; line-height: 1; }
.stat__label { font-size: .85rem; color: var(--muted); }
.stat__list { list-style: none; margin: 6px 0 0; padding: 0; display: grid; gap: 4px; font-size: .92rem; }
.stat__list li { display: flex; justify-content: space-between; border-bottom: 1px solid var(--line); padding: 4px 0; }
.fb-list { list-style: none; margin: 20px 0 0; padding: 0; display: grid; gap: 10px; }
.fb { background: var(--surface); border: 1px solid var(--line); padding: 18px 20px 8px; }
.fb__head { display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px 14px; margin-bottom: 8px; }
.score { font-family: var(--serif); font-size: 1.5rem; line-height: 1; color: var(--accent); }
.score .muted { font-size: .9rem; }
.fb__meta { font-size: .88rem; color: var(--ink-2); }
.fb__time { margin-left: auto; font-size: .82rem; color: var(--muted); }
.fb__msg { white-space: pre-line; margin-bottom: 4px; }

/* ══════════════════ Uygulama (PWA) ══════════════════ */
/* Telefonda alttaki sekme menüsü */
.tabbar { display: none; }
@media (max-width: 699px) {
  .tabbar {
    position: fixed; left: 0; right: 0; bottom: 0; z-index: 45;
    display: grid; grid-auto-flow: column; grid-auto-columns: 1fr;
    padding: 4px max(8px, env(safe-area-inset-left, 0px)) calc(4px + env(safe-area-inset-bottom, 0px)) max(8px, env(safe-area-inset-right, 0px));
    background: rgba(251, 250, 248, .96); border-top: 1px solid var(--line);
  }
  @supports (backdrop-filter: blur(8px)) { .tabbar { background: rgba(251, 250, 248, .85); backdrop-filter: blur(12px); } }
  .tabbar__form { margin: 0; display: contents; }
  .tabbar__item {
    display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 3px;
    min-height: 52px; border: 0; background: none; color: var(--muted);
    font-size: .68rem; letter-spacing: .04em; text-decoration: none; cursor: pointer;
  }
  .tabbar__item .icon { width: 22px; height: 22px; }
  .tabbar__item[aria-current="page"] { color: var(--ink); }
  .tabbar__item[aria-current="page"] .icon { stroke-width: 1.8; }
  .panel-main.has-tabbar { padding-bottom: calc(96px + env(safe-area-inset-bottom, 0px)); }
  /* Sekme menüsü varken üstteki menü sadeleşir */
  body:has(.tabbar) .panel-nav__link, body:has(.tabbar) .panel-nav .inline-form { display: none; }
}

/* Uygulama olarak açıldığında (ana ekrandan) üst güvenli alan */
@media (display-mode: standalone) {
  .panel-header, .site-header { padding-top: env(safe-area-inset-top, 0px); }
  .site-header { height: calc(var(--header-h) + env(safe-area-inset-top, 0px)); }
}

/* "Ana ekrana ekle" kartı */
.install { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 14px; padding: 14px 16px; margin-bottom: 20px; background: var(--bg-tint); border: 1px solid var(--line); }
.install[hidden] { display: none; }
.install__icon { width: 48px; height: 48px; border-radius: 11px; flex: none; }
.install__copy { flex: 1 1 160px; min-width: 0; }
.install__close { order: 3; }
@media (max-width: 480px) { .install [data-install-btn] { order: 4; width: 100%; } }
.install__title { margin: 0; font-weight: 600; font-size: .95rem; }
.install__text { margin: 2px 0 0; font-size: .88rem; color: var(--ink-2); }
.install__close { flex: none; display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; border: 0; background: none; color: var(--muted); cursor: pointer; border-radius: var(--radius); }
.install__close:hover { background: rgba(0, 0, 0, .05); color: var(--ink); }
.install__close .icon { width: 18px; height: 18px; }

/* ══════════════ Albüm, plan, takvim ══════════════ */
.subnav { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 20px; }
.subnav .chip { display: inline-flex; align-items: center; text-decoration: none; }
.album-bar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px 24px; padding: 16px 20px; margin-bottom: 16px; background: var(--surface); border: 1px solid var(--line); }
.album-bar__info { flex: 1 1 220px; min-width: 0; }
.album-bar__title { margin: 0; font-size: .74rem; letter-spacing: .16em; text-transform: uppercase; color: var(--muted); font-weight: 500; }
.album-bar__count { margin: 2px 0 8px; font-family: var(--serif); font-size: 1.7rem; line-height: 1.1; font-variant-numeric: tabular-nums; }
.album-bar__count strong { font-weight: 500; }
.album-bar__track { height: 4px; max-width: 320px; background: var(--bg-tint); border-radius: 4px; overflow: hidden; }
.album-bar__fill { display: block; height: 100%; width: 0; background: var(--accent); transition: width .6s var(--ease); }
.album-bar__action { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.album-note { margin: -6px 0 16px; font-size: .9rem; color: var(--ink-2); }
.badge .icon { width: 14px; height: 14px; vertical-align: -2px; margin-right: 4px; }
.btn[disabled] { opacity: .45; cursor: not-allowed; }
.tile__fav[disabled] { opacity: .6; cursor: default; }
.plan-grid { display: grid; gap: 16px; }
@media (min-width: 700px) { .plan-grid { grid-template-columns: 1fr 1fr; } }
.plan-foot { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 20px; }
.plan-foot .muted { font-size: .88rem; }
.plan-view { margin: 0; }
.plan-view div { display: grid; gap: 2px 20px; padding-block: 12px; border-bottom: 1px solid var(--line); }
.plan-view div:last-child { border-bottom: 0; }
@media (min-width: 700px) { .plan-view div { grid-template-columns: 160px minmax(0, 1fr); } }
.plan-view dt { font-size: .85rem; color: var(--muted); }
.plan-view dd { margin: 0; white-space: pre-line; overflow-wrap: anywhere; }
.stats--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
@media (min-width: 800px) { .stats--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.jobs { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.job { display: grid; grid-template-columns: 52px minmax(0, 1fr) auto; align-items: center; gap: 14px; padding: 14px 16px; background: var(--surface); border: 1px solid var(--line); }
.job__date { display: flex; flex-direction: column; align-items: center; line-height: 1; }
.job__day { font-family: var(--serif); font-size: 1.8rem; font-variant-numeric: tabular-nums; }
.job__mon { margin-top: 4px; font-size: .7rem; letter-spacing: .1em; text-transform: uppercase; color: var(--muted); }
.job__main { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.job__main .muted { font-size: .85rem; }
.job__side { display: flex; flex-direction: column; align-items: flex-end; gap: 4px; text-align: right; }
.job__rel { font-size: .8rem; font-variant-numeric: tabular-nums; }
.state { display: inline-block; padding: 3px 10px; border-radius: 999px; font-size: .78rem; font-weight: 500; white-space: nowrap; }
.state--late { background: #fbe5e2; color: #9b2318; }
.state--soon { background: #fbf0d9; color: #6e4a00; }
.state--ok { background: #e6efe7; color: #2f5d3a; }
.state--done { background: #ecebe8; color: #4f4a44; }
.state--upcoming { background: #e4ecf5; color: #27466b; }
@media (max-width: 480px) { .job { grid-template-columns: 40px minmax(0, 1fr); } .job__side { grid-column: 2; flex-direction: row; align-items: center; justify-content: flex-start; } }
.account-logout { margin-top: 16px; }
.toast { position: fixed; left: 50%; bottom: calc(24px + env(safe-area-inset-bottom, 0px)); transform: translateX(-50%); z-index: 120; max-width: calc(100vw - 32px); padding: 12px 18px; background: var(--ink); color: #fff; font-size: .88rem; box-shadow: 0 8px 24px rgba(0, 0, 0, .18); }
.toast[hidden] { display: none; }
@media (max-width: 699px) { body:has(.tabbar) .toast { bottom: calc(80px + env(safe-area-inset-bottom, 0px)); } }

/* ══════════════ Minimal tasarım dili ══════════════
   Kutu ve çerçeve yok: ayrım boşlukla ve tek piksellik ince çizgilerle.
   Hareket az ve yavaş: kapakta yumuşak yerleşme, sayfa açılışında hafif solma.
   Bu bölümü silerseniz site önceki (kutulu) görünümüne döner. */
:root { --line: #ebe7e1; --hair: rgba(28, 26, 24, .09); --soft: cubic-bezier(.22, .61, .36, 1); }
.eyebrow { color: var(--muted); letter-spacing: .24em; font-size: .68rem; }
.eyebrow--light { color: rgba(255, 255, 255, .8); }
.section { padding: clamp(84px, 11vw, 148px) 0; }
.section-title, .page-title, .panel-section__title, .card__title, .status__title, .band__title, .auth__title { letter-spacing: -.01em; }
.brand__name { font-size: 1.15rem; letter-spacing: .32em; text-transform: uppercase; font-weight: 500; }
.panel-header .brand__name { font-size: 1rem; }
.demo-banner { background: var(--ink); font-size: .78rem; padding-block: 7px; }

.site-header { border-bottom-color: transparent; transition: border-color .5s var(--soft), background-color .5s var(--soft); }
.site-header.is-scrolled, .site-header--overlay.is-solid { border-bottom-color: var(--hair); }
.site-nav__list a { letter-spacing: .12em; text-transform: uppercase; }
@media (min-width: 900px) {
  .site-nav__list a { font-size: .72rem; }
  .site-nav__login { border: 0 !important; padding: 0 !important; min-height: 40px; font-size: .72rem !important; letter-spacing: .12em; text-transform: uppercase; opacity: .85; }
  .site-nav__login:hover { opacity: 1; }
}
.panel-header { background: var(--bg); border-bottom-color: var(--hair); }

.btn { border-radius: 0; min-height: 46px; padding: 0 28px; font-size: .72rem; letter-spacing: .16em; text-transform: uppercase; transition: background-color .4s var(--soft), color .4s var(--soft), border-color .4s var(--soft); }
.btn .icon { width: 16px; height: 16px; }
.btn--outline { border-color: rgba(28, 26, 24, .3); }
.btn--outline:hover { border-color: var(--ink); }
.btn--ghost-light { border-color: rgba(255, 255, 255, .5); }
.btn--text { font-size: .72rem; text-transform: uppercase; letter-spacing: .12em; }
.btn--sm { min-height: 40px; padding: 0 16px; }
.text-link { font-size: .72rem; letter-spacing: .16em; text-transform: uppercase; border-bottom-color: var(--hair); padding-bottom: 4px; }
.text-link:hover { border-bottom-color: var(--ink); }

.hero__shade { background: linear-gradient(to top, rgba(16, 14, 12, .62) 0%, rgba(16, 14, 12, .18) 50%, rgba(16, 14, 12, .22) 100%); }
.hero__title { font-weight: 400; letter-spacing: -.015em; }
.hero__media { object-position: 50% 62%; }

.gallery { gap: 4px; }
@media (min-width: 700px) { .gallery { gap: 8px; } }
.gallery__link { background: var(--bg-tint); }
.gallery__link img, .tile__img img { object-position: 50% 40%; }
.gallery__link img { transition: transform 1.6s var(--soft), filter 1.2s var(--soft); }
.gallery__link:hover img { transform: scale(1.025); filter: brightness(.96); }

.filters, .subnav { gap: 6px 22px; }
.chip { min-height: 40px; padding: 0; border: 0; border-bottom: 1px solid transparent; border-radius: 0; background: none; color: var(--muted); font-size: .72rem; letter-spacing: .14em; text-transform: uppercase; }
.chip:hover { color: var(--ink); border-color: transparent; }
.chip.is-active { background: none; color: var(--ink); border-bottom-color: var(--ink); }
.tabs { border-bottom-color: var(--hair); gap: 22px; }
.tab { padding: 0; font-size: .72rem; letter-spacing: .14em; text-transform: uppercase; }
.tab__count { background: none; padding: 0; color: var(--muted); }

.services, .services__item { border-color: var(--hair); }
.services__num, .steps__num { color: var(--muted); font-size: .95rem; }
.steps { background: none; border: 0; gap: 40px 32px; }
.steps__item { background: none; padding: 24px 0 0; border-top: 1px solid var(--hair); }
.steps__num { margin-bottom: 14px; }

.contact-grid { gap: 0 32px; }
.contact-card { background: none; border: 0; border-top: 1px solid var(--hair); padding: 24px 0; }
.contact-card__icon { color: var(--ink-2); margin-bottom: 6px; }
.contact-card__icon .icon { width: 20px; height: 20px; }
.contact-card__value { font-size: 1.3rem; }
.info-row { gap: 0 32px; margin-top: 24px; }
.info-block { background: none; border: 0; border-top: 1px solid var(--hair); padding: 24px 0; }
.info-block__title { font-size: 1.3rem; }
.info-block__title .icon { color: var(--ink-2); width: 18px; height: 18px; }
.plain-list li { border-color: var(--hair); }

.card, .uploader, .auth__card { border: 0; background: var(--bg-tint); }
.status { border: 0; background: none; padding: 0; }
.status__head { margin-bottom: 14px; }
.status__track { height: 1px; background: var(--line); margin-bottom: 20px; border-radius: 0; }
.status__fill { background: var(--ink); border-radius: 0; transition: width 1.2s var(--soft); }
.status__dot { width: 22px; height: 22px; font-size: .68rem; border-color: var(--line); background: var(--bg); }
.status__dot .icon { width: 12px; height: 12px; }
.status__step--done .status__dot { background: var(--bg); border-color: var(--ink); color: var(--ink); }
.status__step--current .status__dot { background: var(--ink); border-color: var(--ink); box-shadow: none; }
.status__note { background: none; padding: 0 0 0 14px; border-left: 1px solid var(--line); margin-top: 16px; }

.album-bar { background: none; border: 0; border-bottom: 1px solid var(--hair); padding: 0 0 18px; }
.album-bar__track { height: 1px; background: var(--line); border-radius: 0; }
.album-bar__fill { background: var(--ink); transition: width 1s var(--soft); }

.tile { background: var(--bg-tint); }
.tile__img img { transition: transform 1.4s var(--soft); }
.tile:hover .tile__img img { transform: scale(1.03); }
.tile__bar { position: absolute; left: 0; right: 0; bottom: 0; padding: 22px 4px 4px; border: 0; background: linear-gradient(to top, rgba(12, 11, 10, .5), rgba(12, 11, 10, 0)); }
.tile__fav, .tile__btn { width: 40px; height: 40px; color: #fff; }
.tile__fav:hover, .tile__btn:hover, .tile__btn--danger:hover { background: rgba(255, 255, 255, .14); color: #fff; }
.tile__fav[aria-pressed="true"] { color: #fff; }
.tile.is-fav .tile__img { outline: 0; }
.tile__fav[disabled]:hover { background: none; }

input[type="text"], input[type="password"], input[type="date"], input[type="number"], select, textarea {
  border: 0; border-bottom: 1px solid #cdc6bd; border-radius: 0; background: transparent; padding: 10px 0; min-height: 44px;
}
textarea { min-height: 96px; }
input:focus, select:focus, textarea:focus { border-bottom-color: var(--ink); box-shadow: none; }
.field label, .field--inline label { font-size: .7rem; letter-spacing: .14em; text-transform: uppercase; font-weight: 500; color: var(--ink-2); }

.stat { background: none; border: 0; border-top: 1px solid var(--hair); padding: 16px 0 0; }
.stat__num { font-size: 2.2rem; }
.stats { gap: 16px 28px; }
.jobs { gap: 0; border-top: 1px solid var(--hair); }
.job { background: none; border: 0; border-bottom: 1px solid var(--hair); padding: 16px 0; }
.fb-list { gap: 0; border-top: 1px solid var(--hair); }
.fb { background: none; border: 0; border-bottom: 1px solid var(--hair); padding: 18px 0 10px; }
.plan-view div { border-color: var(--hair); }
.empty-box { border: 0; background: var(--bg-tint); }
.credentials, .demo-try, .danger-zone, .install { border: 0; }
.danger-zone { background: none; border-top: 1px solid var(--hair); padding: 24px 0 0; }
.pf-admin__item { border: 0; background: none; padding: 0; }
.pf-admin__item.is-hero .pf-admin__img { outline: 1px solid var(--ink); outline-offset: 4px; }
.table th, .table td { border-bottom-color: var(--hair); }
.badge, .state { border-radius: 0; letter-spacing: .04em; }
.uploader__drop { border: 1px dashed #cdc6bd; background: none; }
.flash { border: 0; }
.toast { font-size: .82rem; letter-spacing: .02em; }
.tabbar { border-top-color: var(--hair); }

.lb { display: flex; opacity: 0; visibility: hidden; transition: opacity .45s var(--soft), visibility .45s; }
.lb.is-open { opacity: 1; visibility: visible; }
.lb__btn { background: none; }
.lb__btn:hover { background: rgba(255, 255, 255, .1); }
.lb__img { transition: opacity .5s var(--soft); }

@keyframes hm4-settle { from { transform: scale(1.05); } to { transform: scale(1); } }
@keyframes hm4-rise { from { transform: translateY(12px); opacity: .35; } to { transform: none; opacity: 1; } }
@keyframes hm4-fade { from { opacity: .35; } to { opacity: 1; } }
.hero__media { animation: hm4-settle 2.6s var(--soft) both; }
.hero__content > * { animation: hm4-rise 1.1s var(--soft) both; }
.hero__content > :nth-child(2) { animation-delay: .08s; }
.hero__content > :nth-child(3) { animation-delay: .16s; }
.hero__content > :nth-child(4) { animation-delay: .24s; }
#main { animation: hm4-fade .5s var(--soft) both; }
.hero ~ * #main, body:has(.hero) #main { animation: none; }

/* ══════════════ Uygulama giriş ekranı (/uygulama) ══════════════ */
.app-body { min-height: 100vh; min-height: 100svh; background: var(--bg); }
.app-login { min-height: 100vh; min-height: 100svh; display: flex; flex-direction: column; }
.app-login__media { position: relative; flex: 1 0 38vh; min-height: 38vh; background: #2a2622; color: #fff; overflow: hidden; }
.app-login__media img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 62%; animation: hm4-settle 2.6s var(--soft) both; }
.app-login__shade { position: absolute; inset: 0; background: linear-gradient(to top, rgba(16, 14, 12, .5), rgba(16, 14, 12, .08) 50%, rgba(16, 14, 12, .5)); }
.app-login__brand { position: absolute; left: 0; right: 0; top: calc(28px + env(safe-area-inset-top, 0px)); display: flex; flex-direction: column; align-items: center; gap: 6px; text-align: center; }
.app-login__brand .brand__name { font-size: 1.05rem; }
.app-login__tag { font-size: .66rem; letter-spacing: .22em; text-transform: uppercase; opacity: .85; }
.app-login__sheet {
  position: relative; margin-top: -20px; background: var(--bg);
  padding: 28px max(24px, env(safe-area-inset-right, 0px)) calc(28px + env(safe-area-inset-bottom, 0px)) max(24px, env(safe-area-inset-left, 0px));
  display: flex; flex-direction: column; gap: 14px; width: 100%; max-width: 480px; align-self: center;
}
.app-login__title { font-family: var(--serif); font-size: 2rem; line-height: 1.1; letter-spacing: -.01em; }
.app-login__lead { margin: 0; color: var(--ink-2); font-size: .95rem; }
.app-login .form { margin-top: 6px; }
.app-login__demo { margin: 0; }
.app-login__help { margin: 4px 0 0; font-size: .82rem; color: var(--muted); text-align: center; }
@media (min-width: 900px) {
  .app-login { flex-direction: row; }
  .app-login__media { flex: 1 1 55%; min-height: 100vh; }
  .app-login__sheet { margin: 0; justify-content: center; flex: 0 0 480px; padding-inline: 56px; }
}

/* Talepler */
.lead__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; margin: 8px 0 6px; }
.lead__status { display: inline-flex; align-items: center; gap: 6px; }
.lead__status select { min-height: 40px; width: auto; padding-right: 8px; font-size: .85rem; }
.lead .fb__head strong { font-weight: 600; }

/* ══════════════ Panel: takvim, çift kartları, randevu formu ══════════════ */
input[type="tel"], input[type="time"], input[type="search"] {
  width: 100%; border: 0; border-bottom: 1px solid #cdc6bd; border-radius: 0; background: transparent; padding: 10px 0; min-height: 44px; appearance: none;
}
input[type="tel"]:focus, input[type="time"]:focus, input[type="search"]:focus { outline: none; border-bottom-color: var(--ink); }
.btn .icon:first-child { margin-right: 8px; }
.stat__num--sm { font-size: 1.6rem; line-height: 1.35; }
.stat--link { text-decoration: none; }
.stat--link .stat__label { display: inline-flex; align-items: center; gap: 6px; }
.stat--link .icon { width: 14px; height: 14px; }
.stat--link:hover .stat__label { color: var(--ink); }

.dash { display: grid; gap: 40px; margin: 32px 0 8px; }
@media (min-width: 1000px) { .dash { grid-template-columns: minmax(0, 1fr) 340px; gap: 48px; } }
.dash__side .panel-section__title { margin-bottom: 14px; }

.cal__head { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 14px; }
.cal__title { font-family: var(--serif); font-size: 1.7rem; letter-spacing: -.01em; }
.cal__nav { display: flex; align-items: center; gap: 4px; }
.cal__btn { display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; color: var(--ink-2); }
.cal__btn:hover { color: var(--ink); background: var(--bg-tint); }
.cal__btn .icon { width: 18px; height: 18px; }
.cal__today { font-size: .7rem; letter-spacing: .14em; text-transform: uppercase; text-decoration: none; padding: 10px 8px; color: var(--ink-2); }
.cal__grid { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); border-top: 1px solid var(--hair); border-left: 1px solid var(--hair); }
.cal__dow { font-size: .66rem; letter-spacing: .14em; text-transform: uppercase; color: var(--muted); padding: 8px 6px; border-right: 1px solid var(--hair); border-bottom: 1px solid var(--hair); }
.cal__cell { min-height: 92px; padding: 4px; border-right: 1px solid var(--hair); border-bottom: 1px solid var(--hair); display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.cal__cell--empty { background: repeating-linear-gradient(135deg, transparent 0 6px, rgba(28, 26, 24, .025) 6px 7px); }
.cal__day { align-self: flex-start; display: inline-flex; align-items: center; justify-content: center; min-width: 26px; height: 26px; padding: 0 4px; font-size: .8rem; color: var(--ink-2); text-decoration: none; font-variant-numeric: tabular-nums; }
.cal__day:hover { background: var(--bg-tint); color: var(--ink); }
.cal__cell.is-today .cal__day { background: var(--ink); color: #fff; }
.cal__ev { display: flex; gap: 4px; align-items: baseline; padding: 3px 5px; font-size: .72rem; line-height: 1.3; text-decoration: none; border-left: 2px solid var(--ink); background: var(--bg-tint); min-width: 0; transition: background-color .3s var(--soft); }
.cal__ev:hover { background: #e9e4dc; }
.cal__ev--new { border-left-color: var(--accent); }
.cal__ev-time { color: var(--muted); font-variant-numeric: tabular-nums; flex: none; }
.cal__ev-time:empty { display: none; }
.cal__ev-name { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cal__hint { font-size: .8rem; margin: 10px 0 0; }
@media (max-width: 699px) {
  .cal__cell { min-height: 54px; padding: 2px; }
  .cal__dow { padding: 6px 2px; text-align: center; letter-spacing: .06em; }
  .cal__day { align-self: center; }
  .cal__ev { padding: 0; border: 0; background: none; justify-content: center; }
  .cal__ev-time, .cal__ev-name { display: none; }
  .cal__ev::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: var(--ink); }
  .cal__ev--new::before { background: var(--accent); }
}

.cards-head { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 8px 16px; }
.card-filters { display: grid; gap: 4px 20px; grid-template-columns: 1fr 1fr; margin-bottom: 20px; }
.card-filters input[type="search"] { grid-column: 1 / -1; }
@media (min-width: 900px) { .card-filters { grid-template-columns: 2fr repeat(4, minmax(0, 1fr)); } .card-filters input[type="search"] { grid-column: auto; } }
.ccards { list-style: none; margin: 0; padding: 0; display: grid; gap: 0 32px; grid-template-columns: minmax(0, 1fr); border-top: 1px solid var(--hair); }
@media (min-width: 700px) { .ccards { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1100px) { .ccards { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.ccard { border-bottom: 1px solid var(--hair); }
.ccard[hidden] { display: none; }
.ccard__link { display: flex; flex-direction: column; gap: 6px; padding: 20px 0; text-decoration: none; height: 100%; }
.ccard__top { display: flex; justify-content: space-between; gap: 8px; font-size: .68rem; letter-spacing: .14em; text-transform: uppercase; color: var(--muted); }
.ccard__name { font-family: var(--serif); font-size: 1.55rem; line-height: 1.15; transition: color .3s var(--soft); }
.ccard__link:hover .ccard__name { color: var(--accent); }
.ccard__meta { margin: 0; font-size: .86rem; color: var(--ink-2); }
.ccard__stage { display: flex; align-items: center; gap: 12px; margin-top: 6px; }
.ccard__track { flex: 1; height: 1px; background: var(--line); position: relative; }
.ccard__fill { position: absolute; left: 0; top: 0; height: 1px; width: 0; background: var(--ink); transition: width 1s var(--soft); }
.ccard__stage-label { font-size: .72rem; letter-spacing: .1em; text-transform: uppercase; white-space: nowrap; }
.ccard__foot { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-top: 4px; }
.ccard__ready { display: inline-flex; gap: 4px; }
.ccard__ready span { width: 22px; height: 22px; display: inline-flex; align-items: center; justify-content: center; font-size: .66rem; border: 1px solid var(--line); color: var(--muted); }
.ccard__ready span.is-on { background: var(--ink); border-color: var(--ink); color: #fff; }
.pay { font-size: .8rem; }
.pay::before { content: ""; display: inline-block; width: 6px; height: 6px; border-radius: 50%; margin-right: 7px; vertical-align: 1px; background: var(--line); }
.pay--paid::before { background: #2f5d3a; }
.pay--deposit::before { background: #b88a2a; }
.pay--unpaid::before { background: #9b2318; }

.container--form { max-width: 820px; }
.appt-form { gap: 8px; margin-top: 8px; }
.appt-group { border: 0; margin: 0; padding: 22px 0 18px; border-top: 1px solid var(--hair); display: grid; gap: 16px; min-width: 0; }
.appt-group legend { float: left; width: 100%; padding: 0; margin-bottom: 4px; font-family: var(--serif); font-size: 1.45rem; }
.appt-row { display: grid; gap: 16px 24px; }
@media (min-width: 640px) { .appt-row { grid-auto-columns: minmax(0, 1fr); grid-auto-flow: column; } }
.appt-checks { display: flex; flex-wrap: wrap; gap: 0 24px; }
.appt-balance { font-size: .92rem; color: var(--ink-2); min-height: 1.4em; }
.appt-balance.is-error { color: var(--danger); }
.appt-actions { display: flex; flex-wrap: wrap; gap: 12px; padding-top: 18px; border-top: 1px solid var(--hair); }
.appt-card__head { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 8px; }
.appt-card__head .card__title { margin: 0; }
.appt-dl { margin: 0; display: grid; gap: 0; }
.appt-dl div { display: grid; grid-template-columns: 120px minmax(0, 1fr); gap: 12px; padding: 8px 0; border-bottom: 1px solid var(--hair); font-size: .9rem; }
.appt-dl dt { color: var(--muted); font-size: .8rem; }
.appt-dl dd { margin: 0; white-space: pre-line; overflow-wrap: anywhere; }

/* ── Yarının programı ── */
.tmr { padding: 22px 0 26px; margin-bottom: 28px; border-top: 1px solid var(--ink); border-bottom: 1px solid var(--hair); }
.tmr__head .eyebrow { margin-bottom: 6px; }
.tmr__title { font-family: var(--serif); font-size: 1.9rem; line-height: 1.15; }
.tmr__list { list-style: none; margin: 16px 0 0; padding: 0; display: grid; gap: 0; }
.tmr__item { display: grid; grid-template-columns: 64px minmax(0, 1fr) auto; gap: 14px; align-items: start; padding: 14px 0; border-top: 1px solid var(--hair); }
.tmr__time { font-family: var(--serif); font-size: 1.5rem; line-height: 1.1; font-variant-numeric: tabular-nums; }
.tmr__main { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.tmr__main .muted { font-size: .88rem; }
.tmr__team { font-size: .78rem; letter-spacing: .06em; text-transform: uppercase; color: var(--ink-2); margin-top: 4px; }
.tmr__note { font-size: .88rem; color: var(--ink-2); padding-left: 10px; border-left: 1px solid var(--line); margin-top: 6px; white-space: pre-line; }
.tmr__call { width: 44px; height: 44px; display: inline-flex; align-items: center; justify-content: center; border: 1px solid var(--line); color: var(--ink); }
.tmr__call:hover { border-color: var(--ink); }
.tmr__due { margin: 14px 0 0; font-size: .9rem; color: var(--ink-2); }
.cal__cell.is-busy .cal__day { box-shadow: inset 0 -2px 0 var(--accent); }

/* ── Kişi kartı formu: etkinlik blokları ── */
.appt-help { font-size: .88rem; margin: -6px 0 4px; }
.ev-list { display: grid; gap: 14px; }
.ev-block { display: grid; gap: 14px; padding: 18px; background: var(--bg-tint); }
.ev-block__head { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.ev-block__title { font-family: var(--serif); font-size: 1.25rem; }
.ev-block__head [hidden] { display: none; }
.ev-block__warn { margin: -4px 0 0; font-size: .86rem; color: #8a5a00; padding-left: 10px; border-left: 2px solid #c99a2e; }
.ev-block__warn[hidden] { display: none; }
.ev-add { justify-self: start; }
.appt-sum { font-size: .95rem; color: var(--ink); }
.appt-sum.muted { color: var(--muted); font-size: .88rem; }
.appt-sum.is-error { color: var(--danger); }
.btn--danger-text { color: var(--danger); }

/* ── Kişi kartı (çift sayfası) ── */
.appt-card__actions { display: flex; flex-wrap: wrap; gap: 8px; }
.appt-cols { display: grid; gap: 28px; }
@media (min-width: 900px) { .appt-cols { grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); gap: 48px; } }
.appt-sub { font-family: var(--serif); font-size: 1.35rem; margin-bottom: 8px; }
.ev-view { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--hair); }
.ev-view__item { display: grid; grid-template-columns: 48px minmax(0, 1fr); gap: 14px; padding: 14px 0; border-bottom: 1px solid var(--hair); }
.ev-view__date { display: flex; flex-direction: column; align-items: center; line-height: 1; }
.ev-view__day { font-family: var(--serif); font-size: 1.7rem; }
.ev-view__mon { font-size: .68rem; letter-spacing: .12em; text-transform: uppercase; color: var(--muted); margin-top: 4px; }
.ev-view__main { display: flex; flex-direction: column; gap: 2px; font-size: .92rem; min-width: 0; }
.ev-view__main strong { font-weight: 600; }
.ev-view__note { color: var(--ink-2); padding-left: 10px; border-left: 1px solid var(--line); margin-top: 4px; white-space: pre-line; font-size: .88rem; }
.admin-grid--2 { margin-top: 16px; }
@media (min-width: 960px) { .admin-grid.admin-grid--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

/* ── Ödemeler ── */
.pay-sum { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px 28px; margin-bottom: 18px; }
@media (min-width: 800px) { .pay-sum { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.pay-sum > div { display: flex; flex-direction: column; gap: 4px; border-top: 1px solid var(--hair); padding-top: 12px; }
.pay-sum__label { font-size: .7rem; letter-spacing: .14em; text-transform: uppercase; color: var(--muted); }
.pay-sum__num { font-family: var(--serif); font-size: 1.6rem; line-height: 1.1; }
.pay-list { list-style: none; margin: 0 0 18px; padding: 0; border-top: 1px solid var(--hair); }
.pay-list li { display: grid; grid-template-columns: 96px 120px minmax(0, 1fr) auto; gap: 12px; align-items: center; padding: 6px 0; border-bottom: 1px solid var(--hair); font-size: .92rem; font-variant-numeric: tabular-nums; }
.pay-list li strong { font-weight: 600; }
@media (max-width: 599px) { .pay-list li { grid-template-columns: 84px minmax(0, 1fr) auto; } .pay-list li .muted { grid-column: 1 / 3; grid-row: 2; font-size: .82rem; } }
.pay-form { display: grid; gap: 12px 20px; align-items: end; }
@media (min-width: 800px) { .pay-form { grid-template-columns: 1fr 1fr 1fr 1.4fr auto; } }

/* ── Rapor ── */
.rbars { list-style: none; margin: 0; padding: 0; display: grid; gap: 0; border-top: 1px solid var(--hair); }
.rbar { display: grid; grid-template-columns: 90px minmax(0, 1fr) auto; gap: 14px; align-items: center; padding: 10px 0; border-bottom: 1px solid var(--hair); font-size: .9rem; }
.rbar__bars { display: flex; flex-direction: column; gap: 3px; }
.rbar__bar { display: block; height: 6px; width: 0; transition: width 1s var(--soft); }
.rbar__bar--rev { background: var(--ink); }
.rbar__bar--col { background: #c4b8a8; }
.rbar__val { font-size: .82rem; color: var(--ink-2); font-variant-numeric: tabular-nums; text-align: right; }
@media (max-width: 599px) { .rbar { grid-template-columns: 64px minmax(0, 1fr); } .rbar__val { grid-column: 2; text-align: left; } }
.legend { display: inline-block; width: 10px; height: 10px; margin: 0 6px 0 12px; vertical-align: 0; }
.legend--rev { background: var(--ink); margin-left: 0; }
.legend--col { background: #c4b8a8; }
.report-cols { display: grid; gap: 0 48px; }
@media (min-width: 900px) { .report-cols { grid-template-columns: 3fr 2fr; } }
.plain-stats { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--hair); }
.plain-stats li { display: flex; justify-content: space-between; padding: 10px 0; border-bottom: 1px solid var(--hair); }
.account-links { display: flex; flex-wrap: wrap; gap: 8px; }

/* ── Randevu belgesi ── */
.doc-body { background: #ecebe8; padding: 24px 12px 48px; }
.doc-tools { max-width: 800px; margin: 0 auto 14px; display: flex; justify-content: space-between; gap: 12px; }
.doc { max-width: 800px; margin: 0 auto; background: #fff; padding: clamp(28px, 6vw, 64px); color: var(--ink); }
.doc__head { display: flex; justify-content: space-between; gap: 20px; align-items: flex-start; padding-bottom: 22px; border-bottom: 1px solid var(--ink); }
.doc__brand { font-size: 1.1rem; letter-spacing: .32em; text-transform: uppercase; margin: 0; font-weight: 500; }
.doc__tag { margin: 6px 0 0; font-size: .82rem; color: var(--muted); }
.doc__ref { display: flex; flex-direction: column; align-items: flex-end; gap: 2px; font-size: .78rem; color: var(--muted); }
.doc__ref strong { font-size: 1rem; color: var(--ink); letter-spacing: .04em; }
.doc__title { font-family: var(--serif); font-size: 2.2rem; margin: 28px 0 18px; }
.doc__people { display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: 12px 24px; margin: 0 0 26px; }
.doc__people dt { font-size: .68rem; letter-spacing: .14em; text-transform: uppercase; color: var(--muted); }
.doc__people dd { margin: 2px 0 0; font-size: 1rem; }
.doc__table { width: 100%; border-collapse: collapse; font-size: .9rem; }
.doc__table th { text-align: left; font-size: .66rem; letter-spacing: .14em; text-transform: uppercase; color: var(--muted); font-weight: 500; padding: 8px 8px 8px 0; border-bottom: 1px solid var(--ink); }
.doc__table td { padding: 12px 8px 12px 0; border-bottom: 1px solid var(--hair); vertical-align: top; }
.doc__table .num { text-align: right; white-space: nowrap; padding-right: 0; }
.doc__table tfoot td { border-bottom: 0; padding: 8px 0 0; }
.doc__table tfoot tr:first-child td { padding-top: 14px; font-weight: 600; }
.doc__paid td { color: var(--ink-2); font-size: .85rem; }
.doc__rest td { font-family: var(--serif); font-size: 1.3rem; padding-top: 14px !important; border-top: 1px solid var(--ink); }
.doc__detail { margin-top: 4px; font-size: .8rem; color: var(--muted); white-space: pre-line; }
.doc__note { margin: 26px 0 0; font-size: .9rem; color: var(--ink-2); }
.doc__foot { margin-top: 40px; padding-top: 14px; border-top: 1px solid var(--hair); font-size: .8rem; color: var(--muted); text-align: center; }
@media (max-width: 599px) { .doc__table thead { display: none; } .doc__table tbody td { display: block; padding: 2px 0; border: 0; } .doc__table tbody tr { display: block; padding: 10px 0; border-bottom: 1px solid var(--hair); } .doc__table .num { text-align: left; } }
@media print {
  @page { margin: 14mm; }
  .doc-body { background: #fff; padding: 0; }
  .doc-tools { display: none; }
  .doc { padding: 0; max-width: none; }
}
#odemeler { margin-bottom: 40px; }

/* ── Ekip ── */
.ev-team__label { font-size: .7rem; letter-spacing: .14em; text-transform: uppercase; font-weight: 500; color: var(--ink-2); }
.ev-team__label .muted { text-transform: none; letter-spacing: 0; font-size: .78rem; }
.ev-team__list { display: flex; flex-wrap: wrap; gap: 8px; }
.ev-team__item { display: inline-flex; align-items: center; gap: 8px; min-height: 40px; padding: 0 12px; border: 1px solid var(--line); background: var(--bg); cursor: pointer; font-size: .9rem; }
.ev-team__item:has(input:checked) { border-color: var(--ink); }
.ev-team__item input { width: 18px; height: 18px; accent-color: var(--ink); }
.ev-team__empty { margin: 0; font-size: .88rem; }
.ev-view__team { display: flex; flex-wrap: wrap; gap: 6px 14px; margin-top: 6px; font-size: .82rem; letter-spacing: .04em; text-transform: uppercase; color: var(--ink-2); }
.ev-view__member { display: inline-flex; align-items: center; gap: 4px; }
.ev-view__member a { display: inline-flex; width: 28px; height: 28px; align-items: center; justify-content: center; color: var(--success); }
.ev-view__member .icon { width: 16px; height: 16px; }
.team-grid { display: grid; gap: 32px; align-items: start; }
@media (min-width: 960px) { .team-grid { grid-template-columns: minmax(0, 1fr) 420px; gap: 48px; } }
.team-list { list-style: none; margin: 12px 0 0; padding: 0; border-top: 1px solid var(--hair); }
.team-row { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 12px 0; border-bottom: 1px solid var(--hair); }
.team-row.is-off { opacity: .55; }
.team-row.is-current strong { color: var(--accent); }
.team-row__main { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.team-row__main .muted { font-size: .86rem; }
.team-row__up { font-size: .72rem; letter-spacing: .1em; text-transform: uppercase; color: var(--ink-2); }
.team-row__actions { display: flex; align-items: center; gap: 4px; }
.team-tasks { margin-top: 24px; }

/* ══════════════ Admin paneli: kontakt baskı masası ══════════════
   Beyaz kâğıt, grafit yazı, tek yazı ailesi (Geist). Renk yok; yalnızca dikkat isteyen şeyler
   fotoğrafçının kontakt baskıda kare işaretlediği yağlı kalem kırmızısıyla gösterilir.
   Ayrım kutularla değil boşluk ve ince çizgiyle yapılır. */
.pui {
  --paper: #fcfcfb; --white: #ffffff; --graphite: #1a1a1a; --pencil: #6e6e6b; --faint: #a3a3a0;
  --rule: #e8e8e5; --rule-2: #d9d9d5; --mark: #cf2a1f; --mark-soft: #fbeceb;
  --gfont: "Geist", "Inter", system-ui, -apple-system, sans-serif;
  background: var(--paper); color: var(--graphite); font-family: var(--gfont); font-size: 15px; line-height: 1.5;
  font-feature-settings: "tnum" 1, "ss01" 1; -webkit-font-smoothing: antialiased;
}
.pui #main { animation: none; }
.pui .muted { color: var(--pencil); }
.pui .panel-main { padding-top: 32px; padding-bottom: 64px; }
.pui .container { max-width: 1280px; }

/* Üst menü */
.pui .panel-header { background: var(--paper); border-bottom: 1px solid var(--rule); }
.pui .brand__name { font-family: var(--gfont); font-weight: 600; letter-spacing: .18em; font-size: .9rem; }
.pui .panel-nav { gap: 2px; }
.pui .panel-nav__link { font-size: .9rem; color: var(--pencil); padding: 8px 10px; border-radius: 6px; background: none; }
.pui .panel-nav__link .icon { display: none; }
.pui .panel-nav__link:hover { color: var(--graphite); }
.pui .panel-nav__link[aria-current="page"] { color: var(--graphite); background: none; box-shadow: inset 0 -1.5px 0 var(--graphite); border-radius: 0; }
.pui .panel-nav .btn--text { text-transform: none; letter-spacing: 0; font-size: .9rem; color: var(--pencil); }

/* Tipografi */
.pui h1, .pui h2, .pui h3, .pui .page-title, .pui .card__title, .pui .panel-section__title,
.pui .status__title, .pui .appt-group legend, .pui .ev-block__title, .pui .appt-sub, .pui .cal__title,
.pui .ccard__name, .pui .doc__title { font-family: var(--gfont); letter-spacing: -.015em; }
.pui .page-title { font-size: clamp(1.8rem, 3.5vw, 2.4rem); font-weight: 500; margin-bottom: 6px; }
.pui .card__title, .pui .panel-section__title, .pui .status__title { font-size: 1.15rem; font-weight: 600; }
.pui .appt-group legend, .pui .appt-sub { font-size: 1.05rem; font-weight: 600; }
.pui .ev-block__title { font-size: .95rem; font-weight: 600; }
.sec-head { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; padding-bottom: 12px; border-bottom: 1px solid var(--graphite); margin-bottom: 4px; }
.sec-title { font-family: var(--gfont); font-size: 1rem; font-weight: 600; letter-spacing: -.005em; display: flex; align-items: baseline; gap: 8px; }
.sec-light, .sec-count { font-weight: 400; color: var(--faint); }
.sec-note { font-size: .85rem; color: var(--pencil); }
.sec-empty { color: var(--pencil); font-size: .9rem; margin: 14px 0 0; }

/* Düğmeler ve alanlar */
.pui .btn { font-family: var(--gfont); border-radius: 6px; text-transform: none; letter-spacing: 0; font-size: .9rem; font-weight: 500; min-height: 40px; padding: 0 16px; }
.pui .btn--sm { min-height: 34px; padding: 0 12px; font-size: .85rem; }
.pui .btn--primary { background: var(--graphite); border-color: var(--graphite); color: #fff; }
.pui .btn--primary:hover { background: #000; }
.pui .btn--outline { background: var(--white); border: 1px solid var(--rule-2); color: var(--graphite); }
.pui .btn--outline:hover { border-color: var(--graphite); }
.pui .btn--text { text-transform: none; letter-spacing: 0; font-size: .85rem; color: var(--pencil); }
.pui .btn--text:hover { color: var(--graphite); }
.pui .btn--danger { background: var(--mark); border-color: var(--mark); }
.pui .btn--danger-text { color: var(--mark); }
.pui .btn .icon { width: 16px; height: 16px; }
.pui .field { gap: 6px; }
.pui .field label, .pui .field--inline label, .pui .ev-team__label { font-size: .82rem; letter-spacing: 0; text-transform: none; font-weight: 500; color: var(--pencil); }
.pui input[type="text"], .pui input[type="password"], .pui input[type="date"], .pui input[type="number"],
.pui input[type="tel"], .pui input[type="time"], .pui input[type="search"], .pui select, .pui textarea {
  font-family: var(--gfont); background: var(--white); border: 1px solid var(--rule-2); border-radius: 6px; padding: 8px 11px; min-height: 40px; font-size: .95rem; color: var(--graphite);
}
.pui textarea { min-height: 84px; }
.pui input:focus, .pui select:focus, .pui textarea:focus { border-color: var(--graphite); box-shadow: none; outline: none; }
.pui :focus-visible { outline: 2px solid var(--graphite); outline-offset: 2px; }
.pui .check { font-size: .92rem; min-height: 36px; }
.pui .check input { accent-color: var(--graphite); }
.pui .flash { border-radius: 0; border: 0; border-left: 2px solid var(--graphite); background: none; padding: 6px 0 6px 14px; font-size: .92rem; color: var(--graphite); }
.pui .flash--error { border-left-color: var(--mark); color: var(--mark); }
.pui .credentials { background: var(--white); border: 1px solid var(--rule); border-radius: 0; }
.pui .tabbar { background: var(--paper); border-top: 1px solid var(--rule); }
.pui .tabbar__item { color: var(--pencil); }
.pui .tabbar__item[aria-current="page"] { color: var(--graphite); }
.pui code { background: none; padding: 0; font-family: var(--gfont); color: var(--pencil); }

/* Kâğıt yüzeyler: kutu yerine boşluk + çizgi */
.pui .card, .pui .uploader, .pui .empty-box, .pui .panel-section, .pui .status, .pui .stat, .pui .job {
  background: none; border: 0; border-radius: 0; box-shadow: none;
}
.pui .card { padding: 0; }
.pui .panel-section { padding: 0; margin-top: 48px; }
.pui .panel-section__head { padding-bottom: 12px; border-bottom: 1px solid var(--graphite); margin-bottom: 16px; }
.pui .panel-section__head .muted { font-size: .88rem; margin: 4px 0 0; }
.pui .card__title { padding-bottom: 12px; border-bottom: 1px solid var(--graphite); margin-bottom: 16px; }
.pui .uploader { padding: 0; }
.pui .uploader__drop { border: 1px dashed var(--rule-2); border-radius: 0; background: var(--white); }
.pui .empty-box { border: 1px dashed var(--rule-2); color: var(--pencil); }
.pui .status { margin-top: 48px; }
.pui .status__head { padding-bottom: 12px; border-bottom: 1px solid var(--graphite); }
.pui .status__track { height: 1px; background: var(--rule); }
.pui .status__fill { background: var(--graphite); height: 1px; }
.pui .status__dot { border-color: var(--rule-2); background: var(--paper); }
.pui .status__step--done .status__dot { border-color: var(--graphite); color: var(--graphite); background: var(--paper); }
.pui .status__step--current .status__dot { background: var(--graphite); border-color: var(--graphite); color: #fff; }
.pui .status__note { border-left-color: var(--rule-2); }
.pui .admin-grid { gap: 48px; }
.pui .admin-grid--2, .pui .admin-grid--3 { margin-top: 48px; }
.pui .jobs { border-top: 0; gap: 0; }
.pui .job { border-bottom: 1px solid var(--rule); padding: 14px 0; }
.pui .job__day { font-family: var(--gfont); font-weight: 300; }
.pui .table th, .pui .table td { border-color: var(--rule); }
.pui .badge, .pui .state { border-radius: 0; background: none; padding: 0; font-weight: 500; color: var(--pencil); }
.pui .state--late { color: var(--mark); }
.pui .danger-zone { border-top: 1px solid var(--rule); }

/* ── Panel ── */
.dashboard .dash-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px; margin-bottom: 36px; }
.dash-head__date { margin: 0 0 4px; color: var(--pencil); font-size: .9rem; }
.dash-head__date::first-letter { text-transform: uppercase; }
.dash-head__title { font-family: var(--gfont); font-size: clamp(2rem, 4vw, 2.75rem); font-weight: 500; letter-spacing: -.03em; line-height: 1; }

.figures { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px 32px; margin: 0 0 48px; padding: 0; }
@media (min-width: 900px) { .figures { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.figures div { display: flex; flex-direction: column-reverse; gap: 6px; padding-top: 14px; border-top: 1px solid var(--rule-2); }
.figures dt { font-size: .85rem; color: var(--pencil); }
.figures dt a { color: inherit; }
.figures dd { margin: 0; font-size: clamp(1.7rem, 3vw, 2.4rem); font-weight: 300; letter-spacing: -.03em; line-height: 1; }
.figures dd.is-alert { color: var(--mark); }

.dash-top { display: grid; gap: 48px; margin-bottom: 56px; align-items: start; }
@media (min-width: 1000px) { .dash-top { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: 64px; } }

.pui .tmr { background: none; border: 0; padding: 0; margin: 0; color: var(--graphite); }
.pui .tmr__list { margin: 0; }
.pui .tmr__item { grid-template-columns: 92px minmax(0, 1fr) auto; gap: 20px; padding: 18px 0; border-top: 0; border-bottom: 1px solid var(--rule); }
.pui .tmr__time { font-family: var(--gfont); font-size: 2.2rem; font-weight: 300; letter-spacing: -.04em; line-height: .95; color: var(--graphite); }
.tmr__name { font-size: 1.05rem; font-weight: 600; text-decoration: none; color: var(--graphite); }
.tmr__name:hover { text-decoration: underline; text-underline-offset: 3px; }
.pui .tmr__meta { display: block; color: var(--pencil); font-size: .92rem; }
.pui .tmr__team { text-transform: none; letter-spacing: 0; color: var(--graphite); font-size: .88rem; margin-top: 6px; }
.pui .tmr__team::before { content: "Ekip: "; color: var(--pencil); }
.pui .tmr__note { margin: 8px 0 0; padding-left: 12px; border-left: 2px solid var(--mark); color: var(--graphite); font-size: .9rem; }
.pui .tmr__call { width: 40px; height: 40px; border: 1px solid var(--rule-2); border-radius: 50%; color: var(--graphite); }
.pui .tmr__call:hover { border-color: var(--graphite); }
.pui .tmr__call .icon { width: 17px; height: 17px; }
.pui .tmr__due { margin: 14px 0 0; color: var(--pencil); font-size: .9rem; }
.pui .tmr__due a { color: var(--graphite); }

.todo { background: none; border: 0; padding: 0; }
.todo__list { list-style: none; margin: 0; padding: 0; }
.todo__item a { display: flex; flex-direction: column; gap: 2px; padding: 12px 0 12px 18px; border-bottom: 1px solid var(--rule); text-decoration: none; color: var(--graphite); position: relative; }
.todo__item a::before { content: ""; position: absolute; left: 0; top: 19px; width: 7px; height: 7px; border-radius: 50%; border: 1px solid var(--faint); }
.todo__item.is-urgent a::before { background: var(--mark); border-color: var(--mark); }
.todo__item a:hover .todo__name { text-decoration: underline; text-underline-offset: 3px; }
.todo__name { font-weight: 600; font-size: .95rem; }
.todo__text { font-size: .88rem; color: var(--pencil); }
.todo__item.is-urgent .todo__text { color: var(--mark); }

.dash { display: grid; gap: 48px; margin-bottom: 64px; }
@media (min-width: 1000px) { .dash { grid-template-columns: minmax(0, 1fr) 300px; gap: 64px; } }
.pui .cal__head { padding-bottom: 12px; border-bottom: 1px solid var(--graphite); margin-bottom: 0; }
.pui .cal__nav { gap: 2px; }
.pui .cal__btn { width: 34px; height: 34px; border-radius: 6px; color: var(--pencil); }
.pui .cal__btn:hover { background: none; color: var(--graphite); }
.pui .cal__today { border: 0; font-size: .85rem; text-transform: none; letter-spacing: 0; color: var(--pencil); padding: 6px 8px; }
.pui .cal__today:hover { color: var(--graphite); }
.pui .cal__grid { border: 0; border-radius: 0; }
.pui .cal__dow { border: 0; background: none; color: var(--faint); font-weight: 500; font-size: .75rem; letter-spacing: 0; text-transform: none; padding: 12px 6px 8px; }
.pui .cal__cell { border: 0; border-top: 1px solid var(--rule); min-height: 92px; padding: 6px 4px; }
.pui .cal__cell--empty { background: none; }
.pui .cal__day { font-size: .82rem; font-weight: 400; color: var(--pencil); border-radius: 50%; min-width: 26px; padding: 0; }
.pui .cal__day:hover { background: var(--rule); color: var(--graphite); }
.pui .cal__cell.is-today .cal__day { background: var(--graphite); color: #fff; }
.pui .cal__cell.is-busy { box-shadow: none; }
.pui .cal__cell.is-busy .cal__day { box-shadow: 0 0 0 1px var(--mark); color: var(--mark); }
.pui .cal__cell.is-busy.is-today .cal__day { color: #fff; background: var(--mark); }
.pui .cal__ev { background: none; border: 0; border-left: 1.5px solid var(--graphite); border-radius: 0; padding: 1px 0 1px 6px; font-size: .76rem; font-weight: 500; color: var(--graphite); }
.pui .cal__ev:hover { background: var(--rule); filter: none; }
.pui .cal__ev-time { color: var(--pencil); font-weight: 400; }
.pui .cal__hint { font-size: .82rem; color: var(--faint); margin: 12px 0 0; }
@media (max-width: 699px) {
  .pui .cal__cell { min-height: 50px; }
  .pui .cal__ev { border: 0; padding: 0; }
  .pui .cal__ev::before { background: var(--graphite); width: 5px; height: 5px; }
}

.uplist { list-style: none; margin: 0; padding: 0; }
.up { display: grid; grid-template-columns: 44px minmax(0, 1fr) auto; gap: 14px; align-items: baseline; padding: 12px 0; border-bottom: 1px solid var(--rule); text-decoration: none; color: var(--graphite); }
.up__day { font-size: 1.7rem; font-weight: 300; letter-spacing: -.04em; line-height: 1; }
.up__main { display: flex; flex-direction: column; min-width: 0; }
.up__name { font-weight: 600; font-size: .95rem; }
.up:hover .up__name { text-decoration: underline; text-underline-offset: 3px; }
.up__meta { font-size: .85rem; color: var(--pencil); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.up__rel { font-size: .8rem; color: var(--faint); }

/* Çift listesi */
.couples .cards-head { flex-wrap: wrap; align-items: center; }
.couples .cards-head .sec-title { margin-right: auto; }
.seg { display: inline-flex; gap: 2px; }
.seg__btn { border: 0; background: none; padding: 6px 10px; border-radius: 6px; font: 500 .88rem var(--gfont); color: var(--pencil); cursor: pointer; }
.seg__btn:hover { color: var(--graphite); }
.seg__btn.is-on { color: var(--graphite); background: var(--rule); }
.pui .card-filters { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin: 16px 0 8px; }
.pui .card-filters input[type="search"] { grid-column: 1 / -1; }
@media (min-width: 900px) { .pui .card-filters { grid-template-columns: 2fr repeat(4, minmax(0, 1fr)); } .pui .card-filters input[type="search"] { grid-column: auto; } }
.ccards[hidden], .board[hidden], .crow[hidden], .crow-head[hidden] { display: none !important; }
.crow-head, .crow__link { display: grid; grid-template-columns: minmax(0, 2.2fr) minmax(0, 1.2fr) minmax(0, 1.6fr) minmax(0, 1fr) 104px; gap: 16px; align-items: center; }
.crow-head { padding: 14px 0 8px; font-size: .78rem; color: var(--faint); border-bottom: 1px solid var(--rule); }
.crows { list-style: none; margin: 0; padding: 0; }
.crow__link { padding: 14px 0; border-bottom: 1px solid var(--rule); text-decoration: none; color: var(--graphite); }
.crow__link:hover { background: linear-gradient(to right, transparent, var(--white) 8%, var(--white) 92%, transparent); }
.crow__link:hover .crow__name { text-decoration: underline; text-underline-offset: 3px; }
.crow.is-done .crow__link { color: var(--pencil); }
.crow__who, .crow__date, .crow__stage, .crow__pay { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.crow__name { font-weight: 600; font-size: .98rem; }
.crow__sub { font-size: .82rem; color: var(--pencil); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.crow__pay { align-items: flex-end; text-align: right; }
.crow__pay.is-urgent > span:first-child { color: var(--mark); font-weight: 600; }
.steps { display: inline-flex; gap: 3px; }
.steps i { width: 16px; height: 3px; background: var(--rule-2); }
.steps i.is-done { background: var(--graphite); }
.steps i.is-now { background: var(--mark); }
.crow.is-done .steps i { background: var(--faint); }
.crow__ready { display: inline-flex; gap: 4px; justify-content: flex-end; }
.crow__ready span { width: 22px; height: 22px; display: inline-flex; align-items: center; justify-content: center; font-size: .7rem; font-weight: 500; color: var(--faint); border: 1px solid var(--rule-2); border-radius: 50%; }
.crow__ready span.is-on { color: #fff; background: var(--graphite); border-color: var(--graphite); }
@media (max-width: 799px) {
  .crow-head { display: none; }
  .crow__link { grid-template-columns: minmax(0, 1fr) auto; gap: 8px 12px; }
  .crow__date { grid-column: 1; }
  .crow__pay { grid-column: 2; grid-row: 1; }
  .crow__stage { grid-column: 1; flex-direction: row; align-items: center; gap: 10px; }
  .crow__ready { grid-column: 2; grid-row: 3; }
}

/* Aşama panosu */
.board { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(210px, 1fr); gap: 24px; overflow-x: auto; padding: 16px 0 8px; }
.board__col { background: none; padding: 0; min-height: 0; }
.board__head { display: flex; justify-content: space-between; font: 600 .9rem var(--gfont); padding: 0 0 10px; border-bottom: 1px solid var(--graphite); margin: 0; }
.board__count { background: none; color: var(--faint); font-weight: 400; min-width: 0; height: auto; }
.board__list { list-style: none; margin: 0; padding: 0; }
.board__list li[hidden] { display: none; }
.bcard { display: flex; flex-direction: column; gap: 1px; padding: 10px 0; border-bottom: 1px solid var(--rule); text-decoration: none; color: var(--graphite); background: none; border-radius: 0; }
.bcard:hover strong { text-decoration: underline; text-underline-offset: 3px; }
.bcard strong { font-weight: 600; font-size: .92rem; }
.bcard__meta { font-size: .8rem; color: var(--pencil); }
.bcard__pay { font-size: .8rem; color: var(--mark); }

/* ── Kişi kartı ── */
.pui .appt-card__head { align-items: baseline; }
.pui .appt-cols { gap: 48px; }
.pui .appt-dl div { grid-template-columns: 130px minmax(0, 1fr); border-bottom-color: var(--rule); padding: 9px 0; font-size: .93rem; }
.pui .appt-dl dt { color: var(--pencil); font-size: .85rem; }
.pui .ev-view { border-top: 0; }
.pui .ev-view__item { grid-template-columns: 52px minmax(0, 1fr); border-color: var(--rule); padding: 14px 0; }
.pui .ev-view__date { background: none; padding: 0; align-items: flex-start; }
.pui .ev-view__day { font-family: var(--gfont); font-size: 1.9rem; font-weight: 300; letter-spacing: -.04em; }
.pui .ev-view__mon { letter-spacing: 0; text-transform: none; font-size: .8rem; color: var(--pencil); }
.pui .ev-view__main strong { font-weight: 600; }
.pui .ev-view__note { border-left: 2px solid var(--mark); color: var(--graphite); }
.pui .ev-view__team { text-transform: none; letter-spacing: 0; font-size: .85rem; color: var(--graphite); }
.pui .ev-view__member a { color: var(--pencil); }
.pui .ev-view__member a:hover { color: var(--graphite); }
.pui .pay-sum { gap: 24px 32px; margin: 4px 0 20px; }
.pui .pay-sum > div { background: none; border: 0; border-top: 1px solid var(--rule-2); border-radius: 0; padding: 12px 0 0; }
.pui .pay-sum__label { letter-spacing: 0; text-transform: none; font-size: .82rem; color: var(--pencil); font-weight: 400; }
.pui .pay-sum__num { font-family: var(--gfont); font-size: 1.7rem; font-weight: 300; letter-spacing: -.03em; }
.paypill { font-size: .88rem; font-weight: 500; }
.paypill--unpaid { color: var(--mark); }
.paypill--deposit, .paypill--paid, .paypill--none { color: var(--graphite); }
.pui .pay-list { border-top: 0; }
.pui .pay-list li { border-color: var(--rule); }

/* ── Form ── */
.pui .container--form { max-width: 760px; }
.pui .appt-form { gap: 40px; }
.pui .appt-group { background: none; border: 0; border-radius: 0; padding: 0; gap: 16px; }
.pui .appt-group legend { float: left; width: 100%; padding: 0 0 12px; border-bottom: 1px solid var(--graphite); margin-bottom: 8px; }
.pui .appt-help { font-size: .88rem; color: var(--pencil); margin: 0; }
.pui .ev-list { gap: 0; }
.pui .ev-block { background: none; border: 0; border-left: 0; border-bottom: 1px solid var(--rule); border-radius: 0; padding: 20px 0 24px; }
.pui .ev-block:first-child { padding-top: 8px; }
.pui .ev-block__warn { border-left-color: var(--mark); color: var(--mark); }
.pui .ev-team__item { border-radius: 999px; background: var(--white); border-color: var(--rule-2); min-height: 34px; font-size: .88rem; }
.pui .ev-team__item:has(input:checked) { background: var(--graphite); border-color: var(--graphite); color: #fff; }
.pui .ev-team__item:has(input:checked) .muted { color: #c7c7c4; }
.pui .ev-team__item input { position: absolute; opacity: 0; pointer-events: none; }
.pui .ev-team__item { position: relative; }
.pui .ev-team__item:has(input:focus-visible) { outline: 2px solid var(--graphite); outline-offset: 2px; }
.pui .appt-sum { font-size: 1rem; }
.pui .appt-actions { border-top: 0; padding-top: 0; }

/* ── Diğer sayfalar ── */
.pui .team-list, .pui .team-row { border-color: var(--rule); }
.pui .team-row.is-current strong { color: var(--graphite); text-decoration: underline; }
.pui .team-row__up { text-transform: none; letter-spacing: 0; color: var(--pencil); font-size: .8rem; }
.pui .rbars, .pui .rbar, .pui .plain-stats, .pui .plain-stats li { border-color: var(--rule); }
.pui .rbar__bar { height: 4px; border-radius: 0; }
.pui .rbar__bar--rev, .pui .legend--rev { background: var(--graphite); }
.pui .rbar__bar--col, .pui .legend--col { background: var(--faint); opacity: 1; }
.pui .stat__num { font-family: var(--gfont); font-weight: 300; letter-spacing: -.03em; }
.pui .stat { border-top: 1px solid var(--rule-2); padding: 14px 0 0; }
.pui .stats { gap: 24px 32px; margin-bottom: 40px; }
.pui .ccards.crows { display: block; border: 0; gap: 0; }
.pui .cal__cell { min-height: 84px; }
.pui .album-bar { border-bottom-color: var(--rule); }
.pui .album-bar * { font-family: var(--gfont); }
.pui .album-bar [class*="label"], .pui .album-bar .eyebrow { text-transform: none; letter-spacing: 0; font-size: .82rem; color: var(--pencil); }
.pui .album-bar [class*="count"], .pui .album-bar [class*="num"] { font-weight: 300; letter-spacing: -.02em; }
.pui .album-bar__track { background: var(--rule); }
.pui .album-bar__fill { background: var(--graphite); }
.pui .tabs { border-bottom-color: var(--rule); }
.pui .tab { text-transform: none; letter-spacing: 0; font-size: .9rem; font-family: var(--gfont); color: var(--pencil); }
.pui .tab[aria-current="page"], .pui .tab.is-active { color: var(--graphite); }
.pui .form .btn--primary { justify-self: start; }
.pui .tile { background: var(--rule); }
.pui .album-bar__title { text-transform: none; letter-spacing: 0; font-size: .82rem; color: var(--pencil); }
.pui .album-bar__count { font-family: var(--gfont); font-weight: 300; letter-spacing: -.02em; }

/* ── Çift paneli ve giriş ekranları (aynı minimal dil) ── */
.pui .app-login__sheet { background: var(--paper); }
.pui .app-login__title { font-family: var(--gfont); font-weight: 500; font-size: 1.75rem; letter-spacing: -.025em; }
.pui .app-login__lead { color: var(--pencil); font-size: .95rem; }
.pui .app-login__brand .brand__name { font-family: var(--gfont); font-weight: 600; letter-spacing: .22em; }
.pui .app-login__tag { text-transform: none; letter-spacing: .02em; font-size: .82rem; }
.pui .app-login__help { color: var(--faint); }
.pui .btn--block { width: 100%; }
.auth.pui { background: none; }
.pui .auth__card { background: none; border: 0; }
.pui .auth__title { font-family: var(--gfont); font-weight: 500; letter-spacing: -.025em; }
.pui .auth__icon { display: none; }
.pui .welcome .eyebrow { text-transform: none; letter-spacing: 0; font-size: .9rem; color: var(--pencil); margin-bottom: 4px; }
.pui .welcome .page-title { font-weight: 500; letter-spacing: -.03em; }
.pui .subnav { gap: 4px; margin: 20px 0 8px; }
.pui .chip { text-transform: none; letter-spacing: 0; font-size: .9rem; font-family: var(--gfont); color: var(--pencil); padding: 6px 10px; border: 0; border-radius: 6px; min-height: 34px; }
.pui .chip:hover { color: var(--graphite); background: var(--rule); }
.pui .install { background: var(--white); border: 1px solid var(--rule); border-radius: 0; }
.pui .install__title { font-weight: 600; }
.pui .panel-nav__who { font-weight: 600; font-size: .92rem; }
.pui .plan-form .field label { color: var(--pencil); }
.pui .plan-view div { border-color: var(--rule); }
.pui .tile__bar { background: linear-gradient(to top, rgba(0, 0, 0, .45), rgba(0, 0, 0, 0)); }
.pui .album-bar { background: none; border: 0; border-bottom: 1px solid var(--rule); padding: 0 0 16px; }
.pui .toast { font-family: var(--gfont); border-radius: 6px; }
.pui .demo-try { background: var(--white); border: 1px solid var(--rule); border-radius: 0; }
.set-links { list-style: none; margin: 8px 0 0; padding: 0; border-top: 1px solid var(--graphite); }
.set-links a { display: grid; grid-template-columns: 160px minmax(0, 1fr) 20px; gap: 16px; align-items: center; padding: 16px 0; border-bottom: 1px solid var(--rule); text-decoration: none; color: var(--graphite); }
.set-links a:hover .set-links__title { text-decoration: underline; text-underline-offset: 3px; }
.set-links__title { font-weight: 600; }
.set-links__text { color: var(--pencil); font-size: .9rem; }
.set-links .icon { width: 16px; height: 16px; color: var(--faint); }
@media (max-width: 599px) { .set-links a { grid-template-columns: minmax(0, 1fr) 20px; } .set-links__text { grid-column: 1; } .set-links .icon { grid-column: 2; grid-row: 1 / 3; } }
.pkg-list { list-style: none; margin: 0; padding: 0; }
.pkg { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; gap: 16px; align-items: start; padding: 14px 0; border-bottom: 1px solid var(--rule); }
.pkg.is-off { opacity: .5; }
.pkg.is-current .pkg__name { text-decoration: underline; text-underline-offset: 3px; }
.pkg__main { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.pkg__name { font-weight: 600; }
.pkg__meta { font-size: .82rem; color: var(--pencil); }
.pkg__detail { margin: 6px 0 0; font-size: .88rem; color: var(--pencil); white-space: pre-line; }
.pkg__price { font-size: 1.15rem; font-weight: 300; letter-spacing: -.02em; white-space: nowrap; }
.pui .back-link { color: var(--pencil); font-size: .88rem; text-decoration: none; display: inline-flex; align-items: center; gap: 4px; margin-bottom: 10px; }
.pui .back-link .icon { width: 14px; height: 14px; }
/* Site ayarları */
.site-group { gap: 0; }
.site-group__title { font: 600 1.05rem var(--gfont); padding-bottom: 12px; border-bottom: 1px solid var(--graphite); margin: 0; }
.img-slot { display: grid; grid-template-columns: 160px minmax(0, 1fr); gap: 20px; padding: 18px 0; border-bottom: 1px solid var(--rule); align-items: start; }
.img-slot__preview { aspect-ratio: 4 / 3; background: var(--rule); display: flex; align-items: center; justify-content: center; overflow: hidden; }
.img-slot__preview img { width: 100%; height: 100%; object-fit: cover; }
.img-slot__preview.is-logo { background: var(--white); border: 1px solid var(--rule); }
.img-slot__preview.is-logo img { object-fit: contain; padding: 12px; }
.img-slot__preview span { font-size: .78rem; color: var(--faint); text-align: center; padding: 8px; }
.img-slot__side { display: flex; flex-direction: column; align-items: flex-start; gap: 6px; }
.img-slot__title { margin: 0; font-weight: 600; }
.img-slot .hint { margin: 0 0 4px; }
.pui .uploader--inline { padding: 0; background: none; border: 0; display: flex; flex-direction: column; gap: 6px; }
.pui .uploader--inline .uploader__drop { border: 1px solid var(--rule-2); background: var(--white); min-height: 34px; padding: 0 12px; display: inline-flex; flex-direction: row; gap: 6px; cursor: pointer; }
.uploader--inline input[type="file"] { position: absolute; width: 1px; height: 1px; opacity: 0; }
.uploader--inline .uploader__list:empty { display: none; }
.swatches { display: flex; gap: 10px; min-height: 40px; align-items: center; }
.swatch { position: relative; cursor: pointer; }
.swatch input { position: absolute; opacity: 0; }
.swatch__dot { display: block; width: 28px; height: 28px; border-radius: 50%; box-shadow: inset 0 0 0 1px rgba(0, 0, 0, .1); }
.swatch input:checked + .swatch__dot { box-shadow: 0 0 0 2px var(--paper), 0 0 0 3.5px var(--graphite); }
.swatch input:focus-visible + .swatch__dot { outline: 2px solid var(--graphite); outline-offset: 4px; }
.swatch__dot[data-sw="kina"] { background: #7a3a2e; } .swatch__dot[data-sw="gul"] { background: #8d5560; } .swatch__dot[data-sw="zeytin"] { background: #56603d; }
.swatch__dot[data-sw="lacivert"] { background: #25364f; } .swatch__dot[data-sw="antrasit"] { background: #2f2f2f; }
.svc-row { display: grid; gap: 8px 16px; padding-bottom: 8px; }
@media (min-width: 640px) { .svc-row { grid-template-columns: 1fr 2fr; } }
.pui .hint { font-size: .8rem; color: var(--faint); }
.pui input[type="email"] { font-family: var(--gfont); background: var(--white); border: 1px solid var(--rule-2); border-radius: 6px; padding: 8px 11px; min-height: 40px; font-size: .95rem; width: 100%; }

/* Sitede duyuru bandı ve ortalanmış logo */
.site-banner { background: var(--accent); color: #fff; font-size: .85rem; }
.site-banner__inner { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 4px 14px; padding-block: 9px; text-align: center; }
.site-banner a { color: #fff; text-underline-offset: 3px; font-weight: 500; }
@media (min-width: 900px) {
  .site-header--center { height: auto; }
  .site-header--center .site-header__inner { flex-direction: column; justify-content: center; gap: 6px; padding-block: 14px; }
  .site-header--center .site-nav { justify-content: center; }
}
.brand__logo { max-height: 44px; width: auto; }
.site-banner + .site-header--overlay { top: auto; }
body:has(.site-banner) .site-header--overlay { position: absolute; }
body:has(.site-banner) .site-header--overlay.is-solid { position: fixed; top: 0; }
/* Kapak üstünde koyu logo beyaz görünsün */
.site-header--overlay:not(.is-solid) .brand__logo { filter: brightness(0) invert(1); }
.site-header--overlay:has(.site-nav.is-open) .brand__logo { filter: none; }
.data-list { list-style: none; margin: 0; padding: 0; }
.data-list li { display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 14px 0; border-bottom: 1px solid var(--rule); }
.data-list__main { display: flex; flex-direction: column; gap: 2px; }
.data-list__title { font-weight: 600; }
.data-list__meta { font-size: .85rem; color: var(--pencil); }
.data-now { margin: 0 0 8px; }
.pui .panel-section .hint { margin-top: 10px; }
/* Albüm seçim listeleri */
.sel { margin-bottom: 56px; }
.sel__list { list-style: none; margin: 0; padding: 0; }
.sel__item { display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 12px 0; border-bottom: 1px solid var(--rule); }
.sel__who { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.sel__name { font-weight: 600; color: var(--graphite); text-decoration: none; }
.sel__name:hover { text-decoration: underline; text-underline-offset: 3px; }
.sel__meta { font-size: .85rem; color: var(--pencil); }
.sel__actions { display: inline-flex; align-items: center; gap: 6px; flex: none; }
.sel-box { margin: 0 0 20px; padding: 14px 16px; background: var(--white, #fff); border: 1px solid var(--rule, #e8e8e5); }
.sel-box__head { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 8px 16px; }
.sel-box__names { margin: 10px 0 0; font-size: .85rem; color: var(--pencil, #6e6e6b); line-height: 1.7; word-break: break-word; font-variant-numeric: tabular-nums; }
.sel-box__warn { margin: 8px 0 0; font-size: .85rem; color: var(--mark, #cf2a1f); }
/* Bu hafta */
.dash-left { display: grid; gap: 40px; min-width: 0; }
.week__days { list-style: none; margin: 0; padding: 0; }
.week__day { display: grid; grid-template-columns: 56px minmax(0, 1fr); gap: 16px; padding: 10px 0; border-bottom: 1px solid var(--rule); align-items: start; }
.week__date { display: flex; align-items: baseline; gap: 6px; padding-top: 1px; }
.week__dow { font-size: .78rem; color: var(--pencil); width: 26px; }
.week__num { font-size: 1.05rem; font-weight: 500; font-variant-numeric: tabular-nums; }
.week__events { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.week__ev { display: grid; grid-template-columns: 48px minmax(0, auto) minmax(0, 1fr); gap: 10px; align-items: baseline; text-decoration: none; color: var(--graphite); }
.week__ev:hover .week__name { text-decoration: underline; text-underline-offset: 3px; }
.week__time { font-variant-numeric: tabular-nums; font-size: .9rem; color: var(--pencil); }
.week__name { font-weight: 600; font-size: .92rem; white-space: nowrap; }
.week__meta { font-size: .85rem; color: var(--pencil); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.week__none { font-size: .85rem; color: var(--faint); }
.week__day.is-past { opacity: .45; }
.week__day.is-today .week__num { background: var(--graphite); color: #fff; border-radius: 50%; width: 26px; height: 26px; display: inline-flex; align-items: center; justify-content: center; font-size: .85rem; }
.week__day.is-tomorrow .week__dow, .week__day.is-tomorrow .week__num { color: var(--mark); }
@media (max-width: 599px) { .week__ev { grid-template-columns: 44px minmax(0, 1fr); } .week__meta { grid-column: 2; white-space: normal; } }
/* Program: yarın + bu haftanın çekim günleri */
.prog__day { padding: 20px 0 6px; border-bottom: 1px solid var(--rule); }
.prog__date { font: 500 .9rem var(--gfont); color: var(--pencil); letter-spacing: 0; display: flex; align-items: center; gap: 10px; margin: 0; }
.prog__date::first-letter { text-transform: uppercase; }
.prog__tag { font: 600 .78rem var(--gfont); color: #fff; background: var(--mark); padding: 2px 8px; border-radius: 999px; }
.prog__day:not(.is-tomorrow) .prog__tag { background: var(--graphite); }
.prog__list { list-style: none; margin: 0; padding: 0; }
.prog__shoot { padding: 8px 0 14px; }
.prog__shoot + .prog__shoot { border-top: 1px dashed var(--rule); padding-top: 14px; }
.prog__head { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.prog__name { font: 500 clamp(1.6rem, 3vw, 2.1rem) / 1.15 var(--gfont); letter-spacing: -.03em; color: var(--graphite); text-decoration: none; }
.prog__name:hover { text-decoration: underline; text-underline-offset: 4px; text-decoration-thickness: 1px; }
.prog__line { margin: 4px 0 0; color: var(--pencil); font-size: .95rem; }
.prog__time { color: var(--graphite); font-weight: 600; margin-right: 10px; font-variant-numeric: tabular-nums; }
.prog__team { margin: 4px 0 0; font-size: .9rem; color: var(--graphite); }
.prog__note { margin: 8px 0 0; padding-left: 12px; border-left: 2px solid var(--mark); font-size: .9rem; white-space: pre-line; }
.prog__empty { display: flex; align-items: center; gap: 10px; margin: 18px 0; color: var(--pencil); padding-bottom: 18px; border-bottom: 1px solid var(--rule); }
.prog__empty .prog__tag { background: var(--faint); }
.prog .tmr__call { flex: none; }
/* Mobil menü: bantlar olsa da başlığın altından açılır, kapatma (X) düğmesi görünür kalır */
.site-nav.is-open { inset: var(--nav-top, var(--header-h)) 0 0 0; }
.site-header:has(.site-nav.is-open) { backdrop-filter: none; z-index: 60; }
.nav-toggle .icon + .icon { display: none; }
.nav-toggle[aria-expanded="true"] .icon:first-child { display: none; }
.nav-toggle[aria-expanded="true"] .icon + .icon { display: block; }
/* Çift paneli: sitenin başlık yazısı (marka bütünlüğü) */
.pui:not(.is-admin) .welcome .page-title, .pui:not(.is-admin) .panel-section__title, .pui:not(.is-admin) .status__title,
.pui:not(.is-admin) .album-bar__count, .pui .app-login__title, .pui .auth__title { font-family: var(--serif); font-weight: 500; letter-spacing: -.005em; }
.pui:not(.is-admin) .welcome .page-title { font-size: clamp(2.4rem, 7vw, 3.4rem); }
.pui:not(.is-admin) .panel-section__title, .pui:not(.is-admin) .status__title { font-size: 1.6rem; }
.pui:not(.is-admin) .album-bar__count { font-size: 2rem; }
.pui .app-login__title { font-size: 2.2rem; }
.pui:not(.is-admin) .panel-nav__who { font-family: var(--serif); font-size: 1.15rem; font-weight: 500; }
/* İndirme, ödeme özeti, sabit sayaç */
.dl-row { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.cpay { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin: 0; }
.cpay div { border-top: 1px solid var(--rule-2, #d9d9d5); padding-top: 10px; }
.cpay dt { font-size: .85rem; color: var(--pencil, #6e6e6b); }
.cpay dd { margin: 2px 0 0; font: 400 1.5rem/1.2 var(--serif); }
.cpay dd.is-due { color: var(--graphite, #1a1a1a); }
.cpay dd.is-done { color: var(--pencil, #6e6e6b); }
.selpill { position: fixed; left: 50%; transform: translateX(-50%); bottom: calc(20px + env(safe-area-inset-bottom, 0px)); z-index: 45; display: inline-flex; align-items: center; gap: 2px; padding: 10px 18px; border-radius: 999px; background: var(--graphite, #1a1a1a); color: #fff; font-size: .92rem; text-decoration: none; box-shadow: 0 6px 24px rgba(0, 0, 0, .18); white-space: nowrap; }
.selpill[hidden] { display: none; }
.selpill__icon { display: inline-flex; margin-right: 8px; color: #f3a9b4; }
.selpill__icon .icon { width: 16px; height: 16px; }
.selpill strong { font-weight: 600; }
@media (max-width: 699px) { body:has(.tabbar) .selpill { bottom: calc(76px + env(safe-area-inset-bottom, 0px)); } }
.avail { margin: 8px 0 0; font-size: .88rem; line-height: 1.45; padding-left: 10px; border-left: 2px solid var(--line); color: var(--ink-2); }
.avail--free { border-left-color: #4f6b3a; color: #3e5a2b; }
.avail--some { border-left-color: #b88a2a; color: #6e4a00; }
.avail--full, .avail--past { border-left-color: var(--accent); color: var(--accent); }
/* Telefonda alt sekme menüsü sayfanın son düğmesini kapatmasın */
@media (max-width: 699px) {
  .pui .panel-main.has-tabbar { padding-bottom: calc(112px + env(safe-area-inset-bottom, 0px)); }
  .doc-body { padding-bottom: 32px; }
}
.cal.is-loading .cal__grid { opacity: .4; transition: opacity .15s; }
/* Giriş bilgileri kutusu: okunaklı */
.pui .creds { background: var(--white); border: 1px solid var(--graphite); border-radius: 0; padding: 20px; margin: 16px 0 24px; }
.creds__title { margin: 0 0 14px; font-weight: 600; }
.creds__grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 16px; }
.creds__grid > div { display: flex; flex-direction: column; gap: 4px; }
.creds__label { font-size: .82rem; color: var(--pencil); }
.creds__value { font-size: 1.6rem; font-weight: 500; letter-spacing: .01em; user-select: all; overflow-wrap: anywhere; }
.creds__url { margin: 14px 0 0; font-size: .9rem; color: var(--pencil); overflow-wrap: anywhere; }
.creds__actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px; }
.creds__note { margin: 12px 0 0; font-size: .82rem; color: var(--faint); }
/* Video durumu */
.vstat { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; margin-top: 16px; padding-top: 14px; border-top: 1px solid var(--rule, #e8e8e5); font-size: .92rem; }
.vstat__label { display: inline-flex; align-items: center; gap: 6px; font-weight: 600; }
.vstat__label .icon { width: 18px; height: 18px; }
.vstat__dots { display: inline-flex; gap: 3px; }
.vstat__dots i { width: 16px; height: 3px; background: var(--rule-2, #d9d9d5); }
.vstat__dots i.is-done { background: var(--graphite, #1a1a1a); }
.vstat__dots i.is-now { background: var(--mark, #cf2a1f); }
.vstat__now { color: var(--graphite, #1a1a1a); }
/* Çift paneli sayfa menüsü */
.cpages { display: flex; gap: 4px; margin: 4px 0 24px; border-bottom: 1px solid var(--rule, #e8e8e5); overflow-x: auto; }
.cpages__link { padding: 10px 12px; font-size: .95rem; color: var(--pencil, #6e6e6b); text-decoration: none; white-space: nowrap; border-bottom: 2px solid transparent; margin-bottom: -1px; }
.cpages__link:hover { color: var(--graphite, #1a1a1a); }
.cpages__link[aria-current="page"] { color: var(--graphite, #1a1a1a); border-bottom-color: var(--graphite, #1a1a1a); font-weight: 500; }
@media (max-width: 699px) { body:has(.tabbar) .cpages { display: none; } }
.pui .cpage { margin-top: 8px; }
.pui:not(.is-admin) .cpage .panel-section__title { font-size: clamp(2rem, 6vw, 2.6rem); }
.cquick { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.cquick__item { flex: 1 1 160px; display: flex; align-items: baseline; gap: 8px; padding: 16px 0; border-top: 1px solid var(--graphite, #1a1a1a); text-decoration: none; color: var(--graphite, #1a1a1a); }
.cquick__num { font: 400 2rem/1 var(--serif); }
.cquick__item .icon { margin-left: auto; width: 16px; height: 16px; color: var(--pencil, #6e6e6b); align-self: center; }
/* Video sayfası */
.vids { list-style: none; margin: 0; padding: 0; display: grid; gap: 28px; }
.vids--reels { grid-template-columns: repeat(auto-fill, minmax(min(100%, 220px), 1fr)); gap: 16px; }
.vids__head { font: 500 1.4rem var(--serif); margin: 40px 0 14px; }
.vid__player { width: 100%; aspect-ratio: 16 / 9; background: #111; display: block; }
.vid--reel .vid__player { aspect-ratio: 9 / 16; object-fit: cover; }
.vid__link { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; aspect-ratio: 16 / 9; background: #1a1a1a; color: #fff; text-decoration: none; }
.vid--reel .vid__link { aspect-ratio: 9 / 16; }
.vid__link .icon { width: 40px; height: 40px; }
.vid__meta { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 12px 0 0; }
.vid__title { margin: 0; font-weight: 600; }
.vid__sub { margin: 2px 0 0; font-size: .85rem; color: var(--pencil, #6e6e6b); }
/* Admin video teslimi */
.vlist { list-style: none; margin: 0 0 20px; padding: 0; }
.vlist__item { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 12px 0; border-bottom: 1px solid var(--rule); }
.vlist__main { display: flex; flex-direction: column; gap: 2px; }
.vup { display: grid; gap: 14px; }
.vup__pick { position: relative; justify-self: start; cursor: pointer; }
.vup__pick input { position: absolute; inset: 0; opacity: 0; cursor: pointer; }
.vup__progress { display: grid; gap: 6px; }
.vup__bar { display: block; height: 4px; background: var(--rule); }
.vup__bar span { display: block; height: 100%; width: 0; background: var(--graphite); transition: width .3s; }
.vup__text { font-size: .88rem; color: var(--pencil); }
.vup__progress.is-error .vup__text { color: var(--mark); }
.vlink { margin-top: 20px; }
.vlink summary { cursor: pointer; font-size: .9rem; color: var(--pencil); }
.vlink form { margin-top: 14px; }
.vids--reels { grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); }
@media (min-width: 700px) { .vids--reels { grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); } }
.vid--reel .vid__meta { flex-direction: column; align-items: flex-start; }
.store-list li { align-items: flex-start; }
.store-row { display: flex; gap: 12px; align-items: flex-start; cursor: pointer; flex: 1; }
.store-row input { width: 18px; height: 18px; margin-top: 3px; accent-color: var(--graphite); }
.store-size { font-size: .85rem; color: var(--pencil); text-align: right; white-space: nowrap; }
#alan form { display: grid; gap: 12px; justify-items: start; }
#alan .data-list { width: 100%; }
.disk { display: grid; gap: 8px; margin: 6px 0 4px; }
.disk__nums { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 4px 16px; font-size: .95rem; }
.disk__nums strong { font-size: 1.4rem; font-weight: 400; letter-spacing: -.02em; }
.disk__bar { display: block; height: 4px; background: var(--rule); }
.disk__bar span { display: block; height: 100%; width: 0; background: var(--graphite); transition: width .8s; }
.disk__bar.is-full span { background: var(--mark); }
.disk__warn { margin: 0; color: var(--mark); font-size: .9rem; }
/* Düzenlenmiş / seçim fotoğraf grupları */
.sets { display: grid; grid-template-columns: 1fr 1fr; gap: 0; margin: 4px 0 20px; border: 1px solid var(--rule-2, #d9d9d5); }
.sets__link { display: flex; flex-direction: column; gap: 2px; padding: 12px 14px; text-decoration: none; color: var(--pencil, #6e6e6b); font-size: .92rem; }
.sets__link + .sets__link { border-left: 1px solid var(--rule-2, #d9d9d5); }
.sets__link[aria-current="page"] { background: var(--graphite, #1a1a1a); color: #fff; }
.sets__count { font: 400 1.4rem/1.1 var(--serif); }
.clear-what { display: grid; gap: 0; }

/* ── Sözleşme ── */
.ct-head { text-align: center; padding-bottom: 20px; margin-bottom: 8px; border-bottom: 1px solid currentColor; }
.ct-brand { font-size: .72rem; letter-spacing: .24em; text-transform: uppercase; margin: 0 0 10px; }
.ct-title { font-family: 'Cormorant Garamond', Georgia, serif; font-weight: 500; font-size: clamp(1.5rem, 4vw, 2rem); line-height: 1.15; margin: 0 0 8px; }
.ct-meta { font-size: .78rem; color: #6e6e6b; margin: 0; }
.ct-text { font-size: .9rem; line-height: 1.65; }
.ct-text h2 { font-size: .78rem; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; margin: 28px 0 10px; }
.ct-text p { margin: 0 0 10px; }
.ct-text ul { margin: 0 0 12px; padding-left: 18px; }
.ct-text li { margin: 0 0 4px; }
.ct-k { font-size: .7rem; letter-spacing: .12em; text-transform: uppercase; color: #6e6e6b; margin: 0 0 4px !important; }
.ct-parties, .ct-sign { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.ct-sign { margin-top: 16px; padding-top: 16px; border-top: 1px solid #d9d9d5; }
.ct-sig { display: block; max-width: 240px; width: 100%; height: auto; margin-top: 6px; }
.ct-table { width: 100%; border-collapse: collapse; font-size: .84rem; margin: 6px 0 14px; }
.ct-table th { text-align: left; font-weight: 500; font-size: .7rem; letter-spacing: .08em; text-transform: uppercase; color: #6e6e6b; border-bottom: 1px solid #1a1a1a; padding: 6px 8px 6px 0; }
.ct-table td { border-bottom: 1px solid #e8e8e5; padding: 8px 8px 8px 0; vertical-align: top; }
.ct-table .num { text-align: right; white-space: nowrap; padding-right: 0; }
.ct-pay { max-width: 420px; }
.ct-detail { color: #6e6e6b; font-size: .78rem; white-space: pre-line; }
.ct-audit { margin-top: 32px; padding: 16px 18px; border: 1px solid #d9d9d5; font-size: .76rem; line-height: 1.5; break-inside: avoid; }
.ct-audit h2 { font-size: .72rem; letter-spacing: .1em; text-transform: uppercase; margin: 0 0 10px; }
.ct-audit dl { display: grid; gap: 4px; margin: 0 0 10px; }
.ct-audit dl div { display: grid; grid-template-columns: 120px 1fr; gap: 10px; }
.ct-audit dt { color: #6e6e6b; }
.ct-audit dd { margin: 0; }
.ct-audit p { margin: 0; color: #6e6e6b; }
.ct-hash, .ct-ua { word-break: break-all; font-family: ui-monospace, Menlo, monospace; font-size: .7rem; }
.ct-preview { background: #fbeceb; color: #cf2a1f; font-size: .8rem; padding: 8px 12px; margin: 0 0 20px; }
.ct-paper { background: #fff; border: 1px solid var(--rule, #e8e8e5); padding: clamp(20px, 5vw, 48px); margin: 8px 0 28px; }
.ct-form { max-width: 640px; }
.ct-form__title { font-size: 1rem; margin: 0 0 4px; }
.ct-form__note { font-size: .78rem; }
.ct-consent { border: 0; padding: 0; margin: 0; display: grid; gap: 6px; }
.ct-consent legend { margin-bottom: 6px; font-size: .9rem; }
.sigpad { position: relative; border: 1px solid var(--rule-2, #d9d9d5); background: #fff; border-radius: 4px; touch-action: none; }
.sigpad canvas { display: block; width: 100%; height: 180px; cursor: crosshair; }
.sigpad__hint { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; color: var(--faint, #a3a3a0); font-size: .85rem; pointer-events: none; }
.sigpad.is-signed .sigpad__hint { display: none; }
.sigpad.is-error { border-color: var(--mark, #cf2a1f); }
.sigpad__tools { display: flex; justify-content: flex-end; margin-top: 4px; }
.ct-actions { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-top: 10px; }
.ct-note { font-size: .8rem; margin-top: 8px; }
.ct-keys { font-size: .84rem; margin: 0 0 14px; padding-left: 18px; }
.ct-keys code { font-size: .78rem; background: var(--rule, #eee); padding: 1px 5px; border-radius: 3px; }
.ct-editor { font-family: ui-monospace, Menlo, monospace; font-size: .8rem; line-height: 1.5; }
.ct-callout { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 16px 18px; margin: 0 0 24px; border: 1px solid var(--graphite, #1a1a1a); color: inherit; text-decoration: none; }
.ct-callout > span { display: grid; gap: 2px; }
.ct-callout > span span { font-size: .85rem; color: var(--pencil, #6e6e6b); }
.ct-callout svg { width: 18px; height: 18px; flex: none; }
@media (max-width: 600px) {
  .ct-parties, .ct-sign { grid-template-columns: 1fr; gap: 14px; }
  .ct-audit dl div { grid-template-columns: 1fr; gap: 0; }
  .ct-table th:nth-child(3), .ct-table td:nth-child(3) { display: none; }
}
@media print {
  .ct-doc { font-size: 10.5pt; }
  .ct-text h2 { break-after: avoid; }
  .ct-sign, .ct-table tr { break-inside: avoid; }
  .ct-preview { display: none; }
}
.consents { display: grid; gap: 10px; margin: 4px 0 16px; font-size: .86rem; }
.consents a, .auth__legal a { color: inherit; text-decoration: underline; text-underline-offset: 2px; }
.auth__legal { text-align: center; font-size: .78rem; margin: 14px 0 0; color: var(--muted, #6e6e6b); }
.kvkk-text { max-width: 720px; }
.wa-pref { max-width: 640px; font-size: .9rem; }
.consents .check, .wa-pref .check, .ct-form .check { align-items: flex-start; min-height: 0; line-height: 1.5; font-size: .86rem; }
.consents .check input, .wa-pref .check input, .ct-form .check input { flex: none; width: 18px; height: 18px; margin: 2px 0 0; }
