/* tokens.css */
/* ciftci.app tasarım token'ları — tek kaynak. Bileşenler yalnızca bu değişkenleri kullanır. */
:root {
  color-scheme: light;

  /* Renk: toprak/ekin tonları; metin kontrastı WCAG AA (≥4.5:1) */
  --c-bg: #fbfcfa;
  --c-surface: #ffffff;
  --c-surface-2: #f1f4f0;
  --c-text: #10211a;
  --c-text-muted: #435249;
  --c-border: #e3e9e2;
  --c-primary: #14713a;
  --c-primary-hover: #0f5a2e;
  --c-on-primary: #ffffff;
  --c-accent: #a85a12;
  --c-focus: #1d5fbf;
  --c-success-bg: #e4f3e6; --c-success: #14713a;
  --c-warning-bg: #fdf0dd; --c-warning: #8a4f08;
  --c-error-bg: #fbe3e0; --c-error: #a3231a;
  --c-info-bg: #e4effa; --c-info: #1b5aa0;

  /* Tipografi: sistem fontu (ek indirme yok) */
  --font: system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans", sans-serif;
  --font-mono: ui-monospace, "Cascadia Mono", Consolas, monospace;
  --fs-base: 0.875rem;
  --fs-sm: calc(var(--fs-base) * 0.9);
  --fs-lg: calc(var(--fs-base) * 1.05);
  --fs-xl: calc(var(--fs-base) * 1.1);
  --fs-2xl: calc(var(--fs-base) * 1.2);
  --fs-3xl: calc(var(--fs-base) * 1.45);
  --lh: 1.4;
  --lh-tight: 1.2;

  /* Aralık ölçeği (4px tabanlı) */
  --s-1: 0.2rem; --s-2: 0.35rem; --s-3: 0.5rem; --s-4: 0.7rem;
  --s-5: 0.9rem; --s-6: 1.2rem; --s-7: 1.75rem; --s-8: 2.5rem;

  /* Etkileşim: en küçük dokunma hedefi 48px (tek elle kullanım) */
  --tap: 38px;
  --radius: 10px;
  --radius-sm: 8px;
  --radius-lg: 12px;
  --radius-xl: 14px;
  --shadow: 0 1px 2px rgb(0 0 0 / 0.06), 0 2px 8px rgb(0 0 0 / 0.06);
  --container: 1200px;
  --gutter: 12px;
  --tabbar-h: 54px;
  --fs-page: var(--fs-2xl);
  --t-green: #eef6ef;
  --t-amber: #fdf4e8;
  --t-blue: #ebf3fb;
  --grad-primary: linear-gradient(135deg, #1f8a45, #0f5f2f);
}

/* Büyük yazı modu (kullanıcı tercihi) */
:root[data-font="lg"] { --fs-base: 1.0625rem; --tap: 46px; }

:root[data-theme="dark"] {
  color-scheme: dark;
  --c-bg: #141812; --c-surface: #1c211a; --c-surface-2: #252b22;
  --c-text: #e9ece4; --c-text-muted: #b9c1b3; --c-border: #3a4236;
  --c-primary: #6fbf7c; --c-primary-hover: #86cf92; --c-on-primary: #0d1a10;
  --c-accent: #e09a55; --c-focus: #7fb0ff;
  --c-success-bg: #1d3320; --c-success: #a6deae;
  --c-warning-bg: #3a2c10; --c-warning: #f2cc85;
  --c-error-bg: #3d1a17; --c-error: #f5aaa2;
  --c-info-bg: #172a42; --c-info: #a9c8f2;
  --shadow: none; --t-green: #1b2a20; --t-amber: #2e2517; --t-blue: #18263a; --grad-primary: linear-gradient(135deg, #2d8f4e, #1b6a38);
}

/* base.css */
/* Temel sıfırlama ve tipografi — mobile-first */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
body {
  margin: 0;
  min-height: 100dvh;
  background: var(--c-bg);
  color: var(--c-text);
  font: var(--fs-base) / var(--lh) var(--font);
  overflow-wrap: break-word;
}
img, svg, video, canvas { display: block; max-width: 100%; height: auto; }
input, button, select, textarea { font: inherit; color: inherit; }
h1, h2, h3 { line-height: var(--lh-tight); margin: 0 0 var(--s-3); text-wrap: balance; }
h1 { font-size: var(--fs-2xl); }
h2 { font-size: var(--fs-xl); }
h3 { font-size: var(--fs-lg); }
p { margin: 0 0 var(--s-4); }
a { color: var(--c-primary); text-underline-offset: 0.15em; }
/* Özgüllük 0: renkli düğme ve kart bağlantılarının yazı rengini ezmez */
:where(a:hover) { color: var(--c-primary-hover); }
code, pre { font-family: var(--font-mono); font-size: var(--fs-sm); }
pre { overflow-x: auto; }

:focus-visible { outline: 3px solid var(--c-focus); outline-offset: 2px; }

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

.container { width: 100%; max-width: var(--container); margin-inline: auto; padding-inline: var(--gutter); }
.stack > * + * { margin-top: var(--s-4); }
.cluster { display: flex; flex-wrap: wrap; gap: var(--s-2); align-items: center; }
.muted { color: var(--c-text-muted); }
.eyebrow { font-size: var(--fs-sm); font-weight: 600; letter-spacing: 0.04em; text-transform: uppercase; color: var(--c-accent); margin-bottom: var(--s-2); }
.lead { font-size: var(--fs-lg); color: var(--c-text-muted); }

.skip-link { position: absolute; left: var(--s-2); top: -100px; padding: var(--s-2) var(--s-3); background: var(--c-surface); z-index: 100; }
.skip-link:focus { top: var(--s-2); }

@media (min-width: 768px) {
  h1 { font-size: var(--fs-3xl); }
  h2 { font-size: var(--fs-2xl); }
}

/* components.css */
/* Bileşenler: button, field, card, list, nav, alert, empty-state, skeleton */

/* Butonlar */
.btn {
  display: inline-flex; align-items: center; justify-content: center; gap: var(--s-2);
  min-height: var(--tap); padding: 0 var(--s-5);
  border: 1px solid var(--c-border); border-radius: var(--radius);
  background: var(--c-surface); color: var(--c-text);
  font-weight: 600; text-decoration: none; cursor: pointer;
}
.btn:hover { background: var(--c-surface-2); color: var(--c-text); }
.btn--primary { background: var(--c-primary); border-color: var(--c-primary); color: var(--c-on-primary); }
.btn--primary:hover { background: var(--c-primary-hover); color: var(--c-on-primary); }
.btn--ghost { background: transparent; border-color: transparent; color: var(--c-primary); }
.btn--danger { color: var(--c-error); border-color: currentColor; }
.btn--sm { min-height: 40px; padding: 0 var(--s-4); font-size: var(--fs-sm); }
.btn--lg { min-height: calc(var(--tap) + 8px); font-size: var(--fs-lg); }
.btn:disabled, .btn[aria-disabled="true"] { opacity: 0.5; cursor: not-allowed; }

/* Form alanları */
.field { display: grid; gap: var(--s-1); }
.field__label { font-weight: 600; }
/* Etiket alanın içinde: boş alanda ortada, dokununca veya dolunca üst kenarda. placeholder=" " boşluğu CSS'e bildirir. */
.field:has(> .field__label:not(.sr-only) + :is(.input, .select, .textarea, .field__control)) { --embed-h: calc(var(--tap) + 6px); position: relative; }
.field > .field__label:not(.sr-only):has(+ :is(.input, .select, .textarea, .field__control)) { position: absolute; z-index: 1; top: 3px; left: calc(var(--s-3) + 1px); right: var(--s-5); overflow: hidden; color: var(--c-text-muted); font-size: calc(var(--fs-base) * 0.8); font-weight: 600; line-height: 1.2; white-space: nowrap; text-overflow: ellipsis; pointer-events: none; transition: top 0.12s, transform 0.12s, font-size 0.12s; }
.field > .field__label:not(.sr-only):has(+ :is(.input, .textarea, .field__control > .input)[placeholder=" "]:placeholder-shown:not(:focus):not(:-webkit-autofill)) { top: calc(var(--embed-h) / 2); right: var(--s-2); transform: translateY(-50%); font-size: var(--fs-sm); font-weight: 500; }
.field > .field__label:not(.sr-only) + :is(.input, .select, .textarea), .field > .field__label:not(.sr-only) + .field__control > .input { min-height: var(--embed-h); padding-block: 15px 1px; }
.field > .field__label:not(.sr-only) + .select { padding-inline-start: calc(var(--s-3) - 3px); }
.field > .field__label:not(.sr-only) + .textarea { padding-block: 18px var(--s-1); }
.field__hint { font-size: var(--fs-sm); color: var(--c-text-muted); margin: 0; }
.field__error { font-size: var(--fs-sm); color: var(--c-error); margin: 0; font-weight: 600; }
.input, .select, .textarea {
  width: 100%; min-height: var(--tap); padding: var(--s-2) var(--s-3);
  border: 1px solid var(--c-border); border-radius: var(--radius-sm); background: var(--c-surface);
}
.textarea { min-height: 4.92rem; }
.field--error .input { border-color: var(--c-error); border-width: 2px; }
.field__control--suffix { display: flex; align-items: stretch; }
.field__control--suffix .input { border-start-end-radius: 0; border-end-end-radius: 0; }
.field__suffix {
  display: flex; align-items: center; padding: 0 var(--s-3);
  border: 1px solid var(--c-border); border-inline-start: 0; border-radius: 0 var(--radius-sm) var(--radius-sm) 0;
  background: var(--c-surface-2); color: var(--c-text-muted);
}

/* Kart, liste, rozet */
.card { background: var(--c-surface); border: 1px solid var(--c-border); border-radius: var(--radius); padding: var(--s-4); box-shadow: var(--shadow); }
.list { list-style: none; margin: 0; padding: 0; }
.list__item { display: flex; justify-content: space-between; align-items: center; gap: var(--s-3); min-height: var(--tap); padding: var(--s-2) 0; border-bottom: 1px solid var(--c-border); }
.list__item:last-child { border-bottom: 0; }
.product-thumb { flex: none; width: 96px; height: 96px; object-fit: cover; border-radius: var(--radius-sm); border: 1px solid var(--c-border); } /* F-177 vitrindeki ürün fotoğrafı */
.list.card { padding-block: 0; padding-inline: var(--s-4); }
.badge { display: inline-block; padding: 0.1em 0.5em; border-radius: 999px; background: var(--c-warning-bg); color: var(--c-warning); font-size: var(--fs-sm); font-weight: 700; }

/* Uyarılar */
.alert { padding: var(--s-3) var(--s-4); border-radius: var(--radius-sm); border-inline-start: 4px solid currentColor; }
.alert--success { background: var(--c-success-bg); color: var(--c-success); }
.alert--warning { background: var(--c-warning-bg); color: var(--c-warning); }
.alert--error { background: var(--c-error-bg); color: var(--c-error); }
.alert--info { background: var(--c-info-bg); color: var(--c-info); }

/* Boş durum ve iskelet yükleyici */
.empty-state { text-align: center; padding: var(--s-7) var(--s-4); border: 2px dashed var(--c-border); border-radius: var(--radius); }
.skeleton { height: 1em; border-radius: var(--radius-sm); background: linear-gradient(90deg, var(--c-surface-2), var(--c-border), var(--c-surface-2)); background-size: 200% 100%; animation: sk 1.4s ease-in-out infinite; }
.skeleton--title { height: 1.5em; width: 60%; }
.skeleton--short { width: 40%; }
@keyframes sk { from { background-position: 200% 0; } to { background-position: -200% 0; } }

/* Public site başlığı */
.site-header { background: var(--c-surface); border-bottom: 1px solid var(--c-border); }
.site-header__inner { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--s-3); min-height: 64px; padding-block: var(--s-2); }
.brand { font-weight: 700; font-size: var(--fs-lg); color: var(--c-text); text-decoration: none; }
.brand span { color: var(--c-primary); }
.site-nav { display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-4); }
.site-nav a:not(.btn) { color: var(--c-text); text-decoration: none; font-weight: 500; }
.site-main { padding-block: var(--s-6); }
.site-footer { padding-block: var(--s-6); color: var(--c-text-muted); border-top: 1px solid var(--c-border); }

/* Hero: genişlik daraltma YOK — kapsayıcının tamamını kullanır (global kural) */
.hero { padding-block: var(--s-6) var(--s-7); }
.hero__actions { display: flex; flex-wrap: wrap; gap: var(--s-3); }
.notice { padding: var(--s-4); background: var(--c-surface-2); border-radius: var(--radius); }

/* Uygulama kabuğu: alt sekme çubuğu (5 ana eylem) */
.app-main { width: 100%; padding: var(--s-4) var(--gutter) calc(var(--tabbar-h) + var(--s-6) + env(safe-area-inset-bottom)); max-width: var(--container); margin-inline: auto; }
.page-head { margin-bottom: var(--s-5); }
.tabbar {
  position: fixed; inset-inline: 0; bottom: 0; z-index: 50;
  display: grid; grid-template-columns: repeat(5, 1fr);
  min-height: var(--tabbar-h); padding-bottom: env(safe-area-inset-bottom);
  background: var(--c-surface); border-top: 1px solid var(--c-border);
}
.tabbar__item { display: flex; align-items: center; justify-content: center; min-height: var(--tap); padding: var(--s-1); font-size: var(--fs-sm); font-weight: 600; text-align: center; color: var(--c-text-muted); text-decoration: none; }
.tabbar__item[aria-current="page"] { color: var(--c-primary); box-shadow: inset 0 3px 0 var(--c-primary); }

/* Kimlik sayfaları: tek sütun kart, tek elle kullanım */
.auth-header { padding: var(--s-4) var(--gutter); }
.auth-main { padding: 0 var(--gutter) var(--s-7); }
.auth-card { margin-inline: auto; max-width: 24.6rem; }
.btn--block { width: 100%; }
.input--code { font-size: var(--fs-2xl); letter-spacing: 0.3em; text-align: center; font-family: var(--font-mono); }
.badge--ok { background: var(--c-success-bg); color: var(--c-success); }
.badge--danger { background: var(--c-error-bg); color: var(--c-error); }
.code-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--s-2); list-style: none; padding: 0; margin: 0; }
.code-list code, .secret-key code { font-size: var(--fs-lg); }
.secret-key { padding: var(--s-3); background: var(--c-surface-2); border-radius: var(--radius-sm); word-break: break-all; }

/* Seçim listeleri (radio/checkbox) — tüm satır dokunma hedefi */
fieldset.field { border: 0; padding: 0; margin: 0; }
.choice-list { display: grid; gap: var(--s-2); }
.choice { display: flex; align-items: center; gap: var(--s-3); min-height: var(--tap); padding: var(--s-2) var(--s-3); border: 1px solid var(--c-border); border-radius: var(--radius-sm); background: var(--c-surface); cursor: pointer; }
.choice input { width: 1.025rem; height: 1.025rem; accent-color: var(--c-primary); }
.choice:has(input:checked) { border-color: var(--c-primary); box-shadow: inset 0 0 0 1px var(--c-primary); }

/* Yardımcı düzenler */
.cluster--between { justify-content: space-between; }
.grid-2 { display: grid; gap: var(--s-3); }
@media (min-width: 480px) { .grid-2 { grid-template-columns: 1fr 1fr; } }
.choice-list--inline { grid-template-columns: repeat(auto-fill, minmax(6.97rem, 1fr)); }
.select--suffix { width: auto; border-start-start-radius: 0; border-end-start-radius: 0; border-inline-start: 0; }
.list__link { display: flex; flex-direction: column; flex: 1; min-width: 0; color: var(--c-text); text-decoration: none; }
.list__link:hover strong { text-decoration: underline; }
.list__meta { text-align: end; white-space: nowrap; }
.facts { display: grid; gap: var(--s-3); margin: 0; }
.facts div { display: flex; justify-content: space-between; gap: var(--s-3); border-bottom: 1px solid var(--c-border); padding-bottom: var(--s-2); }
.facts dt { color: var(--c-text-muted); }
.facts dd { margin: 0; font-weight: 600; text-align: end; }

/* Başlangıç sihirbazı adımları */
.steps { display: flex; gap: var(--s-2); list-style: none; padding: 0; margin: var(--s-4) 0 0; counter-reset: s; }
.steps__item { flex: 1; padding-top: var(--s-2); border-top: 4px solid var(--c-border); font-size: var(--fs-sm); color: var(--c-text-muted); }
.steps__item.is-done, .steps__item[aria-current="step"] { border-top-color: var(--c-primary); color: var(--c-text); }

/* Harita */
.map { height: min(65vh, 560px); min-height: 320px; border-radius: var(--radius); border: 1px solid var(--c-border); background: var(--c-surface-2); }
.map--sm { height: 260px; min-height: 220px; }
.map-toolbar { display: flex; flex-wrap: wrap; gap: var(--s-2); }
.map-toolbar [aria-pressed="true"] { background: var(--c-primary); border-color: var(--c-primary); color: var(--c-on-primary); }
.map-stats { font-size: var(--fs-lg); margin: 0; }
.map-vertex { background: #fff; border: 3px solid #14713a; border-radius: 50%; box-shadow: 0 1px 4px rgb(0 0 0 / 0.4); }

/* PWA: bildirim şeridi ve senkron rozeti */
.app-banners { display: grid; gap: var(--s-2); margin-bottom: var(--s-3); }
.app-banner { min-width: 0; overflow-wrap: anywhere; display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-2); padding: var(--s-3) var(--s-4); border-radius: var(--radius); background: var(--c-text); color: var(--c-bg); box-shadow: var(--shadow); }
.sync-badge { display: block; padding: var(--s-2) var(--gutter); background: var(--c-warning-bg); color: var(--c-warning); font-weight: 600; text-align: center; text-decoration: none; }
.sync-badge[hidden] { display: none; }

/* Kutucuk menü (Çiftliğim) */
.tile-grid { display: grid; gap: var(--s-3); grid-template-columns: repeat(auto-fill, minmax(12.3rem, 1fr)); }
.tile { display: flex; flex-direction: column; gap: var(--s-1); min-height: 4.92rem; padding: var(--s-4); border: 1px solid var(--c-border); border-radius: var(--radius); background: var(--c-surface); color: var(--c-text); text-decoration: none; box-shadow: var(--shadow); }
.tile:hover { border-color: var(--c-primary); color: var(--c-text); }
.tile strong { font-size: var(--fs-lg); }
.tile span { color: var(--c-text-muted); }

/* Ön rapor (Faz 02): her değerin altında kaynak/güven satırı; geniş ekranda iki sütun */
.badge--warn { background: var(--c-warning-bg); color: var(--c-warning); }
.report-grid { display: grid; gap: var(--s-4); }
@media (min-width: 900px) { .report-grid { grid-template-columns: 1fr 1fr; align-items: start; } }
.obs__meta { display: block; font-size: var(--fs-sm); color: var(--c-text-muted); font-weight: 400; }
.obs__range { display: block; font-size: var(--fs-sm); color: var(--c-text-muted); font-weight: 400; }
.facts dt { min-width: 0; flex-shrink: 0; max-width: 50%; } /* kısa etiket ("İzin") harf harf bölünmesin (break-word min-content'i daraltıyor); uzun değer dd'de sarılır */
.table .is-deficit { color: var(--c-error); font-weight: 600; }

/* Laboratuvar (Faz 03) */
.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; }
.mono { font-family: var(--font-mono); }
.h3 { font-size: var(--fs-lg); margin: 0; }
.text-end { text-align: end; }
.price { font-size: var(--fs-lg); }
.input--code-sm { font-family: var(--font-mono); letter-spacing: 0.08em; text-transform: uppercase; max-inline-size: 13.12rem; }
.sample-row { padding-top: var(--s-3); border-top: 1px solid var(--c-border); }
.is-highlight { box-shadow: 0 0 0 3px var(--c-primary); }
.table .is-issue { background: var(--c-warning-bg); }
.param-row .input { flex: 1; min-width: 8.2rem; }
.param-row[hidden] { display: none; }
/* Sonuç girişi: mobilde parametre başına blok (ad, değer + birim yan yana, yöntem); geniş ekranda tek satır */
.param-entries { display: grid; gap: var(--s-3); }
.param-entry { display: grid; gap: var(--s-1); padding-bottom: var(--s-3); border-bottom: 1px solid var(--c-border); }
.param-entry__label { font-weight: 600; }
.param-entry__value { display: flex; gap: var(--s-2); }
.param-entry__value .input { flex: 1; min-width: 0; }
.param-entry__value .select { width: auto; min-width: 6.15rem; }
.input--sm { min-height: 40px; font-size: var(--fs-sm); }
@media (min-width: 900px) { .param-entry:not(.draft-row) { grid-template-columns: 16rem 1fr 14rem; align-items: center; } }
.param-entry__value .unit-input { flex: 0 0 7.38rem; }
.draft-row.is-issue { padding: var(--s-3); border-radius: var(--radius-sm); background: var(--c-warning-bg); border-bottom: 0; }
.layout-print { background: #fff; color: #000; }
.labels { padding: var(--s-4); }
.label-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 8mm; }
.label { display: flex; gap: var(--s-3); align-items: center; padding: 4mm; border: 1px dashed #666; break-inside: avoid; }
.label__qr svg { width: 34mm; height: 34mm; }
.label__text { display: flex; flex-direction: column; gap: 2px; font-size: 11pt; }
.label__code { font-family: var(--font-mono); font-size: 13pt; font-weight: 700; letter-spacing: 0.05em; }
/* Önizleme yayını şeridi (PREVIEW_MODE) */
.preview-banner { background: var(--c-warning-bg); color: var(--c-warning); font-size: var(--fs-sm); text-align: center; padding: var(--s-1) var(--s-3); }
/* F-246 sözleşme metni, F-519 sezon raporu: baskıda uygulama kabuğu gizlenir, kartlar bölünmez */
.contract__terms { white-space: pre-wrap; }
.contract__hash { word-break: break-all; }
@media print {
  .no-print, .skip-link, .tabbar, .sync-badge, .app-banner, .preview-banner { display: none !important; }
  .labels { padding: 0; }
  .app-main { padding: 0; max-width: none; }
  .card { box-shadow: none; break-inside: avoid; }
}

/* Uzun metin sayfaları (hakkımızda, yasal metinler) */
.prose h2 { margin-top: var(--s-6); }
.prose ul { padding-inline-start: var(--s-5); }
.prose li + li { margin-top: var(--s-2); }
.site-footer__inner { display: grid; gap: var(--s-3); }
.site-footer a { color: var(--c-text-muted); }

/* Tablo (yönetim) */
.table-wrap { overflow-x: auto; }
.table { width: 100%; border-collapse: collapse; font-size: var(--fs-sm); }
.table th, .table td { padding: var(--s-2); border-bottom: 1px solid var(--c-border); text-align: start; vertical-align: top; }
.table th { color: var(--c-text-muted); font-weight: 600; }

/* Hata sayfası */
.error-page { padding-block: var(--s-6); }
.debug-trace { padding: var(--s-4); background: var(--c-surface-2); border-radius: var(--radius-sm); white-space: pre-wrap; }

@media (min-width: 1024px) {
  /* Geniş ekranda sekme çubuğu sol menüdür; altında hesap ve çıkış sabit durur */
  :root { --side-w: 216px; }
  html.side-min { --side-w: 64px; }
  body.layout-app { padding-inline-start: var(--side-w); }
  .tabbar { inset: 0 auto 0 0; width: var(--side-w); display: flex; flex-direction: column; gap: 2px; padding: var(--s-3) var(--s-2); border-top: 0; border-inline-end: 1px solid var(--c-border); overflow-y: auto; }
  .tabbar__item { flex: none; flex-direction: row; justify-content: flex-start; gap: var(--s-2); padding-inline: var(--s-3); border-radius: 8px; }
  .tabbar__item[aria-current="page"] { box-shadow: none; background: var(--c-surface-2); }
  .tabbar__item:hover, .side-foot__out:hover, .side-foot__min:hover, .side-foot__user:hover { background: var(--c-surface-2); }
  .side-foot { display: grid; gap: 2px; margin-top: auto; padding-top: var(--s-2); border-top: 1px solid var(--c-border); }
  .app-main { padding-bottom: var(--s-7); }
  html.side-min .tabbar__item { justify-content: center; padding-inline: 0; font-size: 0; }
  html.side-min .tabbar__item .ico { flex: none; }
  html.side-min .tabbar .acct__who, html.side-min .side-foot__out span { display: none; }
  html.side-min .side-foot__out, html.side-min .side-foot__user, html.side-min .side-foot__min { justify-content: center; }
  .acct__nav { display: none !important; }
}
@media (max-width: 1023.98px) {
  .side-foot { display: none; }
  .acct__panel { position: fixed; inset: auto 0 0 0; width: auto; max-height: 85dvh; overflow-y: auto; border-radius: 16px 16px 0 0; padding-bottom: calc(var(--s-3) + env(safe-area-inset-bottom)); }
}
.side-foot__user, .side-foot__out, .side-foot__min { display: flex; align-items: center; gap: var(--s-2); width: 100%; min-height: 36px; padding: 4px 8px; border: 0; border-radius: 8px; background: none; color: var(--c-text); font: inherit; text-align: start; text-decoration: none; cursor: pointer; }
.side-foot__min { color: var(--c-text-muted); justify-content: flex-end; }
.acct { position: relative; }
.acct__av { display: inline-flex; flex: none; align-items: center; justify-content: center; width: 28px; height: 28px; border-radius: 50%; background: var(--c-primary); color: #fff; font-size: 13px; font-weight: 700; }
.acct__who { display: grid; min-width: 0; }
.acct__who b, .acct__who small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.acct__who small { color: var(--c-text-muted); }
.acct__panel { position: absolute; inset-inline-end: 0; top: calc(100% + 6px); z-index: 80; width: 264px; padding: var(--s-2); border: 1px solid var(--c-border); border-radius: 12px; background: var(--c-surface); color: var(--c-text); box-shadow: var(--shadow); }
.acct__panel[hidden] { display: none; }
.acct__head { display: flex; align-items: center; gap: var(--s-2); padding: var(--s-2); }
.acct__nav { padding-block: 4px; border-block: 1px solid var(--c-border); }
.acct__panel a, .acct__panel button { display: flex; align-items: center; width: 100%; min-height: var(--tap); padding: 0 var(--s-2); border: 0; border-radius: 8px; background: none; color: inherit; font: inherit; text-decoration: none; cursor: pointer; }
.acct__panel a:hover, .acct__panel button:hover, .acct__panel a:focus-visible, .acct__panel button:focus-visible { background: var(--c-surface-2); }
.acct__panel hr { margin: 4px 0; border: 0; border-top: 1px solid var(--c-border); }
.acct__panel button { color: var(--c-danger, #b42318); font-weight: 600; }
.auth-notice { position: fixed; inset: auto var(--s-3) calc(var(--tabbar-h) + var(--s-3)) var(--s-3); z-index: 90; }
.auth-end { max-width: 22rem; padding: var(--s-5); border: 0; border-radius: 12px; background: var(--c-surface); color: var(--c-text); }
.auth-end::backdrop { background: rgb(17 40 28 / 0.55); }
.card-list { list-style: none; padding: 0; margin: 0; }

/* Telefonda kurulum penceresi: tüm paketlerde (herkese açık sayfalar dahil) */
.pwa-gate { width: 100%; max-width: none; margin: auto 0 0; padding: 20px 16px calc(16px + env(safe-area-inset-bottom)); border: 0; border-radius: 16px 16px 0 0; background: var(--c-surface); color: var(--c-text); text-align: center; }
.pwa-gate::backdrop { background: rgb(17 40 28 / 0.55); }
.pwa-gate img { margin-inline: auto; }
.pwa-gate h2 { margin: 10px 0 6px; font-size: 19px; }
.pwa-gate p { margin: 0 0 14px; color: var(--c-text-muted); }
.pwa-gate .btn { margin-top: 8px; min-height: 46px; }

/* screens.css */
/* Tasarım dili v2 (mockup paketi): yumuşak yeşil kartlar, renkli ikon kutuları, büyük başlık, koyu yeşil eylem şeridi. */

/* Genel yüzey ayarları: tüm sayfalar bunlardan yararlanır */
body { -webkit-font-smoothing: antialiased; }
h1, h2, h3 { font-weight: 700; letter-spacing: -0.02em; }
.ico { width: 1.25em; height: 1.25em; flex: none; display: inline-block; vertical-align: -0.25em; fill: none; stroke: currentColor; stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; }
.card { box-shadow: none; border-color: var(--c-border); border-radius: var(--radius-lg); }
.btn { border-radius: var(--radius); }
.btn--primary { background: var(--grad-primary); border-color: transparent; }
.btn--primary:hover { background: var(--c-primary-hover); }
.btn--ghost { color: var(--c-primary); }
.input, .select, .textarea { border-radius: var(--radius); }
.input:focus-visible, .select:focus-visible, .textarea:focus-visible { outline-offset: 0; }
.badge { padding: 0.15em 0.65em; font-weight: 700; }
.alert { border-radius: var(--radius); border-inline-start: 0; }
.tile { border-radius: var(--radius-lg); background: var(--c-surface); }
.empty-state { border-radius: var(--radius-lg); border-color: var(--c-border); background: var(--t-green); }
.list.card { border-radius: var(--radius-lg); }
.table th { color: var(--c-text-muted); }
.eyebrow { text-transform: none; letter-spacing: 0; color: var(--c-primary); font-weight: 700; }
.page-head h1 { font-size: var(--fs-page); margin-bottom: var(--s-1); }
.page-head .muted, .page-head__sub { color: var(--c-text-muted); margin: 0; }
.notice { border-radius: var(--radius); background: var(--t-green); }
.map { border-radius: var(--radius-lg); }

/* Marka */
.brand { display: inline-flex; align-items: center; font-size: 1.107rem; letter-spacing: -0.02em; }
.brand img { width: auto; height: 40px; }
:root[data-theme="dark"] .brand img, :root[data-theme="dark"] .au-logo img { background: #fff; border-radius: 8px; padding: 2px 6px; box-sizing: content-box; }
.brand span { color: var(--c-primary); font-weight: 700; }

/* Üst çubuk */
.app-top { position: sticky; top: 0; z-index: 40; display: flex; align-items: center; justify-content: space-between; gap: var(--s-3); padding: var(--s-2) var(--gutter); background: color-mix(in srgb, var(--c-surface) 92%, transparent); backdrop-filter: blur(10px); }
.app-top__acts { display: flex; align-items: center; gap: var(--s-2); }
.icon-btn { position: relative; display: inline-flex; align-items: center; justify-content: center; width: var(--tap); height: var(--tap); border: 0; border-radius: 50%; background: transparent; color: var(--c-text); text-decoration: none; cursor: pointer; }
.icon-btn:hover { color: var(--c-primary); }
.icon-btn--soft { background: var(--t-green); color: var(--c-primary); }
.icon-btn .ico { width: 1.23rem; height: 1.23rem; }
.icon-btn__dot { position: absolute; top: 9px; right: 10px; width: 10px; height: 10px; border-radius: 50%; background: var(--c-error); border: 2px solid var(--c-surface); }

/* Alt menü */
@media (max-width: 1023px) { .tabbar { padding-inline: var(--s-2); border-top: 0; border-radius: 22px 22px 0 0; box-shadow: 0 -4px 20px rgb(16 40 26 / 0.07); } }
.tabbar__item { flex-direction: column; gap: 2px; padding-block: var(--s-2); font-size: 0.615rem; font-weight: 600; color: var(--c-text-muted); position: relative; isolation: isolate; }
.tabbar__item .ico { width: 1.312rem; height: 1.312rem; }
.tabbar__item[aria-current="page"] { color: var(--c-primary); box-shadow: none; font-weight: 700; }
.tabbar__item[aria-current="page"]::before { content: ""; position: absolute; z-index: -1; top: 4px; left: 8%; right: 8%; height: 34px; border-radius: 16px; background: var(--t-green); }

/* Başlık satırı: geri + başlık + eylemler */
.screen-head { display: flex; align-items: center; gap: var(--s-3); }
.screen-head h1 { flex: 1; min-width: 0; margin: 0; font-size: var(--fs-page); }
.screen-sub { color: var(--c-text-muted); margin: 0; }

/* Renkli yüzeyler ve ikon kutusu */
.t-green { --tint: var(--t-green); --tint-ink: var(--c-primary); }
.t-amber { --tint: var(--t-amber); --tint-ink: var(--c-accent); }
.t-blue { --tint: var(--t-blue); --tint-ink: var(--c-info); }
.t-plain { --tint: var(--c-surface); --tint-ink: var(--c-primary); }
.ibox { display: inline-flex; align-items: center; justify-content: center; flex: none; width: 2.46rem; height: 2.46rem; border-radius: 14px; background: color-mix(in srgb, var(--tint-ink, var(--c-primary)) 13%, var(--c-surface)); color: var(--tint-ink, var(--c-primary)); }
.ibox .ico { width: 1.312rem; height: 1.312rem; }
.ibox--lg { width: 3.28rem; height: 3.28rem; border-radius: 18px; }
.ibox--lg .ico { width: 1.804rem; height: 1.804rem; }

.tint-card { display: block; padding: var(--s-4); border: 1px solid color-mix(in srgb, var(--tint-ink, var(--c-primary)) 14%, transparent); border-radius: var(--radius-lg); background: var(--tint, var(--t-green)); color: var(--c-text); text-decoration: none; }
a.tint-card:hover { border-color: var(--tint-ink); color: var(--c-text); }

/* İki sütunlu ızgara */
.duo { display: grid; gap: var(--s-3); grid-template-columns: repeat(2, minmax(0, 1fr)); }
.trio { display: grid; gap: var(--s-2); grid-template-columns: repeat(3, minmax(0, 1fr)); }
@media (min-width: 768px) { .duo--wide { grid-template-columns: repeat(4, minmax(0, 1fr)); } }

/* Sayı kartı */
.stat { display: flex; align-items: center; gap: var(--s-3); min-width: 0; }
.stat__body { display: grid; min-width: 0; }
.stat__label { color: var(--c-text-muted); font-size: var(--fs-sm); }
.stat__value { font-size: 1.312rem; font-weight: 700; letter-spacing: -0.02em; line-height: 1.15; }
.stat__value small { font-size: 0.82rem; font-weight: 600; color: var(--c-text-muted); letter-spacing: 0; }
.stat__note { color: var(--c-text-muted); font-size: var(--fs-sm); }

/* Satır: ikon + metin + rozet + ok */
.rowlink { display: flex; align-items: center; gap: var(--s-3); padding: var(--s-3); min-height: var(--tap); border: 1px solid var(--c-border); border-radius: var(--radius-lg); background: var(--tint, var(--c-surface)); color: var(--c-text); text-decoration: none; }
a.rowlink:hover { border-color: var(--c-primary); color: var(--c-text); }
.rowlink__body { flex: 1; min-width: 0; display: grid; gap: 2px; }
.rowlink__title { font-weight: 700; }
.rowlink__meta { color: var(--c-text-muted); font-size: var(--fs-sm); }
.rowlink > .ico:last-child { color: var(--c-text-muted); }
.rows { display: grid; gap: var(--s-3); list-style: none; margin: 0; padding: 0; }

/* Hızlı işlem */
.quick { display: flex; align-items: center; gap: var(--s-3); padding: var(--s-3); min-height: 3.69rem; border: 1px solid color-mix(in srgb, var(--tint-ink, var(--c-primary)) 12%, transparent); border-radius: var(--radius-lg); background: var(--tint, var(--t-green)); color: var(--c-text); font-weight: 700; text-decoration: none; }
.quick:hover { color: var(--c-text); border-color: var(--tint-ink); }
.quick span:not(.ibox) { flex: 1; min-width: 0; line-height: 1.2; overflow-wrap: normal; }
.quick { gap: var(--s-2); padding-inline: var(--s-2); }
.quick .ibox { width: 2.05rem; height: 2.05rem; border-radius: 12px; }
.quick > .ico { width: 0.82rem; height: 0.82rem; }
.quick > .ico { color: var(--tint-ink); }

/* Durum hapı */
.pill { display: inline-flex; align-items: center; gap: 0.35em; padding: 0.3em 0.75em; border-radius: 999px; font-size: var(--fs-sm); font-weight: 700; white-space: nowrap; background: var(--c-surface-2); color: var(--c-text-muted); }
.pill--ok { background: var(--c-success-bg); color: var(--c-success); }
.pill--warn { background: var(--c-warning-bg); color: var(--c-warning); }
.pill--info { background: var(--c-info-bg); color: var(--c-info); }
.pill--bad { background: var(--c-error-bg); color: var(--c-error); }

/* Sekme */
.seg { display: flex; gap: var(--s-1); padding: var(--s-1); border-radius: 18px; background: var(--c-surface-2); overflow-x: auto; scrollbar-width: none; }
.seg a, .seg button { flex: 1; display: inline-flex; align-items: center; justify-content: center; gap: var(--s-2); min-height: 44px; padding: 0 var(--s-3); border: 0; border-radius: 14px; background: transparent; color: var(--c-text-muted); font-weight: 600; text-decoration: none; white-space: nowrap; cursor: pointer; }
.seg [aria-current], .seg [aria-pressed="true"] { background: var(--grad-primary); color: var(--c-on-primary); font-weight: 700; }

/* Yatay filtre çipleri */
.chips { display: flex; gap: var(--s-2); overflow-x: auto; padding-bottom: 2px; scrollbar-width: none; }
.chip { display: inline-flex; align-items: center; gap: var(--s-2); min-height: 44px; padding: 0 var(--s-4); border: 1px solid var(--c-border); border-radius: 16px; background: var(--c-surface); color: var(--c-text); font-weight: 600; text-decoration: none; white-space: nowrap; }
.chip[aria-current] { background: var(--grad-primary); border-color: transparent; color: var(--c-on-primary); }

/* Bölüm başlığı */
.sec-head { display: flex; align-items: center; justify-content: space-between; gap: var(--s-3); }
.sec-head h2 { margin: 0; font-size: 1.025rem; }
.sec-head a { display: inline-flex; align-items: center; gap: var(--s-1); color: var(--c-text-muted); font-size: var(--fs-sm); text-decoration: none; }

/* Koyu yeşil eylem şeridi */
.cta-bar { display: flex; align-items: center; gap: var(--s-3); min-height: 3.895rem; padding: var(--s-3) var(--s-4); border: 0; border-radius: var(--radius-lg); background: var(--grad-primary); color: var(--c-on-primary); text-decoration: none; width: 100%; font: inherit; cursor: pointer; text-align: start; }
.cta-bar:hover { color: var(--c-on-primary); filter: brightness(1.05); }
.cta-bar__body { flex: 1; min-width: 0; display: grid; }
.cta-bar__title { font-size: 0.943rem; font-weight: 700; letter-spacing: -0.01em; }
.cta-bar__sub { font-size: var(--fs-sm); opacity: 0.9; }
.cta-bar__go { display: inline-flex; align-items: center; justify-content: center; flex: none; width: 2.255rem; height: 2.255rem; border-radius: 50%; background: rgb(255 255 255 / 0.16); }
.cta-bar > .ico:first-child { width: 1.804rem; height: 1.804rem; flex: none; }

/* Asistan bandı */
.assist { position: relative; display: flex; align-items: center; gap: var(--s-3); min-height: 6.15rem; padding: var(--s-4) var(--s-4); border-radius: var(--radius-lg); background: var(--grad-primary); color: var(--c-on-primary); text-decoration: none; overflow: hidden; }
.assist:hover { color: var(--c-on-primary); filter: brightness(1.05); }
.assist__body { flex: 1; min-width: 0; display: grid; gap: var(--s-1); }
.assist__title { font-size: 1.148rem; font-weight: 700; letter-spacing: -0.02em; }
.assist img { width: 5.33rem; height: auto; margin-block: calc(var(--s-2) * -1) calc(var(--s-4) * -1); flex: none; align-self: flex-end; }

/* Hava kartı */
.weather { position: relative; display: grid; gap: var(--s-3); padding: var(--s-4); min-height: 12.3rem; border-radius: var(--radius-xl); overflow: hidden; background: #cfe6f3 url(/icons/scene.svg) center bottom / cover no-repeat; color: #10211a; text-decoration: none; align-content: space-between; }
.weather:hover { color: #10211a; }
.weather__place { display: flex; align-items: center; gap: var(--s-2); font-size: 0.861rem; font-weight: 600; margin: 0; }
.weather__temp { font-size: 2.788rem; font-weight: 700; letter-spacing: -0.03em; line-height: 1; margin: 0; }
.weather__temp small { font-size: 1.312rem; vertical-align: super; font-weight: 700; }
.weather__sky { font-weight: 700; font-size: 0.943rem; margin: 0; }
.weather__stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); padding: var(--s-3); border-radius: 18px; background: rgb(255 255 255 / 0.84); backdrop-filter: blur(6px); }
.weather__stats > div { display: flex; align-items: center; gap: var(--s-1); padding-inline: var(--s-1); min-width: 0; }
.weather__stats > div + div { border-inline-start: 1px solid rgb(16 33 26 / 0.12); }
.weather__stats .ico { width: 1.107rem; height: 1.107rem; color: var(--c-primary); }
.weather__stats dt { font-size: 0.666rem; color: #4d5a53; white-space: nowrap; }
.weather__stats dd { margin: 0; font-weight: 700; white-space: nowrap; }
.weather__note { font-size: var(--fs-sm); margin: 0; color: #2b3a33; }

/* Görsel başlık (analiz, plan) */
.scene-head { position: relative; padding: var(--s-4); border-radius: var(--radius-xl); overflow: hidden; background: #e8f4fa url(/icons/scene.svg) center bottom / cover no-repeat; color: #10211a; }
.scene-head h2 { margin: 0; }

/* Ürün kartı ve küçük görsel */
.thumb { flex: none; width: 4.51rem; height: 4.51rem; border-radius: 16px; object-fit: cover; background: var(--t-green); }
.thumb--sm { width: 3.28rem; height: 3.28rem; border-radius: 12px; }
.ph-thumb { display: inline-flex; align-items: center; justify-content: center; color: var(--c-primary); }
.ph-thumb .ico { width: 45%; height: 45%; }
.minis { display: grid; gap: var(--s-2); grid-template-columns: repeat(3, minmax(0, 1fr)); }
.mini { display: grid; gap: 2px; padding: var(--s-2); border-radius: 12px; background: var(--c-surface-2); min-width: 0; }
.mini small { color: var(--c-text-muted); }
.mini b { font-weight: 700; }

/* Zaman çizgisi */
.tl { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--s-3); }
.tl li { position: relative; padding-inline-start: 1.845rem; }
.tl li::before { content: ""; position: absolute; left: 0.45rem; top: 50%; width: 0.902rem; height: 0.902rem; margin-top: -0.55rem; border-radius: 50%; background: var(--c-border); }
.tl li::after { content: ""; position: absolute; left: 0.779rem; top: calc(50% + 0.451rem); bottom: calc(-50% - 0.2rem); width: 2px; background: var(--c-border); }
.tl li:last-child::after { display: none; }
.tl li.is-done::before, .tl li.is-now::before { background: var(--c-primary); }
.tl li.is-done::after { background: var(--c-primary); }
.tl li.is-now::before { box-shadow: 0 0 0 3px var(--c-surface), 0 0 0 5px var(--c-primary); }

/* Sohbet */
.bubble { max-width: 88%; padding: var(--s-3) var(--s-4); border-radius: 18px; background: var(--t-blue); }
.bubble--me { margin-inline-start: auto; background: var(--t-green); }

/* Masaüstü */
@media (min-width: 1024px) {
  .app-top { order: -2; padding-inline: max(var(--gutter), calc((100% - var(--container)) / 2 + var(--gutter))); }
  .tabbar { top: 64px; border-radius: 0; box-shadow: none; }
  .tabbar__item { flex-direction: row; gap: var(--s-2); font-size: var(--fs-sm); }
  .tabbar__item[aria-current="page"]::before { inset: 6px 4px; height: auto; }
  .tabbar__item .ico { width: 1.025rem; height: 1.025rem; }
  .weather { min-height: 13.94rem; background-position: center 42%; }
  .scene-head { background-position: center 42%; }
}
@media print { .app-top { display: none !important; } }
.weather__empty { margin: 0; padding: var(--s-3); border-radius: 18px; background: rgb(255 255 255 / 0.84); font-weight: 600; }

.site-header .brand img { height: 56px; }
.site-footer .brand img { height: 80px; }

/* s-corp.css */
/* Kurumsal sayfalar: bant başlık, sayfa geçişi, kart ızgarası. Genişlik kapsayıcıyla aynıdır. */
.corp { display: grid; gap: var(--s-6); padding-block: var(--s-4) var(--s-7); }
.corp-hero { padding: clamp(24px, 5vw, 56px) clamp(18px, 4vw, 48px); border-radius: 14px; background: #123f2b; color: #fff; }
.corp-hero h1 { margin: 0; color: #fff; font-size: clamp(1.6rem, 4vw, 2.6rem); line-height: 1.15; letter-spacing: -0.02em; }
.corp-hero__eyebrow { margin: 0 0 8px; color: #a9dcb9; font-size: 13px; font-weight: 600; }
.corp-hero__lead { margin: 12px 0 0; color: #dcebe1; font-size: clamp(15px, 1.6vw, 18px); line-height: 1.5; }
.corp-nav { display: flex; gap: 4px; overflow-x: auto; padding-bottom: 8px; border-bottom: 1px solid var(--c-border); scrollbar-width: none; }
.corp-nav a { flex: none; padding: 8px 12px; border-radius: 8px; color: var(--c-text-muted); font-weight: 600; text-decoration: none; }
.corp-nav a:hover { background: var(--c-surface-2); color: var(--c-text); }
.corp-nav a[aria-current="page"] { background: #e9f4ec; color: var(--c-primary); }
.corp-sec { display: grid; gap: var(--s-4); }
.corp-sec > h2, .corp-legal h2 { margin: 0; font-size: 1.25rem; letter-spacing: -0.01em; }
.corp-grid { display: grid; gap: var(--s-4); grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr)); margin: 0; padding: 0; list-style: none; }
.corp-card { display: grid; align-content: start; gap: 6px; padding: 18px; border: 1px solid var(--c-border); border-radius: 12px; background: var(--c-surface); }
.corp-card h3 { margin: 0; font-size: 1rem; }
.corp-card p { margin: 0; color: var(--c-text-muted); }
.corp-card a { font-weight: 600; overflow-wrap: anywhere; }
.corp-steps { counter-reset: s; }
.corp-steps .corp-card { counter-increment: s; }
.corp-steps .corp-card::before { content: counter(s); display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; background: #e9f4ec; color: var(--c-primary); font-weight: 700; }
.corp-facts { display: grid; margin: 0; border: 1px solid var(--c-border); border-radius: 12px; background: var(--c-surface); }
.corp-facts div { display: grid; grid-template-columns: minmax(110px, 200px) 1fr; gap: 12px; padding: 10px 16px; }
.corp-facts div + div { border-top: 1px solid var(--c-border); }
.corp-facts dt { color: var(--c-text-muted); }
.corp-facts dd { margin: 0; font-weight: 600; overflow-wrap: anywhere; }
.corp-split { display: grid; gap: var(--s-6); align-items: start; }
.corp-split > * { min-width: 0; }
.corp-cta { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; padding: 20px; border-radius: 12px; background: #e9f4ec; }
.corp-cta p { margin: 0; font-weight: 600; }
.corp-toc { display: grid; gap: 2px; padding: 12px; border: 1px solid var(--c-border); border-radius: 12px; background: var(--c-surface); }
.corp-toc b { padding: 4px 8px; }
.corp-toc a { padding: 5px 8px; border-radius: 6px; color: var(--c-text-muted); text-decoration: none; }
.corp-toc a:hover { background: var(--c-surface-2); color: var(--c-text); }
.corp-legal { display: grid; gap: 10px; min-width: 0; }
.corp-legal h2 { margin-top: var(--s-5); scroll-margin-top: 80px; }
.corp-legal ul { margin: 0; padding-inline-start: var(--s-5); }
@media (min-width: 900px) {
  .corp-split { grid-template-columns: minmax(0, 1fr) 320px; }
  .corp-split--toc { grid-template-columns: 260px minmax(0, 1fr); }
  .corp-split aside { position: sticky; top: 80px; }
}

/* s-field.css */
/* Arazi ayrıntısı ve toprak analizi ekranları */

/* Harita başlığı */
.f-map { position: relative; }
.f-map .map { isolation: isolate; border: 0; }
.f-map__btn { position: absolute; top: var(--s-3); right: var(--s-3); background: var(--c-surface); }
.f-map__place { position: absolute; left: var(--s-3); bottom: calc(var(--s-3) + 1.025rem); display: inline-flex; align-items: center; gap: var(--s-2); max-width: calc(100% - var(--s-5)); padding: 0.4em 0.9em; border-radius: 839px; background: rgb(16 33 26 / 0.8); color: #fff; font-size: var(--fs-sm); font-weight: 600; }

.f-map--full { position: fixed; inset: 0; z-index: 70; background: var(--c-surface); }
.f-map--full .map { height: 100%; min-height: 0; border-radius: 0; }

/* Alan + konum kartı */
.f-facts { display: grid; grid-template-columns: minmax(0, auto) minmax(6.56rem, 1fr); align-items: center; gap: var(--s-2); padding: var(--s-3); }
.f-facts .stat { gap: var(--s-2); }
.f-facts__place { display: flex; align-items: center; gap: var(--s-1); min-width: 0; min-height: var(--tap); padding-inline-start: var(--s-2); border-inline-start: 1px solid var(--c-border); color: var(--c-text); text-decoration: none; }
.f-facts__place > .ico:first-child { width: 1.148rem; height: 1.148rem; color: var(--c-primary); }
.f-facts__body { flex: 1; min-width: 0; display: grid; }
.f-facts__body b { font-weight: 700; overflow-wrap: break-word; }

/* Sıkı kartlar: 315px'te iki sütuna sığar */
.f-tile { padding: var(--s-3); min-width: 0; }
.f-tile.stat, .f-tile .stat { gap: var(--s-2); }
.f-tile .ibox { width: 2.05rem; height: 2.05rem; border-radius: 10px; }
.f-tile .stat__body { flex: 1; }
.f-tile .stat__value { font-size: 1.107rem; overflow-wrap: break-word; }
.f-tile.stat > .ico:last-child, .f-tile .stat > .ico:last-child { width: 0.82rem; height: 0.82rem; color: var(--c-text-muted); }
.f-tile__note { display: block; margin-top: var(--s-2); color: var(--c-text-muted); font-size: var(--fs-sm); }

/* Fotoğraf şeridi */
.f-photos { display: grid; gap: var(--s-2); grid-template-columns: repeat(4, minmax(0, 1fr)); }
.f-photos .thumb { display: block; width: 100%; height: auto; aspect-ratio: 1; }
@media (min-width: 1024px) { .f-photos .thumb { aspect-ratio: 16 / 10; } }

/* Analiz başlığı: sahne açık renkli kalır, metin her temada koyu */
.f-scene { display: grid; gap: var(--s-2); }
.f-scene__top { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--s-2); }
.f-scene h2 { display: flex; align-items: center; gap: var(--s-2); }
.f-scene p { margin: 0; }
.f-scene__date { display: flex; align-items: center; gap: var(--s-2); padding-top: var(--s-4); }
.f-scene__date span { display: grid; line-height: 1.25; }
.f-scene__date b { font-weight: 700; }

.sec-head a.f-more { flex: none; min-height: 37px; padding-inline: var(--s-3); border-radius: 839px; background: var(--t-green); color: var(--c-primary); font-weight: 600; }

/* Uygun ürün kartı */
.f-crop { display: grid; gap: var(--s-2); padding: var(--s-2); min-width: 0; }
.f-crop .thumb { display: block; width: 100%; height: 3.69rem; }
.f-crop__name { display: flex; align-items: center; gap: var(--s-1); min-width: 0; font-weight: 700; }
.f-crop__name .ico { color: var(--c-primary); }
.f-crop .pill { justify-self: start; }

/* Yuvarlak, ortalı eylem şeridi */
.cta-bar.f-cta { justify-content: center; min-height: 2.87rem; border-radius: 839px; font-size: 0.861rem; }
.cta-bar.f-cta > .ico:first-child { width: 1.312rem; height: 1.312rem; }

/* s-font.css */
/* Inter: uygulama ve ana sayfa paketlerinde ortak */
@font-face { font-family: "Inter Var"; font-style: normal; font-weight: 100 900; font-display: swap; src: url(/fonts/inter-latin.woff2) format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+20BA, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Inter Var"; font-style: normal; font-weight: 100 900; font-display: swap; src: url(/fonts/inter-latin-ext.woff2) format("woff2");
  unicode-range: U+0100-0130, U+0132-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+1E00-1E9F, U+20A0-20AB, U+20AD-20C0; }
:root { --font: "Inter Var", Inter, system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans", sans-serif; }

/* s-life.css */
/* Üretim masası: bugün, görev, lot, para. Ölçüler s-tiny standardında (14px gövde, 36px kontrol). */
.lf-head h1 { font-size: 17px; margin: 0; }
.lf-head h1 small { font-size: 12.6px; font-weight: 400; color: var(--c-text-muted); }
.lf-head p { margin: 3px 0 0; font-size: 12.6px; color: var(--c-text-muted); }
.lf-empty { font-size: 14px; margin: 0; }
.lf-hint { font-size: 12.6px; margin: 6px 0; padding: 6px 8px; border-radius: 9px; background: var(--c-warning-bg); color: var(--c-warning); }
.lf-top { position: relative; display: grid; gap: 1px; padding: 8px 32px 8px 11px; border-radius: 12px; background: #174d3a; color: #fff; text-decoration: none; }
.lf-top small { font-size: 11.5px; opacity: .85; }
.lf-top b { font-size: 15.4px; line-height: 1.25; overflow-wrap: anywhere; }
.lf-top span { font-size: 12.6px; opacity: .9; }
.lf-top svg { position: absolute; right: 8px; top: 50%; width: 18px; height: 18px; transform: translateY(-50%); }
.lf-list, .lf-rows { list-style: none; margin: 0; padding: 0; display: grid; gap: 3px; }
.lf-list a { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 1px 8px; align-items: center; padding: 6px 8px; border: 1px solid var(--c-border); border-radius: 9px; color: inherit; text-decoration: none; background: var(--c-surface); }
.lf-t { display: grid; min-width: 0; }
.lf-t b { font-size: 14px; overflow-wrap: anywhere; }
.lf-t small { font-size: 11.5px; color: var(--c-text-muted); overflow-wrap: anywhere; }
.lf-n { font-size: 12.6px; text-align: right; overflow-wrap: anywhere; }
.lf-list meter { grid-column: 1 / -1; width: 100%; height: 4px; }
.lf-rows a, .lf-row, .lf-sale summary { display: flex; gap: 8px; justify-content: space-between; align-items: center; min-height: 36px; padding: 3px 8px; font-size: 14px; color: inherit; text-decoration: none; border-bottom: 1px solid var(--c-border); }
.lf-rows span, .lf-rows small { min-width: 0; overflow-wrap: anywhere; }
.lf-rows small { font-size: 11.5px; color: var(--c-text-muted); flex: none; max-width: 45%; text-align: right; }
.lf-row--col { flex-direction: column; align-items: flex-start; }
.lf-row--col small { max-width: none; text-align: left; flex: 1; }
.lf-rows--risk a { color: var(--c-error); }
.lf-sale summary { cursor: pointer; list-style: none; }
.lf-sale form, .lf-form, .lf-defer form { display: grid; gap: 6px; padding: 6px 8px; }
.lf-defer { font-size: 14px; }
.lf-defer summary { cursor: pointer; min-height: 36px; display: flex; align-items: center; color: var(--c-text-muted); }
.lf-form .btn, .lf-defer form .btn, .lf-sale form .btn { justify-self: start; }
.lf-biz { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; }
.lf-biz a { display: grid; gap: 1px; padding: 6px 8px; border: 1px solid var(--c-border); border-radius: 9px; color: inherit; text-decoration: none; min-width: 0; background: var(--c-surface); }
.lf-biz small, .lf-biz span { font-size: 11.5px; color: var(--c-text-muted); }
.lf-biz b { font-size: 14px; overflow-wrap: anywhere; }
.lf-table { width: 100%; border-collapse: collapse; font-size: 12.6px; table-layout: fixed; }
.lf-table th, .lf-table td { padding: 3px 6px; border-bottom: 1px solid var(--c-border); text-align: left; vertical-align: top; overflow-wrap: anywhere; }
.lf-table thead th { font-weight: 600; color: var(--c-text-muted); }
.lf-d { display: block; font-size: 11px; }
.lf-d--ok { color: var(--c-success); }
.lf-d--bad { color: var(--c-error); }

/* s-m123.css */
/* Telefon: Kuzey Tarla, Toprak Analizi, Ne Yetiştirebilirim (docs/design/mockups 1, 2, 3). Yalnız 644.5px altı. */
@media (max-width: 767px) {
  .m-hide { display: none !important; }
  .m1, .m2, .m3 { margin-inline: -6px; }
  #toprak, #gecmis, #notlar, #fotograflar { scroll-margin-top: 60vh; } /* sekme çubuğu ekranda kalır */
  .f-ic { flex: none; object-fit: contain; }

  /* Ortak baş */
  .m1 .screen-head, .m2 .screen-head, .m3 .screen-head { gap: 6px; min-height: 35.5px; padding-inline: 3px; }
  .app-main .m1 .screen-head h1, .app-main .m2 .screen-head h1, .app-main .m3 .screen-head h1 { margin-inline-start: 8.5px; font-size: 16px; font-weight: 800; letter-spacing: -0.025em; line-height: 1.2; color: #122019; }
  .m1 .screen-head .icon-btn, .m2 .screen-head .icon-btn, .m3 .screen-head .icon-btn { width: 35.5px; height: 35.5px; background: #eef2f0; color: #17231d; }
  .m2 .screen-head .icon-btn, .m3 .screen-head .icon-btn { background: #ecf4ee; }
  .m1 .screen-head .icon-btn .ico, .m2 .screen-head .icon-btn .ico, .m3 .screen-head .icon-btn .ico { width: 18.5px; height: 18.5px; }

  /* Alt menü (⋯, Arazimi Değiştir, bilgi) */
  .m-sheet > summary { list-style: none; cursor: pointer; }
  .m-sheet > summary::-webkit-details-marker { display: none; }
  .m-sheet[open] > summary::before { content: ""; position: fixed; inset: 0; z-index: 79; background: rgb(10 24 18 / 0.45); }
  .m-sheet__panel { position: fixed; inset-inline: 0; bottom: 0; z-index: 80; max-height: 76vh; overflow: auto; padding: 13.5px 13.5px calc(15px + env(safe-area-inset-bottom)); border-radius: 18.5px 18.5px 0 0; background: #fff; color: #15251e; box-shadow: 0 -6px 20px rgb(16 40 26 / 0.18); font-size: 13px; font-weight: 500; letter-spacing: 0; }
  .m-sheet__panel h2 { margin: 0 0 6.5px; font-size: 15.5px; font-weight: 800; letter-spacing: -0.02em; }
  .m-sheet__panel p { margin: 0; color: #4f5c55; font-size: 12.5px; line-height: 1.45; font-weight: 400; }
  .m-sheet__row { display: flex; align-items: center; gap: 10px; width: 100%; min-height: 42px; padding: 0 2px; border: 0; border-bottom: 1px solid #eef1ef; background: none; color: #15251e; font: inherit; text-align: start; text-decoration: none; cursor: pointer; }
  .m-sheet__row .ico { flex: none; width: 17.5px; height: 17.5px; color: #14713a; }
  .m-sheet__row[aria-current] { color: #14713a; font-weight: 700; }
  .m-sheet__row--danger, .m-sheet__row--danger .ico { color: #b3261e; }
  .m-sheet--tip > summary { display: grid; place-items: center; width: 15px; height: 15px; color: #66716b; }
  .m-sheet--tip > summary .ico { width: 13.5px; height: 13.5px; }

  /* 1: Kuzey Tarla */
  .m1 > * + * { margin-top: 8.5px !important; }
  .m1 .f-map .map { height: 166.5px; min-height: 0; border-radius: 12.5px; }
  .m1 .f-map__btn { top: 9px; right: 7.5px; width: 30px; height: 31px; border-radius: 9px; background: rgb(255 255 255 / 0.92); color: #1b2822; z-index: 500; }
  .m1 .f-map__btn .ico { width: 17px; height: 17px; }
  .m1 .f-map__place { left: 9px; bottom: 6.5px; z-index: 500; gap: 6px; height: 27.5px; padding: 0 11px 0 7.5px; border-radius: 11px; background: rgb(30 36 33 / 0.86); font-size: 11px; font-weight: 500; letter-spacing: -0.01em; }
  .m1 .f-map__place .ico { width: 14.5px; height: 14.5px; }
  .m1 .f-map .leaflet-control-attribution { font-size: 11px; line-height: 1.2; background: rgb(255 255 255 / 0.55); }
  .m1 .f-map--full .map { height: 100%; border-radius: 0; }
  .m1 .f-map--full .f-map__btn { top: calc(env(safe-area-inset-top) + 10px); }

  .m1 .f-facts { grid-template-columns: 118px minmax(0, 1fr); gap: 0; height: 52px; margin-inline: 1px; padding: 0 7.5px 0 11px; border-radius: 12.5px; border-color: #e9efea; background: #f3f8f4; }
  .m1 .f-facts .stat { gap: 7px; }
  .m1 .f-facts .stat__label { font-size: 11px; color: #4f5c55; line-height: 1.2; }
  .m1 .f-facts .stat__value { font-size: 15px; font-weight: 800; color: #111d18; line-height: 1.1; }
  .m1 .f-facts .stat__value small { margin-inline-start: 2px; font-size: 12.5px; font-weight: 500; color: #1d2a24; letter-spacing: -0.01em; }
  .m1 .f-facts .stat__note { display: none; }
  .m1 .f-facts__place { gap: 6px; min-width: 0; min-height: 40px; padding-inline-start: 9px; border-inline-start-color: #dfe6e1; }
  .m1 .f-facts__place > img { flex: none; }
  .m1 .f-facts__body { gap: 2px; min-width: 0; }
  .m1 .f-facts__body b { font-size: 11px; font-weight: 600; letter-spacing: -0.01em; white-space: nowrap; }
  .m1 .f-facts__body .stat__note { display: block; overflow: hidden; text-overflow: ellipsis; font-size: 11px; color: #5f6b65; white-space: nowrap; letter-spacing: -0.01em; }
  .m1 .f-facts__place > .ico:last-child { flex: none; width: 12.5px; height: 12.5px; color: #2b3731; }

  .m1 .seg { display: grid; grid-template-columns: 103fr 88fr 94fr 89fr; gap: 0; height: 29.5px; margin: 11px 1px 0 !important; padding: 0; border-radius: 12.5px; background: #f3f5f4; overflow: visible; }
  .m1 .seg a { position: relative; min-height: 0; padding: 0; border-radius: 12.5px; font-size: 11.5px; font-weight: 500; color: #4f5a55; letter-spacing: -0.01em; }
  .m1 .seg a[aria-current] { color: #fff; font-weight: 700; background: linear-gradient(90deg, #12703a, #1b8347); }
  .m1 .seg a + a:not([aria-current])::before { content: ""; position: absolute; left: 0; top: 6.5px; bottom: 6.5px; width: 1px; background: #dde2df; }
  .m1 .seg a[aria-current] + a::before, .m1 .seg a:nth-child(2)::before { display: none; }

  .m1 .duo { gap: 8.5px; margin: 11px 1px 0 !important; }
  .m1 .f-tile { padding: 6px 7px; border-radius: 10px; }
  .m1 .f-tile.t-amber { background: #fdf6ed; border-color: #f9eee0; }
  .m1 .f-tile.t-blue { background: #eef5fc; border-color: #e2eefa; }
  .m1 .f-tile .stat { align-items: flex-start; gap: 7.5px; }
  .m1 .f-tile .stat__body { min-width: 0; padding-top: 2px; gap: 1px; }
  .m1 .f-tile .stat__label { font-size: 11px; color: #39453f; letter-spacing: -0.01em; white-space: nowrap; }
  .m1 .f-tile .stat__value { font-size: 13px; font-weight: 700; letter-spacing: -0.02em; color: #111d18; }
  .m1 .f-tile .stat > .ico:last-child { width: 12px; height: 12px; margin: 11px 0 0 -6px; color: #2b3731; }
  .m1 .f-tile__note { margin: 3px 0 0; font-size: 11px; line-height: 1.25; letter-spacing: -0.01em; color: #5d6964; }

  .m1 .sec-head { min-height: 18.5px; padding-inline: 3px; }
  .m1 .sec-head h2 { font-size: 15px; font-weight: 800; letter-spacing: -0.02em; }
  .m1 .sec-head a { gap: 6.5px; font-size: 11.5px; color: #5f6a65; }
  .m1 .sec-head a .ico { width: 11px; height: 11px; }
  .m1 section.stack { margin-top: 10px !important; }
  .m1 section.stack > * + * { margin-top: 8.5px; }
  .m1 .f-photos { grid-template-columns: 166fr 158fr 158fr 149fr; gap: 5px; padding-inline: 2px; }
  .m1 .f-photos .thumb { height: 75px; aspect-ratio: auto; border-radius: 10px; }
  .f-gallery { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6.5px; }
  .f-gallery .thumb { display: block; width: 100%; height: auto; aspect-ratio: 1; border-radius: 10px; }

  .m1 .cta-bar { gap: 12.5px; min-height: 0; height: 53px; margin: 9px 2px 0 !important; padding: 0 10px 0 17.5px; border-radius: 13.5px; background: linear-gradient(95deg, #17793f, #2a8d50 55%, #1a7a42); }
  .m1 .cta-bar > img { flex: none; }
  .m1 .cta-bar__title { font-size: 13px; font-weight: 700; letter-spacing: -0.015em; }
  .m1 .cta-bar__sub { font-size: 11px; opacity: 0.95; letter-spacing: -0.01em; }
  .m1 .cta-bar__go { width: 32px; height: 32px; background: rgb(8 60 34 / 0.45); }
  .m1 .cta-bar__go .ico { width: 15px; height: 15px; }

  /* 2: Toprak Analizi */
  .m2 > * + * { margin-top: 7.5px !important; }
  .m2 .scene-head { position: relative; display: block; height: 111px; margin-inline: 2px; padding: 0; border-radius: 12.5px; background: #dceaf4 url(/img/m/toprak-sahne.webp) center / 100% 100% no-repeat; }
  .m2 .f-scene__top { display: block; }
  .m2 .f-scene h2 { position: absolute; top: 15px; left: 13.5px; gap: 6.5px; font-size: 15px; font-weight: 800; letter-spacing: -0.02em; line-height: 1.2; color: #111d18; }
  .m2 .f-scene h2 img { flex: none; }
  .m2 .f-scene .pill { position: absolute; top: 11px; right: 6.5px; gap: 6.5px; height: 25px; padding: 0 8.5px 0 7.5px; font-size: 11px; font-weight: 600; letter-spacing: -0.01em; background: #ecf7e8; color: #15703a; }
  .m2 .f-scene .pill--warn { background: #fdf0db; color: #9a5b0c; }
  .m2 .f-scene .pill img { flex: none; }
  .m2 .f-scene > p:not(.f-scene__date) { position: absolute; top: 38px; left: 14.5px; font-size: 12px; color: #47544e; letter-spacing: -0.005em; }
  .m2 .f-scene__date { position: absolute; left: 14.5px; bottom: 17.5px; gap: 7.5px; padding: 0; font-size: 11px; color: #47544e; }
  .m2 .f-scene__date .ico { width: 17px; height: 17px; color: #17231d; }
  .m2 .f-scene__date span { line-height: 1.2; }
  .m2 .f-scene__date b { font-size: 11.5px; font-weight: 600; color: #15251e; }

  .m2 .sec-head { min-height: 25px; padding-inline: 2px; }
  .m2 .sec-head h2 { font-size: 13.5px; font-weight: 800; letter-spacing: -0.025em; color: #111d18; white-space: nowrap; }
  .m2 .sec-head a.f-more { gap: 4px; min-height: 25px; height: 25px; padding-inline: 7.5px; border-radius: 12.5px; background: #eef6ef; color: #15251e; font-size: 11px; font-weight: 500; letter-spacing: -0.01em; }
  .m2 .sec-head a.f-more .ico { width: 11px; height: 11px; }
  .m2 .sec-head a.f-more .ico:first-child { width: 12.5px; height: 12.5px; color: #14713a; }
  .m2 section.stack > * + * { margin-top: 6px; }
  .m2 .duo { gap: 6.5px 8.5px; grid-template-columns: repeat(2, minmax(0, 1fr)); margin-inline: 2px; }
  .m2 .f-tile { height: 72px; padding: 0 7.5px 0 9px; border-radius: 11px; gap: 7.5px; }
  .m2 .f-tile.t-green { background: #f1f8f2; border-color: #e3efe5; }
  .m2 .f-tile.t-amber { background: #fdf5ea; border-color: #f8eadb; }
  .m2 .f-tile.t-blue { background: #f0f6fc; border-color: #e2edf8; }
  .m2 .f-tile .stat__body { gap: 0; }
  .m2 .f-tile .stat__label { font-size: 11px; color: #26322c; letter-spacing: -0.01em; white-space: nowrap; }
  .m2 .f-tile .stat__value { font-size: 16.5px; font-weight: 800; letter-spacing: -0.02em; line-height: 1.2; white-space: nowrap; color: #111d18; }
  .m2 .f-tile .stat__value small { font-size: 13.5px; font-weight: 700; color: #111d18; letter-spacing: -0.02em; }
  .m2 .f-tile .stat__note { font-size: 11px; color: #5d6964; letter-spacing: -0.01em; }
  .m2 .f-tile.stat > .ico:last-child { width: 11px; height: 11px; align-self: flex-start; margin: 23.5px 0 0 -8px; color: #2b3731; }

  .m2 .trio { grid-template-columns: 125fr 126fr 105fr; gap: 6px; margin-inline: 2px; }
  .m2 .f-crop { position: relative; display: block; height: 88px; padding: 6px 6px; border-radius: 10px; background: #fdf8f0; border-color: #f8eee2; }
  .m2 .f-crop .thumb { width: 65.5px; height: 33.5px; border-radius: 6.5px; }
  .m2 .f-crop:nth-child(3) .thumb { width: 54px; }
  .m2 .f-crop > .ico { position: absolute; top: 18.5px; right: 6.5px; width: 11px; height: 11px; color: #6d675d; }
  .m2 .f-crop__name { gap: 3.5px; margin-top: 3px; font-size: 11px; letter-spacing: -0.01em; color: #15251e; }
  .m2 .f-crop .pill { display: flex; gap: 6.5px; height: 21px; margin-top: 3.5px; padding: 0 5px; border-radius: 6.5px; font-size: 11px; font-weight: 500; letter-spacing: -0.01em; background: #e9f4ea; color: #1a3d29; }
  .m2 .f-crop .pill--warn { background: #fdf0db; color: #8a540f; }
  .m2 .f-crop .pill img { flex: none; }

  .m2 .assist { position: relative; display: block; height: 81.5px; min-height: 0; margin-inline: 2px; padding: 16px 126px 0 15px; border-radius: 13.5px; background: linear-gradient(100deg, #29803f, #348d4a 55%, #2f8548); }
  .m2 .assist::after { content: ""; position: absolute; right: 0; bottom: 0; width: 134.5px; height: 76.5px; background: url(/img/m/toprak-robot.webp) right bottom / 100% 100% no-repeat; -webkit-mask-image: linear-gradient(90deg, transparent, #000 12%); mask-image: linear-gradient(90deg, transparent, #000 12%); }
  .m2 .assist__body { gap: 2px; position: relative; z-index: 1; white-space: normal; }
  .m2 .assist__title { font-size: 15px; font-weight: 800; letter-spacing: -0.02em; line-height: 1.2; }
  .m2 .assist__body > span:last-child { font-size: 11px; line-height: 1.3; letter-spacing: -0.01em; }
  .m2 .assist__go { position: absolute; z-index: 2; top: 30px; left: 268px; display: grid; place-items: center; width: 26px; height: 26px; border-radius: 50%; background: #eef6ef; color: #14713a; }
  .m2 .assist__go .ico { width: 12.5px; height: 12.5px; }
  .m2 .cta-bar.f-cta { gap: 12px; height: 34.5px; min-height: 0; margin-inline: 2px; margin-top: 6px !important; padding: 0; border-radius: 17.5px; background: linear-gradient(90deg, #17733c, #1f8447); font-size: 13px; }
  .m2 .cta-bar.f-cta > .ico { width: 16px; height: 16px; }
  .m2 .cta-bar.f-cta > .ico:first-child { width: 17.5px; height: 17.5px; }
  .m2 .cta-bar.f-cta .cta-bar__title { font-size: 13px; font-weight: 600; }
  .m2 tr:target { outline: 2px solid #1f8447; }

  /* 3: Ne Yetiştirebilirim */
  .m3 > * + * { margin-top: 7.5px !important; }
  .m3 .pl-land { position: relative; display: block; padding: 6px; border-radius: 10px; border-color: #eceeec; box-shadow: none; }
  .m3 .pl-land__top { position: relative; display: block; min-height: 56px; }
  .m3 .pl-land__img { position: absolute; top: 0; left: 0; width: 56px; height: 56px; border-radius: 7.5px; object-fit: cover; }
  .m3 .pl-land__body { margin-inline-start: 64px; gap: 0; }
  .m3 .pl-land__place { gap: 4px; font-size: 11px; color: #1d2a24; letter-spacing: -0.01em; }
  .m3 .pl-land__place img { flex: none; }
  .m3 .pl-land__body h2 { margin: 3px 0 0; font-size: 13.5px; font-weight: 800; letter-spacing: -0.02em; line-height: 1.25; color: #111d18; }
  .m3 .pl-land__body p.muted { margin-top: 3px; font-size: 11px; color: #66716b; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .m3 .pl-land__body p.muted a { color: inherit; text-decoration: none; }
  .m3 .pl-land__swap { position: absolute; top: 0; right: 0; }
  .m3 .pl-land__swap > summary { gap: 5px; min-height: 0; height: 27px; padding: 0 6.5px; border: 0; border-radius: 11px; background: #e8f4ec; color: #14713a; font-size: 11px; font-weight: 600; letter-spacing: -0.02em; }
  .m3 .pl-land__swap > summary .ico { width: 12.5px; height: 12.5px; }
  .m3 .pl-land__minis { display: grid; grid-template-columns: minmax(0, 1.9fr) minmax(0, 0.5fr) minmax(0, 1.25fr) minmax(0, 0.8fr); gap: 3px; margin-top: 6px; }
  .m3 .pl-land__minis .mini { display: block; padding: 3px 4px; border-radius: 6px; background: #f5f6f5; }
  .m3 .pl-land__minis .mini small { display: block; overflow: hidden; text-overflow: ellipsis; font-size: 11px; line-height: 1.2; letter-spacing: -0.02em; color: #55625c; white-space: nowrap; }
  .m3 .pl-land__minis .mini b { display: flex; align-items: center; gap: 2px; margin-top: 2px; font-size: 11px; font-weight: 700; letter-spacing: -0.02em; line-height: 1.2; color: #15251e; white-space: nowrap; }
  .m3 .mini--soil { position: relative; flex: 1 1 auto !important; display: flex !important; align-items: center; gap: 3.5px; padding: 0 3px 0 4px !important; min-width: 0; }
  .m3 .mini--soil > img { flex: none; width: 22px; height: auto; }
  .m3 .mini--soil > span { min-width: 0; }
  .m3 .mini--soil .m-sheet--tip { margin-inline-start: auto; }
  .m3 .mini--soil .m-sheet--tip > summary { width: 12px; height: 12px; }
  .m3 .mini--soil .m-sheet--tip > summary .ico { width: 10px; height: 10px; }

  .m3 section.stack { margin-top: 12.5px !important; }
  .m3 section.stack > * + * { margin-top: 3px; }
  .m3 .sec-head { min-height: 18.5px; padding-inline: 2px; }
  .m3 .sec-head h2 { font-size: 14.5px; font-weight: 800; letter-spacing: -0.02em; color: #111d18; white-space: nowrap; }
  .m3 .screen-sub { margin: 3px 0 0; padding-inline: 2px; font-size: 11px; line-height: 1.3; letter-spacing: -0.005em; color: #66716b; }
  .m3 .pl-two { margin-top: 6.5px !important; gap: 4px; }
  .m3 .pl-crop-link { padding: 4px; border-radius: 10px; border-color: #eceeec; box-shadow: none; }
  .m3 .pl-crop { grid-template-columns: 64px minmax(0, 1fr); gap: 4px 8.5px; }
  .m3 .pl-crop__pic { grid-row: 1 / span 2; height: 64px; }
  .m3 .pl-crop__pic .thumb { width: 64px; height: 64px; border-radius: 7.5px; }
  .m3 .pl-crop__rank { top: 2px; left: 2px; width: 18.5px; height: 18.5px; border: 2px solid #fff; background: #17733c; font-size: 11px; font-weight: 600; }
  .m3 .pl-crop__rank--a { background: #d68b2f; }
  .m3 .pl-crop__rank--w { background: #fff; color: #15251e; border-color: #e5e8e6; }
  .m3 .pl-crop__main { position: relative; min-width: 0; padding-top: 2px; }
  .m3 .pl-crop__top { display: block; min-height: 16px; padding: 0 !important; }
  .m3 .pl-crop__top h3 { font-size: 13px; font-weight: 700; letter-spacing: -0.02em; line-height: 1.25; color: #111d18; }
  .m3 .pl-crop__top .pill { position: absolute; top: 2px; right: 18.5px; gap: 5px; height: 22px; padding: 0 7.5px 0 6px; font-size: 11px; font-weight: 600; letter-spacing: -0.02em; }
  .m3 .pl-crop__top .pill--ok { background: #e8f4ec; color: #14703a; }
  .m3 .pl-crop__top .pill--warn { background: #fdf0dd; color: #b5620f; }
  .m3 .pl-crop__top > .ico { top: 6.5px; right: 2px; width: 12px; height: 12px; position: absolute; color: #2b3731; }
  .m3 .pl-crop__why { -webkit-line-clamp: 2; margin: 1px 0 0; font-size: 11px; line-height: 1.22; letter-spacing: -0.01em; color: #66716b; }
  .m3 .pl-crop__minis--o { grid-column: 2; display: flex; gap: 4px; }
  .m3 .pl-crop__minis--o .mini { flex: 1 1 auto; display: flex; align-items: center; gap: 5px; height: 28.5px; padding: 0 4px; border-radius: 6px; background: #f6f7f6; white-space: nowrap; }
  .m3 .pl-crop__minis--o .mini img { flex: none; }
  .m3 .pl-crop__minis--o .mini span { display: block; min-width: 0; }
  .m3 .pl-crop__minis--o .mini small { display: block; font-size: 11px; line-height: 1.2; letter-spacing: -0.01em; color: #6a7570; }
  .m3 .pl-crop__minis--o .mini b { display: block; font-size: 11px; font-weight: 600; line-height: 1.25; letter-spacing: -0.02em; color: #15251e; }
  .m3 .pl-crop__minis--o .mini b.is-g { color: #14703a; }
  .m3 .pl-crop__minis--o .mini b.is-a { color: #c26a10; }

  .m3 .pl-cmp { margin-top: 10px !important; padding: 7.5px 6.5px 6px; border-radius: 10px; background: linear-gradient(180deg, #f1f8f2, #f7fbf8); border-color: #e4efe7; }
  .m3 .pl-cmp__top { display: flex; align-items: center; justify-content: space-between; gap: 6.5px; }
  .m3 .pl-cmp .stat { flex: 1 1 auto; gap: 7.5px; }
  .m3 .pl-cmp .stat__body { gap: 1px; }
  .m3 .pl-cmp strong { font-size: 11px; font-weight: 700; letter-spacing: -0.02em; color: #15251e; }
  .m3 .pl-cmp .stat__note { font-size: 11px; line-height: 1.2; letter-spacing: -0.02em; color: #55615b; }
  .m3 .pl-picks { flex: none; gap: 6px; padding: 0; overflow: visible; }
  .m3 .pl-pick { width: 29.5px; }
  .m3 .pl-pick .thumb { width: 29.5px; height: 29.5px; border-radius: 6px; }
  .m3 .pl-pick:has(input:checked) .thumb { outline: 0; }
  .m3 .pl-pick input { appearance: none; -webkit-appearance: none; position: absolute; z-index: 1; top: -4px; right: -5px; width: 12.5px; height: 12.5px; margin: 0; border: 1.5px solid #8d9792; border-radius: 50%; background: #fff; cursor: pointer; }
  .m3 .pl-pick input:checked { border-color: #fff; background: #17733c url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 8.5l2.6 2.6L12 5.6' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 9px no-repeat; }
  .m3 .pl-pick input:focus-visible { outline: 2px solid #14713a; outline-offset: 1px; }
  .m3 .pl-cmp .cta-bar { gap: 7.5px; height: 29.5px; min-height: 0; margin-top: 6.5px; padding: 0 12px 0 92.5px; border-radius: 9px; background: linear-gradient(90deg, #17733c, #1f8447); }
  .m3 .pl-cmp .cta-bar > img { flex: none; margin-inline-start: 0; }
  .m3 .pl-cmp .cta-bar__title { font-size: 11px; font-weight: 600; letter-spacing: -0.01em; }
  .m3 .pl-cmp .cta-bar__go { width: 13.5px; height: 13.5px; background: none; }
  .m3 .pl-cmp .cta-bar__go .ico { width: 12px; height: 12px; }
}

/* s-m456.css */
/* Üretim Planı, İhtiyaçlarım, Tedarikçi Fiyatları (mockup 4, 5, 6). Dosya sıralaması s-market/s-plan'dan önce: geçersiz kılmalar .app-main ile güçlendirildi. */
[data-cat][hidden] { display: none; }

/* Takvim Görünümü (mockup yok; masaüstü ve telefon) */
.cal { display: grid; gap: var(--s-2); padding: var(--s-3); }
.cal__head { display: flex; align-items: center; justify-content: space-between; }
.cal__head h2 { margin: 0; font-size: 1.15rem; }
.cal__grid { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 3.5px; margin: 0; padding: 0; list-style: none; text-align: center; }
.cal__dow { color: var(--c-text-muted); font-size: var(--fs-sm); }
.cal__day a, .cal__day span { display: grid; place-items: center; aspect-ratio: 1; border-radius: 10px; color: var(--c-text); text-decoration: none; }
.cal__day.has-event a { background: var(--t-green); color: var(--c-primary); font-weight: 700; }
.cal__day.is-today a, .cal__day.is-today span { outline: 2px solid var(--c-primary); outline-offset: -2px; }
.rows > li[id] { scroll-margin-top: 1rem; }

@media (min-width: 768px) {
  .m4-tl .rowlink { display: flex; }
  .m4-si { flex: none; border-radius: 10px; }
  .m4-calbtn { min-height: 37px; }
}

@media (max-width: 767px) {
  /* Alt sayfa: ⋯ ve Talep Miktarı. details açılınca içerik alttan çıkar; zemine dokunmak kapatır. */
  .app-main .pl-need__more[open] > summary::before, .m-sheet[open] > summary::before { content: ""; position: fixed; inset: 0; z-index: 60; background: rgb(12 25 18 / 0.42); }
  .app-main .pl-need__more[open] > div, .m-sheet[open] > form { position: fixed; inset: auto 0 0; z-index: 61; max-height: 78vh; overflow-y: auto; padding: 15px 13.5px calc(15px + env(safe-area-inset-bottom)); border-radius: 18.5px 18.5px 0 0; background: #fff; color: #15251e; box-shadow: 0 -8px 25px rgb(17 40 28 / 0.2); }

  /* ---- Üretim Planı (mockup 4) ---- */
  .app-main > .m4 { margin-inline: -2px; }
  .app-main > .stack.m4 > * + * { margin-top: 6.5px; }
  .m4 .screen-head { gap: 11px; height: 32px; }
  .m4 .screen-head .icon-btn { width: 32px; height: 32px; background: none; }
  .m4 .screen-head .icon-btn img { width: 32px; height: 32px; border-radius: 50%; }
  .app-main .m4 .screen-head h1 { font-size: 16.5px; font-weight: 800; letter-spacing: -0.03em; }

  .app-main .m4 .pl-hero { position: relative; display: block; height: 126px; padding: 0; overflow: hidden; border: 1px solid #e9eeea; border-radius: 14.5px; background: #fff; box-shadow: 0 1px 5px rgb(17 40 28 / 0.05); color: #111d18; }
  .app-main .m4 .pl-hero.m4-hero--wheat { background: #fff url(/img/m/plan-hero.webp) right top / 171.5px 72px no-repeat; }
  .m4 .pl-hero__crop { align-items: flex-start; gap: 9px; padding: 9px 0 0 10px; height: 72px; }
  .m4-tile { width: 48.5px; height: 48.5px; border-radius: 11px; }
  .m4 .pl-hero__label { display: block; margin-top: 3.5px; font-size: 11px; color: #6a7670; line-height: 1.2; }
  .app-main .m4 .pl-hero__name { margin: 2px 0 0; font-size: 16px; font-weight: 800; letter-spacing: -0.02em; line-height: 1.1; }
  .app-main .m4 .pl-hero__meta { position: absolute; left: 0; right: 0; bottom: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 0; height: 62px; padding: 8.5px 8.5px 3.5px 10px; border-radius: 0 15px 0 0; background: #fff; }
  .m4 .pl-hero__meta .stat { display: flex; align-items: flex-start; gap: 6.5px; min-width: 0; }
  .m4 .pl-hero__meta .stat + .stat { padding-inline-start: 11px; border-inline-start: 1px solid #dfe5e1; }
  .m4-mi { flex: none; width: 34.5px; height: 34.5px; border-radius: 8.5px; }
  .m4 .pl-hero__meta .stat__label, .m4 .pl-hero__meta .stat__note { font-size: 11px; line-height: 1.25; color: #6a7670; white-space: nowrap; }
  .m4 .pl-hero__meta strong { font-size: 13px; font-weight: 700; letter-spacing: -0.015em; line-height: 1.3; white-space: nowrap; }

  .m4 .trio { grid-template-columns: 1.03fr 1fr 1fr; gap: 6px; }
  .app-main .m4 .pl-kpi { display: grid; grid-template-columns: 33.5px minmax(0, 1fr); align-items: center; gap: 0 6px; height: 92.5px; padding: 8.5px 4px 7.5px 9px; border-radius: 12px; align-content: start; }
  .m4-ki { width: 33.5px; height: 33.5px; border-radius: 8.5px; }
  .m4 .pl-kpi .stat__label { font-size: 11px; line-height: 1.35; color: #3f4f47; overflow-wrap: normal; }
  .m4 .pl-kpi.t-amber .stat__label { color: #b0742e; }
  .app-main .m4 .pl-kpi .stat__value { grid-column: 1 / -1; margin-top: 5px; font-size: 16px; font-weight: 800; letter-spacing: -0.02em; white-space: nowrap; color: #111d18; }
  .m4 .pl-kpi .stat__value i { font-style: normal; color: #b0742e; }
  .m4 .pl-kpi .stat__note { grid-column: 1 / -1; font-size: 11px; color: #6a7670; }
  .m4 .t-green { background: #edf7ef; border-color: #deeee1; }
  .m4 .t-blue { background: #edf5fb; border-color: #dfebf6; }
  .m4 .t-amber { background: #fef4e8; border-color: #f8e8d5; }

  .m4 .sec-head { height: 25px; margin-top: 4px; padding-inline-start: 3px; }
  .m4 .sec-head h2 { font-size: 15px; font-weight: 800; letter-spacing: -0.02em; }
  .app-main .m4 a.m4-calbtn { gap: 6px; height: 24.5px; padding: 0 8.5px; border: 1px solid #dcebdf; border-radius: 8.5px; background: #eef7f0; color: #14592d; font-size: 11px; font-weight: 600; }
  .m4-calbtn .ico { width: 13.5px; height: 13.5px; color: #14713a; }
  .app-main .m4 .m4-tl { gap: 7.5px; margin-top: 6.5px; }
  .app-main > .stack.m4 > section > * + * { margin-top: 8.5px; }
  .app-main > .stack.m4 > .m4-cta + .muted { margin-top: 59px; }
  .m4-tl li { padding-inline-start: 28.5px; }
  .app-main .m4-tl li::before { left: 3px; width: 17.5px; height: 17.5px; margin-top: -10.5px; background: #a3abb2; }
  .app-main .m4-tl li.is-done::before { background: #14713a url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6.500 12.500 3.500 3.500 7.500-8'/%3E%3C/svg%3E") center / 12.5px no-repeat; }
  .app-main .m4-tl li.is-now::before { background: #14713a; box-shadow: 0 0 0 2px #fff, 0 0 0 3px #14713a; }
  .app-main .m4-tl li::after { left: 10.5px; top: calc(50% + 8.5px); bottom: calc(-50% - 2px); background: #c2c8cc; }
  .app-main .m4-tl li.is-done::after { background: #14713a; }
  .app-main .m4-tl .rowlink { gap: 9px; height: 43px; min-height: 0; padding: 0 7.5px 0 5px; border: 1px solid #e7ebe8; border-radius: 11px; background: #fff; box-shadow: 0 1px 3px rgb(17 40 28 / 0.03); color: #111d18; text-decoration: none; }
  .m4-si { flex: none; width: 35.5px; height: 35.5px; border-radius: 9px; }
  .m4-tl .rowlink__body { gap: 1px; }
  .m4-tl .rowlink__title { font-size: 11.5px; font-weight: 700; letter-spacing: -0.015em; line-height: 1.25; }
  .m4-tl .rowlink__meta { display: flex; align-items: center; gap: 6.5px; font-size: 11px; color: #6a7670; line-height: 1.25; white-space: nowrap; }
  .m4-tl .rowlink__meta .ico { width: 12px; height: 12px; }
  .app-main .m4-tl .pill { flex: none; gap: 5px; width: 78px; height: 22.5px; padding: 0 0 0 6px; font-size: 11px; font-weight: 600; letter-spacing: -0.01em; background: #eef0f1; color: #39453f; }
  .m4-tl .pill .ico { width: 12.5px; height: 12.5px; }
  .app-main .m4-tl .pill--ok { background: #e7f4ea; color: #14592d; }
  .app-main .m4-tl .pill--info { background: #e8f1fb; color: #1b5aa6; }
  .app-main .m4-tl .rowlink > .ico:last-child { width: 12px; height: 12px; flex: none; color: #6d7873; }

  .app-main .m4 .m4-cta { display: flex; align-items: center; gap: 18.5px; height: 41px; min-height: 0; margin-top: 8.5px; padding: 0 16px 0 25px; border-radius: 12px; background: linear-gradient(180deg, #2e8346, #1b6a35); color: #fff; box-shadow: none; }
  .m4-cta img { width: 19.5px; height: 22px; }
  .m4-cta .cta-bar__title { font-size: 13px; font-weight: 700; letter-spacing: -0.015em; }
  .m4-cta .cta-bar__go { background: none; color: #fff; }

  /* ---- İhtiyaçlarım (mockup 5) ---- */
  .app-main > .m5 { margin-inline: -2px; }
  .app-main > .stack.m5 > * + * { margin-top: 8.5px; }
  .app-main .m5 .page-head h1 { margin: 2px 0 0; font-size: 17.5px; font-weight: 800; letter-spacing: -0.03em; line-height: 1.15; }
  .m5-sub { margin: 5px 0 0; font-size: 13px; letter-spacing: -0.01em; color: #6a7670; }
  .app-main > .stack.m5 > .m5-chips { gap: 6.5px; margin-top: 12.5px; margin-inline: 0 -12px; padding: 0 10px 0 0; }
  .app-main .m5-chips .chip { flex: none; gap: 7.5px; min-width: 72px; min-height: 0; height: 34.5px; padding: 0 8.5px; border: 1px solid #e6ece7; border-radius: 12.5px; background: #f6f9f6; color: #15251e; font-size: 11px; font-weight: 500; justify-content: center; text-decoration: none; }
  .app-main .m5-chips .chip[aria-current] { border-color: #14713a; background: #14713a; color: #fff; font-weight: 600; }
  .m5-chips .chip .ico { width: 17px; height: 17px; fill: currentColor; }
  .m5-chips .chip img { width: 17px; height: 17.5px; }
  .app-main .m5 .rows { gap: 6.5px; }
  .app-main .m5 .pl-need { position: relative; height: 73px; padding: 0; border: 1px solid #e8ece9; border-radius: 12.5px; background: #fff; }
  .app-main .m5 .m5-c-fertilizer { background: #fcf8f2; border-color: #f4ece1; }
  .app-main .m5 .m5-c-water_energy { background: #f0f6fc; border-color: #e0eaf4; }
  .app-main .m5 .m5-c-plant_protection { background: #f5f9f5; border-color: #e5ede6; }
  .m5 .pl-need__head { align-items: center; gap: 9px; height: 100%; padding: 0 41px 0 8.5px; }
  .m5-tile { flex: none; width: 54.5px; height: 55.5px; border-radius: 11px; }
  .m5 .ibox--lg { width: 54.5px; height: 55.5px; border-radius: 11px; }
  .m5 .pl-need__body { gap: 0; }
  .m5 .pl-need__body strong { margin-top: 2px; font-size: 13px; font-weight: 650; letter-spacing: -0.025em; line-height: 1.3; white-space: nowrap; }
  .m5 .pl-need__qty { min-height: 18.5px; font-size: 14.5px; font-weight: 700; letter-spacing: -0.02em; line-height: 1.25; }
  .app-main .m5 .pl-need__qty:empty { min-height: 6px; }
  .m5 .pl-need__body .cluster { gap: 3.5px; margin-top: 2px; flex-wrap: nowrap; }
  .app-main .m5 .pl-need__body .pill { gap: 6.5px; height: 18.5px; padding: 0 10px 0 8.5px; border-radius: 7.5px; background: #e7f3e9; color: #1d6a38; font-size: 11px; font-weight: 500; }
  .m5 .pl-need__body .pill img { width: 12.5px; height: 13.5px; }
  .app-main .m5 .m5-c-fertilizer .pill { background: #fbedda; color: #7c4a14; }
  .app-main .m5 .m5-c-water_energy .pill { background: #dfeefa; color: #145d91; }
  .m5-check { flex: none; appearance: none; width: 22px; height: 22px; margin: 0; border: 2px solid #8e9894; border-radius: 5px; background: #fff; cursor: pointer; }
  .m5-check:checked { border-color: #14713a; background: #14713a url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3.200' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5.500 12.500 4.500 4.500 8.500-9.500'/%3E%3C/svg%3E") center / 17px no-repeat; }
  .m5-check:disabled { opacity: 0.35; cursor: not-allowed; }
  .m5-check:focus-visible { outline: 2px solid #14713a; outline-offset: 2px; }
  .app-main .m5 .pl-need__more > summary { top: 50%; right: 2px; margin-top: -22px; width: 33.5px; height: 37px; color: #6d7873; }
  .m5 .pl-need__more > summary .ico { width: 18.5px; height: 18.5px; transform: rotate(90deg); }
  .m5 .pl-need__more[open] { margin-top: 0; }
  .m5-edit .input { width: 101px; }

  .app-main .m5 .m5-sup { position: relative; display: block; height: 138px; margin-top: 6.5px; padding: 15px 6px 6px; border: 0; border-radius: 13.5px; background: #fdf6e7; overflow: hidden; }
  .m5-sup .stat { display: block; }
  .m5-art { position: absolute; top: 3px; right: 0; width: 139.5px; height: 87.5px; }
  .m5-sup .stat__body { position: relative; display: block; width: 178px; padding-inline-start: 9px; }
  .m5-sup h2 { margin: 0; text-wrap: wrap; font-size: 15.5px; font-weight: 800; letter-spacing: -0.025em; line-height: 1.2; }
  .m5-sup .stat__note { display: block; margin-top: 4px; font-size: 11px; line-height: 1.36; color: #6a7670; }
  .app-main .m5 .m5-cta { position: absolute; left: 6px; right: 6px; bottom: 6px; display: flex; align-items: center; justify-content: center; gap: 9px; width: auto; height: 40.5px; min-height: 0; padding: 0; border: 0; border-radius: 11px; background: linear-gradient(180deg, #27803f, #176431); color: #fff; }
  .m5-cta img { width: 25px; height: 27px; }
  .m5-cta .cta-bar__body { flex: none; }
  .m5-cta .cta-bar__title { font-size: 13.5px; font-weight: 700; letter-spacing: -0.015em; }
  .m5-cta .cta-bar__go { position: absolute; right: 12px; background: none; color: #fff; }
  .m5-sup .field__error { position: absolute; left: 15px; bottom: 48.5px; margin: 0; }
  .app-main > .stack.m5 > #m5-rest { margin-top: 59px; }

  /* ---- Tedarikçi Fiyatları (mockup 6) ---- */
  .app-main > .m6 { margin-inline: -4px; }
  .app-main > .stack.m6 > * + * { margin-top: 6px; }
  .m6 .screen-head { position: relative; justify-content: center; height: 28.5px; }
  .m6 .screen-head .icon-btn { position: absolute; left: 0; width: 28.5px; height: 28.5px; background: none; color: #15251e; }
  .m6 .screen-head .icon-btn .ico { width: 22.5px; height: 22.5px; }
  .app-main .m6 .screen-head h1 { flex: none; font-size: 15.5px; font-weight: 700; letter-spacing: -0.02em; }
  .m6-top > * + * { margin-top: 7.5px; }
  .m6-top > .m6-q + .m6-q { margin-top: 7.5px; }
  .m6-top > .m6-all { margin-top: 3.5px; }

  .m6-prod { position: relative; display: grid; grid-template-columns: 84px minmax(0, 1fr); gap: 3px 11px; height: 94px; padding: 6.5px 3.5px 0 3px; border-radius: 11px; }
  .m6-photo { grid-row: 1 / 3; width: 84px; height: 84px; border-radius: 10px; object-fit: cover; }
  .m6-prod__body { min-width: 0; }
  .m6-prod h2 { margin: 0; font-size: 13px; font-weight: 700; letter-spacing: -0.02em; line-height: 1.2; }
  .m6-spec { margin: 3px 0 0; font-size: 11px; color: #6a7670; line-height: 1.3; }
  .m6-desc { margin: 2px 0 0; font-size: 11px; letter-spacing: -0.01em; color: #6a7670; line-height: 1.3; white-space: nowrap; }
  .m6-chips { grid-column: 2; display: flex; gap: 7.5px; justify-content: space-between; margin: 0; padding: 0; list-style: none; align-self: end; }
  .m6-chips li { display: flex; align-items: center; justify-content: center; gap: 5px; height: 23.5px; flex: 1 1 auto; padding: 0 5px; border-radius: 10px; background: #f1f4f2; color: #33413a; font-size: 11px; white-space: nowrap; }
  .m6-chips img { width: 13.5px; height: 14.5px; }
  .m6-qty { position: absolute; top: 6.5px; right: 3.5px; width: 72px; }
  .m6-qty > summary, div.m6-qty { display: grid; grid-template-columns: 1fr auto; align-items: center; justify-items: center; height: 34.5px; padding: 3.5px 6.5px 3px 13.5px; border-radius: 10px; background: #e9f5ec; list-style: none; cursor: pointer; }
  .m6-qty > summary::-webkit-details-marker { display: none; }
  .m6-qty small { grid-column: 1 / -1; margin-left: -8px; font-size: 11px; color: #3b5a47; line-height: 1.2; white-space: nowrap; }
  .m6-qty b { font-size: 11.5px; font-weight: 700; color: #11331f; line-height: 1.25; white-space: nowrap; }
  .m6-qty .ico { width: 12px; height: 12px; color: #14713a; }

  .m6-segs { display: grid; grid-template-columns: 1.14fr 1.06fr 1fr; height: 48px; border-radius: 12px; overflow: hidden; }
  .m6-seg { display: flex; align-items: center; justify-content: center; gap: 8.5px; color: #11331f; text-decoration: none; font-size: 11px; font-weight: 700; letter-spacing: -0.01em; line-height: 1.32; }
  .m6-seg:hover { color: #11331f; }
  .m6-seg b { display: block; font-weight: 600; }
  .m6-seg--g { background: #eaf6ec; }
  .m6-seg--a { background: #fdf4e8; color: #5a3a14; }
  .m6-seg--a:hover { color: #5a3a14; }
  .m6-seg--b { background: #eaf3fb; color: #0e4d7c; }
  .m6-seg--b:hover { color: #0e4d7c; }
  .m6-seg b { color: inherit; }
  .m6-seg[aria-current] { box-shadow: inset 0 0 0 1.5px #14713a; border-radius: 12px; }

  .m6-q { position: relative; height: 128.5px; padding: 6px 6.5px 0 9px; border: 1px solid #efe7db; border-radius: 13.5px; }
  .m6-q--best { height: 134.5px; padding: 6.5px 6px 0 7.5px; border: 2px solid #14713a; background: linear-gradient(180deg, #f4fbf5, #fff 70%); }
  .m6-q--a { background: #fdf8f0; }
  .m6-q--b { background: #f0f6fc; border-color: #e0eaf4; }
  .m6-q__top { display: flex; align-items: center; gap: 8.5px; height: 37px; }
  .m6-q__top img { flex: none; width: 36px; height: 36px; border-radius: 50%; }
  .m6-q__top > div { flex: 1; min-width: 0; }
  .m6-q__top h3 { margin: 0; font-size: 12px; font-weight: 700; letter-spacing: -0.02em; line-height: 1.25; }
  .m6-q__top p { display: flex; align-items: center; gap: 6px; margin: 1px 0 0; font-size: 11px; color: #6a7670; line-height: 1.3; }
  .m6-q__top p img { width: 8.5px; height: 10px; }
  .m6-badge { flex: none; display: inline-flex; align-items: center; justify-content: center; gap: 5px; width: 81.5px; height: 25px; border-radius: 11px; background: #14713a; color: #fff; font-size: 11px; font-weight: 600; }
  .m6-badge .ico { width: 13.5px; height: 13.5px; }
  .m6-q__nums { display: grid; grid-template-columns: 96px 105px 1fr; margin: 5px 0 0; }
  .m6-q__nums > div:first-child { padding-inline-start: 5px; }
  .m6-q__nums > div + div { padding-inline-start: 14.5px; border-inline-start: 1px solid #e2e6e3; }
  .m6-q__nums dt { font-size: 11px; color: #5f6c65; line-height: 1.3; }
  .m6-q__nums dd { margin: 0; }
  .m6-q__nums dd b { font-size: 15px; font-weight: 800; letter-spacing: -0.02em; line-height: 1.16; }
  .m6-q__nums dd small { font-size: 11px; color: #39453f; }
  .m6-q__nums > div:nth-child(2) dd b { font-size: 13.5px; }
  .m6-q__nums > div:nth-child(2) dd small { display: block; font-size: 11px; line-height: 1; color: #6a7670; }
  .m6-q__nums strong { display: block; font-size: 11px; font-weight: 700; line-height: 1.35; white-space: nowrap; letter-spacing: -0.01em; }
  .m6-q__nums strong.is-stock { position: relative; padding-inline-start: 15px; }
  .m6-q__nums strong.is-stock::before { content: ""; position: absolute; left: 0; top: 3px; width: 8.5px; height: 8.5px; border-radius: 50%; background: #14713a; }
  .app-main .m6-q__nums > div:nth-child(3) small { display: block; padding-inline-start: 15px; font-size: 11px; line-height: 1.2; color: #6a7670; }
  .m6-q__row { display: grid; grid-template-columns: 100px 96.5px 94px; align-items: center; margin-top: 3px; padding-inline-start: 5px; }
  .m6-q__row p { display: flex; align-items: center; gap: 6.5px; min-width: 0; margin: 0; }
  .m6-q__row p .ico { flex: none; width: 17.5px; height: 17.5px; color: #16302a; }
  .m6-q__row span { font-size: 11px; color: #6a7670; line-height: 1.25; white-space: nowrap; }
  .m6-q__row span b { display: block; font-size: 11px; font-weight: 700; color: #15251e; letter-spacing: -0.015em; }
  .m6-sel { display: flex; align-items: center; justify-content: center; gap: 6.5px; width: 94px; height: 31px; border: 0; border-radius: 12px; background: #fbeedd; color: #4b3314; font-size: 11.5px; font-weight: 700; letter-spacing: -0.015em; text-decoration: none; cursor: pointer; }
  .m6-sel .ico { width: 12px; height: 12px; }
  .m6-q--b .m6-sel { background: #e1eefb; color: #12263d; }
  .m6-q--best .m6-sel { background: linear-gradient(180deg, #1f7d3f, #136833); color: #fff; }
  .m6-sel.is-off { background: none; color: #6a7670; }
  .m6-all { display: flex; align-items: center; justify-content: center; gap: 10px; position: relative; height: 28.5px; border: 1.5px solid #14713a; border-radius: 10px; background: #f1f8f2; color: #15251e; font-size: 11px; font-weight: 700; letter-spacing: -0.015em; text-decoration: none; }
  .m6-all .ico { width: 15px; height: 15px; color: #14592d; }
  .m6-all .ico:last-child { position: absolute; right: 11px; width: 12.5px; height: 12.5px; color: #15251e; }
  .m6-tum:not(:target) { display: none; }
  .m6-top > .muted { margin-top: 13.5px; font-size: 11px; }
}

/* s-m789.css */
/* Pazar, İşlerim, Tarım Asistanım (mockup 7-9). Üst blok tüm genişliklerde gereken yeni öğeler; telefon görünümü @media içinde. */
.tk__head { display: flex; align-items: center; gap: var(--s-2); }
.tk__head .rowlink__title { flex: 1; min-width: 0; }
.tk__age { color: var(--c-text-muted); font-size: var(--fs-sm); white-space: nowrap; }
.tk__fav button, .tk-ban__x button { display: flex; padding: 0; border: 0; background: none; color: var(--c-text-muted); cursor: pointer; }
.tk__fav [aria-pressed="true"] { color: #e0443e; }
.tk__where { display: flex; flex-wrap: wrap; gap: 2px var(--s-3); }
.tk__where > span { display: inline-flex; align-items: center; gap: 3.5px; }
.tk-filter { margin-inline-start: auto; text-decoration: none; }
.tk-ban { position: relative; display: flex; align-items: center; gap: var(--s-3); padding-inline-end: var(--s-6); }
.tk-ban__text { flex: 1; min-width: 0; display: grid; gap: 2px; color: inherit; text-decoration: none; }
.tk-ban__art { flex: none; display: block; }
.tk-ban__art img { display: block; }
.tk-ban__x { position: absolute; top: 6.5px; right: 6.5px; }

.wk { position: relative; }
.wk > .rowlink { align-items: center; padding-inline-start: 38px; }
.wk__done { position: absolute; left: 10px; top: 50%; transform: translateY(-50%); line-height: 0; }
.wk__when { display: flex; flex-wrap: wrap; align-items: center; gap: 3.5px; }
.wk__box { display: grid; place-items: center; width: 20px; height: 20px; padding: 0; border: 2px solid var(--c-border); border-radius: 5px; background: var(--c-surface); color: #fff; cursor: pointer; }
span.wk__box { cursor: default; }
.wk__box.is-on { border-color: var(--c-primary); background: var(--c-primary); }
.wk__box .ico { width: 13.5px; height: 13.5px; }
.mk-week a { display: grid; justify-items: center; gap: 2px; width: 100%; color: inherit; text-decoration: none; }

.a-dock { position: sticky; bottom: calc(var(--tabbar-h) + env(safe-area-inset-bottom) + var(--s-2)); z-index: 5; display: grid; gap: var(--s-2); }
.a-dock .mk-composer { position: static; flex: 1; min-width: 0; }
.a-bar { display: flex; align-items: flex-end; gap: var(--s-2); }
.a-quick { display: grid; grid-template-columns: repeat(auto-fit, minmax(8rem, 1fr)); gap: var(--s-2); }
.a-q { display: flex; align-items: center; gap: var(--s-2); width: 100%; height: 100%; padding: var(--s-2); border: 1px solid var(--c-border); border-radius: var(--radius); background: var(--c-surface); color: var(--c-text); font: inherit; font-size: var(--fs-sm); line-height: 1.25; text-align: start; text-decoration: none; cursor: pointer; }
.a-card { display: flex; align-items: center; gap: var(--s-2); padding: var(--s-2); border-radius: var(--radius); background: var(--c-surface-2); color: inherit; text-decoration: none; }
.a-card__body { flex: 1; min-width: 0; display: grid; }
.a-card__body small { color: var(--c-text-muted); }
.a-sum, .a-time { display: block; }
.a-sum p { margin: 0; }
.a-sum time, .a-time { display: block; color: var(--c-text-muted); font-size: var(--fs-sm); text-align: end; }
.a-lead { margin: 0; }
.mk-line small .ico { width: 12px; height: 12px; vertical-align: -3px; margin-inline-start: 3px; }
@media (min-width: 1024px) { .a-dock { bottom: var(--s-2); } }

@media (max-width: 767px) {
  /* Ortak başlık: üst çubuk bu ekranlarda mockup gibi alçak */
  body.layout-app:has(.tk-seg, .wk-head, .a-head) .app-top { padding-top: calc(env(safe-area-inset-top) + 3.5px); padding-bottom: 0; }
  body.layout-app .app-main > .stack > .tk-page { margin: 0; }
  body.layout-app :is(.tk-page, .wk-head, .a-head) h1 { margin: 0; font-size: 16px; font-weight: 700; letter-spacing: -0.03em; line-height: 1.15; color: #111d18; }
  body.layout-app :is(.tk-page .page-head__sub, .wk-head .screen-sub, .a-head .screen-sub) { margin: 1px 0 0; font-size: 13.5px; line-height: 1.25; color: #6f7b76; letter-spacing: -0.01em; }

  /* Pazar (mockup 7) */
  body.layout-app .tk-seg { gap: 0; margin: 5px 1px 0; padding: 0; height: 33.5px; border: 1px solid #e8ecea; border-radius: 12px; background: #fff; overflow: hidden; }
  body.layout-app .tk-seg a { flex: 1 1 50%; min-height: 0; height: 32px; padding: 0; gap: 9px; border-radius: 11px; background: none; color: #5c6b66; font-size: 12.5px; font-weight: 700; letter-spacing: -0.01em; }
  body.layout-app .tk-seg a:first-child { flex-basis: 54%; }
  body.layout-app .tk-seg a[aria-current] { background: #e4f2e7; color: #145c33; }
  body.layout-app .tk-seg .ico { width: 19.5px; height: 19.5px; }
  body.layout-app .tk-ban { margin: 8.5px -3px 0; height: 79px; padding: 0 0 0 14.5px; gap: 0; border: 0; border-radius: 12.5px; background: #e4f2e7; }
  .tk-ban__text strong { font-size: 15px; font-weight: 800; line-height: 1.22; letter-spacing: -0.025em; color: #0f3527; white-space: pre-line; }
  .tk-ban__text span { margin-top: 3px; font-size: 11px; color: #5f7369; white-space: nowrap; letter-spacing: -0.005em; }
  .tk-ban__art { position: absolute; right: 20px; bottom: 1px; }
  .tk-ban__art img { width: 99px; height: 72px; }
  .tk-ban__x { top: 6.5px; right: 6px; }
  .tk-ban__x button { color: #7c9a8b; }
  .tk-ban__x .ico { width: 16px; height: 16px; }
  section:has(> .sec-head > .tk-filter) { gap: 0; margin-inline: -3px; }
  body.layout-app section:has(> .sec-head > .tk-filter) > * + * { margin-top: 0; }
  .sec-head:has(> .tk-filter) { display: flex; align-items: center; margin: 8.5px 0 6px; flex-wrap: nowrap; }
  .sec-head:has(> .tk-filter) h2 { margin: 0; font-size: 14.5px; font-weight: 800; letter-spacing: -0.03em; color: #111d18; }
  body.layout-app .tk-filter { display: inline-flex; align-items: center; gap: 6px; height: 24.5px; min-height: 0; padding: 0 12px 0 11px; border: 1px solid #e5e9e7; border-radius: 839px; background: #fff; color: #111d18; font-size: 11px; font-weight: 700; }
  body.layout-app .tk-filter.is-on { border-color: #1c7a45; color: #145c33; }
  .tk-filter .ico { width: 13.5px; height: 13.5px; }
  section:has(> .sec-head > .tk-filter) .rows { display: grid; gap: 8.5px; margin: 0; padding: 0 0 52px; list-style: none; }
  body.layout-app .tk { display: grid; grid-template-columns: 63px minmax(0, 1fr); gap: 0 9px; padding: 6px 7.5px 5px; border: 1px solid #eef0ef; border-radius: 12px; background: #fff; box-shadow: 0 1px 3.5px rgb(17 40 28 / 0.03); min-height: 0; }
  .tk > .thumb { grid-row: 1 / span 1; width: 63px; height: 64px; border-radius: 7.5px; object-fit: cover; margin: 0; }
  body.layout-app .tk .rowlink__body { display: contents; }
  .tk__head { grid-column: 2; grid-row: 1; align-self: start; display: grid; grid-template-columns: minmax(0, 1fr) auto auto; gap: 0 8.5px; height: 15px; margin-top: -1px; }
  .tk .rowlink__title { font-size: 13.5px; font-weight: 800; letter-spacing: -0.02em; color: #111d18; line-height: 15px; }
  .tk__age { font-size: 11px; color: #8c9692; line-height: 15px; }
  .tk__fav button { color: #5f6d67; margin-right: 2px; }
  .tk__fav .ico { width: 17px; height: 17px; }
  body.layout-app .tk .mk-qty { grid-column: 2; grid-row: 1; align-self: start; margin-top: 15px; font-size: 12px; font-weight: 800; letter-spacing: -0.01em; color: #1c6b3c; line-height: 14.5px; }
  .tk__pills { grid-column: 2; grid-row: 1; align-self: start; margin-top: 32px; display: flex; flex-wrap: nowrap; gap: 6.5px; overflow: hidden; }
  .tk__pills .pill { height: 17.5px; padding: 0 7.5px 0 6.5px; gap: 4px; font-size: 11px; font-weight: 500; letter-spacing: -0.01em; }
  .tk__pills .pill img { flex: none; height: 12px; width: auto; }
  .tk__pills .pill--ok { background: #e8f3ea; color: #1c6b3c; }
  .tk__pills .pill--warn { background: #fdf0df; color: #97470f; }
  .tk__where { grid-column: 2; grid-row: 2; display: flex; flex-wrap: nowrap; justify-content: space-between; gap: 5px; margin: -14px 0 0 3.5px; height: 13.5px; font-size: 11px; color: #5e6b66; letter-spacing: -0.01em; white-space: nowrap; }
  .tk__where > span { gap: 5px; min-width: 0; }
  .tk__where .ico { width: 12.5px; height: 12.5px; flex: none; }
  .tk .mk-card__foot { grid-column: 1 / -1; grid-row: 3; display: flex; flex-wrap: nowrap; align-items: center; justify-content: space-between; gap: 5px; margin-top: 3.5px; }
  .tk .mk-card__foot b { font-size: 12.5px; font-weight: 800; letter-spacing: -0.02em; color: #111d18; white-space: nowrap; }
  .tk .mk-card__foot small { margin-inline-start: 4px; font-size: 11px; font-weight: 400; color: #9aa3a0; }
  body.layout-app .tk .btn { width: 96px; height: 22.5px; min-height: 0; padding: 0 7.5px 0 23.5px; justify-content: space-between; border-radius: 10px; background: linear-gradient(100deg, #18703f, #1f7a45 50%, #14603a); font-size: 11px; font-weight: 700; color: #fff; white-space: nowrap; }
  .tk .btn .ico { width: 12.5px; height: 12.5px; }
  body.layout-app .tk-cta { position: fixed; z-index: 40; left: 9px; right: 9px; width: auto; min-height: 0; bottom: calc(var(--tabbar-h) + env(safe-area-inset-bottom) + 5px); display: flex; align-items: center; justify-content: flex-start; gap: 11px; height: 40.5px; margin: 0; padding: 0 0 0 95px; border-radius: 12px; background: linear-gradient(100deg, #17693c, #217d46 45%, #17693c); color: #fff; text-decoration: none; }
  .tk-cta > .ico { width: 30px; height: 30px; padding: 7.5px; margin: 0; flex: none; border-radius: 50%; background: #f1f7f2; color: #1c7a45; }
  .tk-cta .cta-bar__body { display: grid; gap: 0; }
  .tk-cta .cta-bar__title { font-size: 12.5px; font-weight: 700; letter-spacing: -0.02em; line-height: 1.2; }
  .tk-cta .cta-bar__sub { font-size: 11px; opacity: 0.92; line-height: 1.25; }

  /* İşlerim (mockup 8) */
  body.layout-app .wk-head { align-items: center; margin-top: 2px; gap: 6.5px; }
  body.layout-app .wk-head h1 { font-size: 16px; }
  body.layout-app .wk-head .screen-sub { margin-top: 0; font-size: 12px; white-space: nowrap; }
  body.layout-app .wk-head .btn { flex: none; width: 72px; height: 30px; min-height: 0; padding: 0; gap: 4px; margin-top: 0; border-radius: 9px; background: linear-gradient(100deg, #1f7a45, #2b8a4d 50%, #1c7240); box-shadow: none; font-size: 12.5px; font-weight: 700; color: #fff; letter-spacing: -0.02em; }
  .wk-head .btn .ico { width: 14px; height: 14px; }
  body.layout-app .wk-seg { gap: 0; margin: 6px 0 0; padding: 2px; height: 30px; border-radius: 9px; background: #eff1f1; overflow: hidden; }
  body.layout-app .wk-seg a { flex: 1 1 33%; min-height: 0; height: 26px; padding: 0; border-radius: 7px; background: none; color: #5c6b66; font-size: 12.5px; font-weight: 700; letter-spacing: -0.015em; }
  body.layout-app .wk-seg a[aria-current] { background: linear-gradient(100deg, #1f7a45, #2b8a4d 50%, #1c7240); color: #fff; }
  body.layout-app .mk-week { gap: 0; margin: 6px 0 0; grid-template-columns: repeat(7, 1fr); }
  body.layout-app .mk-week li { display: block; padding: 0; border-radius: 0; background: none; color: #78847f; }
  .mk-week a { position: relative; display: grid; grid-template-rows: 18px 30px; gap: 0; justify-items: center; align-items: center; height: 48px; font-size: 11px; }
  .mk-week b { display: block; align-self: start; margin-top: 4px; font-size: 13px; font-weight: 600; color: #111d18; line-height: 17px; letter-spacing: -0.02em; }
  body.layout-app .mk-week .mk-dot { position: absolute; left: 50%; bottom: 4px; margin-left: -2.5px; width: 5px; height: 5px; background: #c3c9c6; }
  body.layout-app .mk-week .mk-dot.is-open { background: #2a9150; }
  body.layout-app .mk-week [aria-current] { background: none; color: #5d6b65; }
  body.layout-app .mk-week [aria-current] a { color: #5d6b65; }
  .mk-week [aria-current] a::before { content: ""; position: absolute; inset: 0 3px auto; height: 22px; border-radius: 9px 9px 0 0; background: #e8f3ea; }
  .mk-week [aria-current] a::after { content: ""; position: absolute; inset: 18px 3px 0; border-radius: 9px; background: #2e8b4a; }
  .mk-week [aria-current] a > * { position: relative; z-index: 1; }
  body.layout-app .mk-week [aria-current] b { color: #fff; }
  body.layout-app .mk-week [aria-current] .mk-dot, body.layout-app .mk-week [aria-current] .mk-dot.is-open { position: absolute; z-index: 1; background: #fff; }
  ul.rows:has(> .wk) { display: grid; gap: 6px; margin: 6px 0 0; padding: 0; list-style: none; }
  body.layout-app .wk { display: block; position: relative; }
  body.layout-app .wk > .rowlink { display: grid; grid-template-columns: 40px minmax(0, 1fr) 16px; align-items: center; gap: 0; min-height: 0; padding: 6px 4px 6px 34px; border: 1px solid #e6eae8; border-radius: 10px; background: #fff; box-shadow: none; color: #111d18; }
  .wk__art { width: 34px; height: 34px; border-radius: 8px; }
  body.layout-app .wk .rowlink__body { min-width: 0; display: block; }
  .wk .mk-card__top { display: flex; flex-wrap: nowrap; align-items: center; justify-content: space-between; gap: 5px; min-height: 0; }
  .wk .rowlink__title { min-width: 0; font-size: 13px; font-weight: 700; letter-spacing: -0.035em; line-height: 1.2; color: #16241e; }
  .wk .pill { flex: none; height: 18px; padding: 0 6px 0 4px; gap: 3px; border-radius: 9px; font-size: 11px; font-weight: 600; letter-spacing: -0.02em; }
  .wk .pill .ico { width: 12px; height: 12px; }
  .wk .pill--ok { background: #e6f2e9; color: #177039; }
  .wk .pill--warn { background: #fbeedd; color: #974a0f; }
  .wk .pill--info { background: #e2f0fb; color: #1173bb; }
  .wk .rowlink__meta { display: block; margin-top: 1px; font-size: 11px; line-height: 1.2; color: #55625c; letter-spacing: -0.015em; }
  body.layout-app .wk .wk__when { display: flex; align-items: center; gap: 4px; margin-top: 2px; font-size: 11px; color: #55625c; }
  .wk__when .ico { width: 12px; height: 12px; color: #5f6d67; }
  .wk__when .ico + .ico, .wk__when > .ico:nth-of-type(2) { margin-inline-start: 8px; }
  .wk .mk-prog { display: flex; gap: 6px; margin-top: 3px; align-items: center; color: #6b7772; font-size: 11px; }
  .wk .mk-prog progress { flex: 1; height: 4px; border: 0; border-radius: 3.5px; overflow: hidden; background: #ecefee; appearance: none; }
  .wk .mk-prog progress::-webkit-progress-bar { background: #ecefee; }
  .wk .mk-prog progress::-webkit-progress-value { background: linear-gradient(90deg, #1f7a45, #2e8b4a); border-radius: 3.5px; }
  body.layout-app .wk > .rowlink > .ico:last-child { justify-self: center; width: 13px; height: 13px; margin-top: 0; color: #6b7772; }
  .wk__done { position: absolute; left: 9px; top: 50%; transform: translateY(-50%); display: block; line-height: 0; }
  .wk__box { width: 18px; height: 18px; border: 1.5px solid #7c8985; border-radius: 4px; }
  .wk__box.is-on { border-color: #1f8a4a; background: #1f8a4a; }
  .wk__box::after { content: ""; position: absolute; inset: -12px -6px -12px -8px; }

  /* Tarım Asistanım (mockup 9) */
  .tabbar:has(a[href="/app/asistan"]) { grid-template-columns: 1fr 1fr 1fr 1.72fr 1fr; }
  .tabbar:has(a[href="/app/asistan"]) a[aria-current="page"] .ico { color: #145c33; }
  body.layout-app .tabbar a[href="/app/asistan"][aria-current="page"]::before { left: 50%; right: auto; width: 32px; margin-left: -19px; border-radius: 50%; height: 32px; }
  body.layout-app .tabbar a[href="/app/asistan"] { white-space: nowrap; letter-spacing: -0.02em; font-size: 11px; }
  .a-page { padding-bottom: 89px; }
  body.layout-app .a-head { position: relative; display: block; margin: 6.5px 0 0; min-height: 59px; }
  body.layout-app .a-head h1 { font-size: 16px; letter-spacing: -0.03em; margin-top: 6px; }
  body.layout-app .a-head .screen-sub { font-size: 13.5px; margin-top: 2px; }
  .a-hero { position: absolute; right: -6px; top: -15px; width: 113.5px; height: 73px; z-index: 0; }
  body.layout-app .a-page .mk-chat { gap: 8.5px; margin-inline: -3px; }
  body.layout-app .a-page .mk-chat .mk-chat { margin-inline: 0; }
  body.layout-app .a-page .mk-line--me { justify-content: flex-end; margin-inline-end: 2px; }
  body.layout-app .a-page .bubble--me { max-width: 210px; margin: 0; padding: 10px 6.5px 4px 13.5px; border-radius: 12.5px; background: #eaf4ec; color: #1a2823; font-size: 11px; line-height: 1.34; letter-spacing: -0.005em; }
  .a-page .bubble--me small { margin-top: 2px; font-size: 11px; color: #66736d; }
  .a-page .bubble--me small .ico { color: #2e7d4c; width: 12.5px; height: 12.5px; }
  body.layout-app .a-page .mk-av { flex: none; width: 24.5px; height: 24.5px; margin-top: 6px; border-radius: 50%; background: #eaf4ec; color: #15693a; }
  .a-page .mk-av .ico { width: 16px; height: 16px; }
  .a-bot { flex: none; width: 35.5px; height: 35.5px; border-radius: 50%; }
  body.layout-app .a-page .mk-line { gap: 6px; }
  body.layout-app .a-ans { flex: 1; min-width: 0; max-width: 243px; margin: 0; padding: 8.5px; border: 1px solid #e9eef0; border-radius: 12.5px; background: #f8fbfc; color: #1a2823; font-size: 11px; line-height: 1.36; }
  body.layout-app .a-ans > * + * { margin-top: 4px; }
  .a-ans p { margin: 0; }
  .a-lead { margin-bottom: 6.5px; }
  .a-mode .badge { font-size: 11px; }
  .a-card { gap: 11px; min-height: 54.5px; padding: 6px 9px 6px 8.5px; border-radius: 10px; }
  .a-card img { flex: none; width: 35.5px; height: 35.5px; }
  .a-card--g { background: #eaf4ec; }
  .a-card--a { background: #fbf3e6; }
  .a-card--b { background: #e9f2f9; }
  .a-card__body b { font-size: 11px; font-weight: 700; color: #16241e; letter-spacing: -0.015em; }
  .a-card__body span { font-size: 11px; color: #1a2823; letter-spacing: -0.015em; margin-top: 3px; }
  body.layout-app .a-card__body small { font-size: 11px; color: #6b7772; margin-top: 2px; text-align: start; }
  .a-card > .ico { flex: none; width: 12.5px; height: 12.5px; color: #16241e; }
  .a-sum { position: relative; margin-top: 6.5px; padding: 7.5px 9px 6.5px; border-radius: 10px; background: #fbf6ee; }
  .a-sum > img { position: absolute; left: 8.5px; top: 6.5px; width: 17px; height: 18.5px; }
  .a-sum__t { padding-inline-start: 21px; font-size: 11px; font-weight: 600; letter-spacing: -0.015em; color: #16241e; }
  .a-sum__t b { font-size: 12px; font-weight: 800; color: #1a7a41; }
  .a-sum__n { margin-top: 4px !important; padding-inline-end: 25px; font-size: 11px; color: #707c77; line-height: 1.36; }
  .a-sum time { position: absolute; right: 6.5px; bottom: 6px; font-size: 11px; color: #707c77; }
  .a-time { font-size: 11px; }
  .a-fb { margin-top: 5px; font-size: 11px; }
  .a-fb .btn { min-height: 23.5px; padding: 0 8.5px; font-size: 11px; }
  body.layout-app .a-dock { position: fixed; z-index: 30; left: 0; right: 0; bottom: calc(var(--tabbar-h) + env(safe-area-inset-bottom) - 1px); gap: 9px; padding: 6.5px 6.5px 6px; background: #fff; }
  .a-quick { grid-template-columns: 102fr 89fr 81fr 78fr; gap: 6px; margin: 0 3px; }
  .a-quick form { min-width: 0; margin: 0; }
  .a-q { gap: 4px; height: 39.5px; padding: 0 3px 0 6px; border-radius: 11px; font-size: 11px; font-weight: 500; line-height: 1.2; letter-spacing: -0.02em; color: #15402b; white-space: nowrap; }
  .a-q img { flex: none; width: 22.5px; height: 27.5px; }
  .a-q--g { border-color: #e5efe7; background: #f2f8f3; }
  .a-q--a { border-color: #f9ecdb; background: #fef6ec; color: #7a4a18; }
  .a-q--b { border-color: #e1edf8; background: #f0f6fc; color: #1b2f45; }
  .a-bar { align-items: center; gap: 6.5px; padding: 6.5px; border-radius: 22px; background: #fff; box-shadow: 0 0 8.5px rgb(17 40 28 / 0.06); }
  .a-plus { position: relative; flex: none; }
  .a-plus summary { display: grid; place-items: center; width: 33px; height: 33px; border-radius: 50%; background: #edf1f3; color: #55636a; list-style: none; cursor: pointer; }
  .a-plus summary::-webkit-details-marker { display: none; }
  .a-plus summary .ico { width: 20px; height: 20px; }
  .a-sheet { position: absolute; left: 0; bottom: 42px; display: grid; gap: 6.5px; width: 201.5px; padding: 8.5px; border: 1px solid #e5e9e7; border-radius: 13.5px; background: #fff; box-shadow: 0 6.5px 20px rgb(17 40 28 / 0.14); }
  .a-sheet .chip { width: 100%; justify-content: flex-start; }
  body.layout-app .a-dock .mk-composer { align-items: center; gap: 6.5px; padding: 0; border: 0; border-radius: 0; background: none; }
  .a-dock .mk-composer .field { display: block; }
  body.layout-app .a-dock textarea { display: block; width: 100%; height: 31px; min-height: 0; padding: 6.5px 12.5px; border: 1px solid #e4e8ea; border-radius: 16px; background: #fff; font-size: 11px; line-height: 17px; resize: none; overflow: hidden; }
  .a-dock textarea::placeholder { color: #7b8680; opacity: 1; }
  body.layout-app .a-dock .mk-send { flex: none; width: 33px; min-width: 33px; height: 33px; border-radius: 50%; background: #146c3b; color: #fff; }
  .a-dock .mk-send .ico { width: 17.5px; height: 17.5px; }
  .a-page .mk-note { font-size: 11px; }
}

/* s-market.css */
/* Tedarikçi fiyatları, pazar, işlerim ve asistan ekranları */
.mk-grow { flex: 1; min-width: 0; }
.mk-grow > * { margin: 0; }
.mk-wrap { flex-wrap: wrap; }
.mk-note { margin: 0; font-size: var(--fs-sm); }

/* Teklif isteği özeti ve teklif kartı */
.mk-rfq { display: flex; flex-wrap: wrap; align-items: flex-start; gap: var(--s-3); }
.mk-sum .tint-card { padding: var(--s-3); }
.mk-sum .stat { flex-wrap: wrap; gap: var(--s-2); }
.mk-sum .stat__body { flex: 1 1 4.92rem; }
.mk-sum .stat__value { font-size: 0.943rem; }
.mk-quote { display: grid; gap: var(--s-3); }
.mk-quote--best { border: 2px solid var(--c-primary); }
.mk-quote__top { display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-2) var(--s-3); }
.mk-quote .minis { grid-template-columns: repeat(auto-fit, minmax(4.92rem, 1fr)); }
.mk-quote .mini { background: var(--c-surface); }
.mk-quote__row { display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-3); }
.mk-terms { flex: 1 1 auto; display: flex; flex-wrap: wrap; gap: var(--s-2) var(--s-4); margin: 0; padding: 0; list-style: none; font-size: var(--fs-sm); }
.mk-terms li { display: flex; align-items: center; gap: var(--s-2); }
.mk-terms b { display: block; }

/* Talep ve iş kartı */
.mk-card { align-items: flex-start; }
.mk-card .rowlink__body { gap: var(--s-1); }
.mk-card a.rowlink__title { color: var(--c-text); text-decoration: none; }
.mk-card__top, .mk-card__foot { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--s-1) var(--s-2); }
.mk-qty { color: var(--c-primary); font-weight: 700; }
.mk-card__foot small { color: var(--c-text-muted); font-weight: 400; }
.mk-prog { display: flex; align-items: center; gap: var(--s-2); color: var(--c-text-muted); font-size: var(--fs-sm); }
.mk-prog progress { flex: 1; min-width: 0; height: 0.41rem; accent-color: var(--c-primary); }
.mk-filter { margin-inline-start: auto; }
.mk-filter summary { cursor: pointer; list-style: none; }
.mk-filter summary::-webkit-details-marker { display: none; }
.mk-filter form { margin-top: var(--s-2); }
#yeni-ilan, #plandan { scroll-margin-top: 4.1rem; }

/* Hafta şeridi */
.mk-week { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: var(--s-1); margin: 0; padding: 0; list-style: none; text-align: center; }
.mk-week li { display: grid; justify-items: center; gap: 2px; padding-block: var(--s-2); border-radius: var(--radius); color: var(--c-text-muted); font-size: var(--fs-sm); }
.mk-week b { color: var(--c-text); font-size: var(--fs-lg); }
.mk-dot { width: 6.5px; height: 6.5px; border-radius: 50%; }
.mk-dot.is-open { background: var(--c-primary); }
.mk-dot.is-done { background: var(--c-border); }
.mk-week [aria-current] { background: var(--grad-primary); color: var(--c-on-primary); }
.mk-week [aria-current] b { color: inherit; }
.mk-week [aria-current] .is-open { background: var(--c-on-primary); }

/* Sohbet */
.mk-chat { display: grid; gap: var(--s-3); scroll-margin-top: 4.1rem; }
.mk-line { display: flex; align-items: flex-start; gap: var(--s-2); }
.mk-line .bubble { min-width: 0; margin-block: 0; overflow-wrap: anywhere; }
.mk-line > img { flex: none; }
.mk-line small { display: block; color: var(--c-text-muted); text-align: end; }
.mk-av { width: 2.05rem; height: 2.05rem; border-radius: 50%; }
.mk-composer { position: sticky; bottom: calc(var(--tabbar-h) + env(safe-area-inset-bottom) + var(--s-2)); z-index: 5; display: flex; align-items: flex-end; gap: var(--s-2); padding: var(--s-2); border: 1px solid var(--c-border); border-radius: var(--radius-lg); background: var(--c-surface); }
.mk-composer .field { flex: 1; min-width: 0; margin: 0; }
.mk-composer textarea { field-sizing: content; max-height: 6.56rem; }
.mk-send { flex: none; width: var(--tap); min-width: var(--tap); height: var(--tap); padding: 0; border-radius: 50%; }
@media (min-width: 1024px) { .mk-composer { bottom: var(--s-2); } }

/* s-mobile.css */
/* Telefon uygulaması (docs/style/mobile 1:1). Ölçüler mockup'tan: 690 px = 390 CSS px. Yalnız 644.5px altı. */
.m-only { display: none; }

/* Bugün ekranı masaüstünde: ikon solda, yazı sağında (telefon ölçüleri aşağıda) */
.m-stats, .m-quick { display: grid; grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr)); gap: 10px; }
.m-stat, .m-q { display: flex; align-items: center; gap: 10px; padding: 10px; border: 1px solid var(--c-border); border-radius: 13.5px; color: var(--c-text); text-decoration: none; }
.m-stat img, .m-q img { width: 36px; height: 36px; flex: none; }
.m-q span { flex: 1; min-width: 0; }
.wx__stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.wx__stats > div { display: flex; align-items: center; gap: 7.5px; }
.wx__stats dt, .wx__stats dd { margin: 0; }

@media (max-width: 767px) {
  .m-only { display: revert; }
  .d-only { display: none !important; }
  @view-transition { navigation: auto; }
  ::view-transition-old(root), ::view-transition-new(root) { animation-duration: 0.16s; }

  html { -webkit-tap-highlight-color: transparent; }
  body.layout-app { background: #fff; overscroll-behavior-y: none; touch-action: manipulation; color: #111d18; }
  body.layout-app a, body.layout-app button { -webkit-touch-callout: none; }
  :root { --gutter: 12px; --tabbar-h: 54px; }

  /* Üst çubuk (mockup 5, 7, 8, 9, 10) */
  .app-top { position: sticky; background: #fff; backdrop-filter: none; padding: calc(env(safe-area-inset-top) + 6.5px) 12px 6.5px; }
  .app-top--hide { display: none; }
  .app-top .brand { font-size: 16px; font-weight: 700; letter-spacing: -0.02em; color: #15251e; }
  .app-top .brand img { width: auto; height: 48px; margin-inline-end: 0; }
  .app-top .brand span { color: #2e8b47; font-weight: 600; }
  .app-top__acts { gap: 10px; }
  .icon-btn { width: 35.5px; height: 35.5px; }
  .icon-btn .ico { width: 22.5px; height: 22.5px; }
  .icon-btn--soft { background: #e9f4ec; color: #14713a; }
  .icon-btn__dot { top: 3px; right: 4px; width: 9px; height: 9px; background: #ee4b45; border-color: #fff; }

  .app-main { padding: 5px 12px calc(var(--tabbar-h) + 18.5px + env(safe-area-inset-bottom)); }
  .app-main > .stack > * + * { margin-top: 10px; }

  /* Alt sekme (mockup: yuvarlak üst köşe, yeşil hap) */
  .tabbar { min-height: var(--tabbar-h); padding: 5px 3.5px env(safe-area-inset-bottom); background: #fff; border-radius: 22px 22px 0 0; box-shadow: 0 -2px 15px rgb(17 40 28 / 0.07); }
  .tabbar__item { gap: 1px; padding: 0; min-height: 52px; font-size: 11px; font-weight: 500; color: #6d7873; letter-spacing: -0.01em; }
  .tabbar__item .ico { width: 22px; height: 22px; }
  .tabbar__item[aria-current="page"] { color: #14713a; font-weight: 700; }
  .tabbar__item[aria-current="page"]::before { top: 2px; left: 3px; right: 3px; height: 33.5px; border-radius: 13.5px; background: #e9f4ec; }

  /* Bugün (mockup 10) */
  .today-head h1 { font-size: 16.5px; font-weight: 800; letter-spacing: -0.025em; line-height: 1.15; margin: 2px 0 3px; }
  .today-head p { font-size: 13px; color: #6a7670; margin: 0; }
  .wx { display: block; position: relative; height: 164.5px; border-radius: 18.5px; overflow: hidden; background: #bcdcf2 url(/img/m/weather.webp) center / cover no-repeat; color: #111d18; text-decoration: none; }
  .wx:hover { color: #111d18; }
  .wx__place { position: absolute; top: 14.5px; left: 16px; display: flex; align-items: center; gap: 5px; font-size: 13.5px; font-weight: 500; letter-spacing: -0.01em; }
  .wx__place .ico { width: 16px; height: 16px; }
  .wx__temp { position: absolute; top: 38px; left: 16px; font-size: 31px; font-weight: 800; letter-spacing: -0.03em; line-height: 1; }
  .wx__temp small { font-size: 17.5px; font-weight: 700; vertical-align: 12.5px; letter-spacing: 0; }
  .wx__sky { position: absolute; top: 79px; left: 17px; font-size: 14.5px; font-weight: 600; }
  .wx__stats { position: absolute; left: 9px; right: 9px; bottom: 7.5px; height: 50.5px; margin: 0; display: grid; grid-template-columns: repeat(3, 1fr); align-items: center; border-radius: 14.5px; background: rgb(240 245 236 / 0.93); backdrop-filter: blur(6px); }
  .wx__stats > div { display: flex; align-items: center; gap: 7.5px; padding-inline-start: 12.5px; height: 28.5px; }
  .wx__stats > div + div { border-inline-start: 1px solid rgb(40 60 50 / 0.16); }
  .wx__stats .ico { width: 20px; height: 20px; color: #1f7a3f; }
  .wx__stats dt { font-size: 11px; color: #4e5c55; line-height: 1.15; }
  .wx__stats dd { margin: 0; font-size: 13px; font-weight: 700; line-height: 1.2; white-space: nowrap; }

  .m-stats { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8.5px; }
  .m-stat { display: flex; align-items: center; gap: 10px; height: 67px; padding: 0 10px; border-radius: 16px; color: #111d18; text-decoration: none; border: 1px solid transparent; }
  .m-stat:hover { color: #111d18; }
  .m-stat img { width: 36px; height: 36px; flex: none; border-radius: 10px; }
  .m-stat--g { background: #f0f8f1; border-color: #e1efe4; }
  .m-stat--a { background: #fef5ea; border-color: #f8e9d6; }
  .m-stat__l { display: block; font-size: 11px; white-space: nowrap; color: #5f6c65; line-height: 1.2; }
  .m-stat--a .m-stat__l { color: #8a5a22; }
  .m-stat__v { display: block; font-size: 17.5px; font-weight: 800; letter-spacing: -0.02em; line-height: 1.2; white-space: nowrap; }
  .m-stat__v small { font-size: 12px; font-weight: 500; letter-spacing: 0; color: #2c3a33; }

  .m-sec { font-size: 15.5px; font-weight: 800; letter-spacing: -0.02em; margin: 15px 0 8.5px; }
  .m-quick { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px 8.5px; }
  .m-q { display: flex; align-items: center; gap: 6.5px; height: 52px; padding: 0 6.5px; border-radius: 13.5px; color: #15251e; font-size: 11.5px; font-weight: 600; white-space: nowrap; letter-spacing: -0.01em; text-decoration: none; border: 1px solid transparent; }
  .m-q:hover { color: #15251e; }
  .m-q img { width: 36px; height: 35.5px; flex: none; }
  .m-q span { flex: 1; min-width: 0; }
  .m-q .ico { width: 12px; height: 12px; flex: none; color: #39453f; }
  .m-q--g { background: #f3f9f4; border-color: #e6f1e8; }
  .m-q--a { background: #fef7ee; border-color: #f9ecdb; }
  .m-q--b { background: #eef5fc; border-color: #e0ecf8; }

  .m-assist { position: relative; display: block; height: 83px; margin-top: 10px; padding: 15px 16px; border-radius: 16px; overflow: hidden; color: #fff; text-decoration: none; background: linear-gradient(100deg, #2f8548, #39914f 60%, #2e7f47); }
  .m-assist::after { content: ""; position: absolute; inset: 0 0 0 auto; width: 134.5px; background: url(/img/m/assist-bg.webp) right center / cover no-repeat; -webkit-mask-image: linear-gradient(90deg, transparent, #000 22%); mask-image: linear-gradient(90deg, transparent, #000 22%); }
  .m-assist:hover { color: #fff; }
  .m-assist b { position: relative; z-index: 1; display: block; font-size: 15px; font-weight: 800; letter-spacing: -0.02em; line-height: 1.2; }
  .m-assist span { position: relative; z-index: 1; display: block; margin-top: 3.5px; font-size: 12px; opacity: 0.95; }
}

/* s-plan.css */
/* Ürün seçimi, üretim planı, ihtiyaç listesi */
.pl-land { display: grid; gap: var(--s-3); padding: var(--s-3); }
.pl-land__top { display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-3); }
.pl-land__pic { flex: none; width: 4.51rem; height: 4.51rem; border-radius: 13.5px; background: #e8f4fa url(/icons/scene.svg) center bottom / cover no-repeat; }
.pl-land__body { flex: 1 1 7.38rem; min-width: 0; display: grid; gap: 2px; }
.pl-land__body p { margin: 0; }
.pl-land__place { display: flex; align-items: center; gap: var(--s-1); font-size: var(--fs-sm); }

.stack > .pl-gap { margin-top: var(--s-4); } /* .rows/.tl/.facts margin:0, .stack aralığını siliyor */
.pl-two { align-items: start; }
@media (min-width: 1024px) { .pl-two { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.pl-crop-link { position: relative; display: block; padding: var(--s-3); color: var(--c-text); text-decoration: none; }
.pl-crop-link:hover { border-color: var(--c-primary); color: var(--c-text); }
.pl-crop { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: var(--s-3); }
.pl-crop__pic { position: relative; display: block; line-height: 0; }
.pl-crop__rank { position: absolute; top: 3.5px; left: 3.5px; display: grid; place-items: center; width: 1.312rem; height: 1.312rem; border: 2px solid var(--c-surface); border-radius: 50%; background: var(--c-primary); color: var(--c-on-primary); font-size: var(--fs-sm); font-weight: 700; line-height: 1; }
.pl-crop__top { display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-1) var(--s-2); }
.pl-crop__top h3 { flex: 1 1 auto; min-width: 0; }
.pl-crop-link .pl-crop__top { padding-inline-end: 1.23rem; }
.pl-crop__top > .ico { position: absolute; top: var(--s-4); right: var(--s-3); color: var(--c-text-muted); }
.pl-crop__why { display: -webkit-box; margin: var(--s-1) 0 0; overflow: hidden; color: var(--c-text-muted); font-size: var(--fs-sm); -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.pl-crop__minis { grid-column: 1 / -1; }
@media (min-width: 640px) { .pl-crop__minis { grid-column: 2; } }

.pl-picks { display: flex; gap: var(--s-2); overflow-x: auto; padding-block: var(--s-1); scrollbar-width: none; }
.pl-pick { position: relative; flex: none; display: grid; justify-items: center; gap: 2px; width: 3.69rem; font-size: var(--fs-sm); line-height: 1.2; text-align: center; cursor: pointer; }
.pl-pick input { position: absolute; top: 2px; right: 2px; width: 1.025rem; height: 1.025rem; margin: 0; accent-color: var(--c-primary); }
.pl-pick:has(input:checked) .thumb { outline: 2px solid var(--c-primary); outline-offset: 1px; }

.pl-hero { display: grid; gap: var(--s-3); padding: var(--s-3); }
.pl-hero__crop { display: flex; align-items: center; gap: var(--s-3); }
.pl-hero__label { font-size: var(--fs-sm); color: #2b3a33; }
.scene-head .pl-hero__name { font-size: var(--fs-2xl); line-height: 1.1; }
.pl-hero__meta { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--s-2); padding: var(--s-3); border-radius: 15px; background: rgb(255 255 255 / 0.88); }
.pl-hero__meta .stat { gap: var(--s-2); color: inherit; text-decoration: none; }
.pl-hero__meta .stat__label, .pl-hero__meta .stat__note { color: #4d5a53; }
.pl-hero__meta .ibox { width: 2.05rem; height: 2.05rem; }
.pl-kpi { display: grid; align-content: start; gap: var(--s-1); min-width: 0; padding: var(--s-3); }
.pl-kpi .ibox { width: 1.845rem; height: 1.845rem; border-radius: 8.5px; }
.pl-kpi .ibox .ico { width: 1.066rem; height: 1.066rem; }
.pl-kpi .stat__value { font-size: clamp(0.902rem, 5vw, 1.312rem); }

.pl-need { position: relative; padding: var(--s-3); }
.pl-need__head { display: flex; align-items: center; gap: var(--s-3); padding-inline-end: var(--s-6); }
.pl-need__body { flex: 1; min-width: 0; display: grid; justify-items: start; gap: 2px; }
.pl-need__qty { font-size: var(--fs-lg); font-weight: 700; }
.pl-need__more > summary { position: absolute; top: var(--s-1); right: var(--s-1); display: flex; align-items: center; justify-content: center; width: var(--tap); height: var(--tap); border-radius: 50%; color: var(--c-text-muted); list-style: none; cursor: pointer; }
.pl-need__more > summary::-webkit-details-marker { display: none; }
.pl-need__more[open] { margin-top: var(--s-3); }
.pl-need__more[open] > summary { color: var(--c-primary); }

/* s-public.css */
/* Herkese açık kabuk ile Çiftliğim, Tümü ve arazi listesi ekranları */

/* Herkese açık üst menü ve alt bilgi (home.php, public.php) */
.brand { display: inline-flex; align-items: center; font-size: 1.107rem; letter-spacing: -0.02em; }
.ico { width: 1.25em; height: 1.25em; flex: none; display: inline-block; vertical-align: -0.25em; fill: none; stroke: currentColor; stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; }
.site-header { position: sticky; top: 0; z-index: 30; }
.site-header__inner { flex-wrap: nowrap; }
.site-nav a:not(.btn) { font-size: 0.769rem; }
.site-nav a:not(.btn):hover { color: var(--c-primary); }
.site-actions { display: flex; align-items: center; gap: var(--s-2); }
.site-login { display: inline-flex; align-items: center; justify-content: center; min-width: var(--tap); min-height: var(--tap); color: var(--c-text); font-weight: 600; font-size: 0.769rem; text-decoration: none; }
.site-login span { display: none; }
.site-menu summary { display: inline-flex; align-items: center; justify-content: center; width: var(--tap); height: var(--tap); border-radius: var(--radius-sm); cursor: pointer; list-style: none; }
.site-menu summary::-webkit-details-marker { display: none; }
.site-menu__bars, .site-menu__bars::before, .site-menu__bars::after { display: block; width: 22px; height: 2px; border-radius: 2px; background: var(--c-text); }
.site-menu__bars { position: relative; }
.site-menu__bars::before, .site-menu__bars::after { content: ""; position: absolute; left: 0; }
.site-menu__bars::before { top: -7px; }
.site-menu__bars::after { top: 7px; }
.site-menu[open] .site-menu__bars { background: transparent; }
.site-menu[open] .site-menu__bars::before { top: 0; transform: rotate(45deg); }
.site-menu[open] .site-menu__bars::after { top: 0; transform: rotate(-45deg); }
.site-menu__panel { position: absolute; inset: 100% 0 auto; display: grid; padding: var(--s-2) var(--gutter) var(--s-4); background: var(--c-surface); border-bottom: 1px solid var(--c-border); box-shadow: 0 12px 24px rgb(16 40 26 / 0.12); }
.site-menu__panel a:not(.btn) { display: flex; align-items: center; min-height: var(--tap); color: var(--c-text); font-weight: 600; text-decoration: none; border-bottom: 1px solid var(--c-border); }
.site-menu__panel .btn { margin-top: var(--s-3); }
.site-header .site-nav, .site-header .site-reg { display: none; }
.site-footer__cols { display: grid; gap: var(--s-5); grid-template-columns: repeat(2, minmax(0, 1fr)); padding-block: var(--s-6) var(--s-4); }
.site-footer__brand { grid-column: 1 / -1; }
.site-footer__brand p { margin: var(--s-2) 0 0; }
.site-footer h2 { margin: 0 0 var(--s-2); font-size: 0.769rem; color: var(--c-text); }
.site-footer ul { display: grid; gap: var(--s-2); margin: 0; padding: 0; list-style: none; font-size: 0.769rem; }
.site-footer li a { display: inline-block; padding-block: 3px; }
@media (min-width: 1024px) {
  .site-header .site-nav { display: flex; }
  .site-header .site-reg { display: inline-flex; }
  .site-menu { display: none; }
  .site-login span { display: inline; padding-inline: var(--s-3); }
  .site-login .ico { display: none; }
  .site-footer__cols { grid-template-columns: 1.6fr repeat(4, minmax(0, 1fr)); }
  .site-footer__brand { grid-column: auto; }
}

/* Gruplu gezinme kartları */
.navgroups { display: grid; gap: var(--s-5); align-items: start; }
.navcard { margin: 0; padding: var(--s-1) var(--s-2); list-style: none; }
.navcard .rowlink { padding-inline: var(--s-1); border: 0; border-radius: 0; background: none; }
.navcard li + li .rowlink { border-top: 1px solid var(--c-border); }
.navcard a.rowlink:hover { background: var(--t-green); }
.navcard .tile { display: block; min-height: 0; padding: 0; border: 0; border-radius: 0; background: none; box-shadow: none; }
.navcard .tile .ibox { color: var(--tint-ink); }
.navcard .tile .rowlink__title { color: var(--c-text); }
.rows--cols .rowlink { height: 100%; }

@media (min-width: 768px) { .rows--cols { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1024px) { .navgroups { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

.site-header .brand img { height: 56px; }
.site-footer .brand img { height: 80px; }

/* s-pwa.css */
/* PWA: cihaz sayfası, çıkış penceresi. Dokunmatik ekranda hedef ve yazı boyutu. */
.app-banner .btn--ghost { color: var(--c-bg); }
.pwa-photo { max-width: 100%; max-height: 180px; border-radius: 9px; }
.pwa-photo[hidden] { display: none; }
.pwa-facts { display: grid; gap: 6px; margin: 0; }
.pwa-facts > div { display: flex; justify-content: space-between; gap: 12px; }
.pwa-facts dt { color: var(--c-text-muted); }
.pwa-facts dd { margin: 0; font-weight: 600; text-align: end; overflow-wrap: anywhere; }
.pwa-dialog { width: min(92vw, 360px); padding: 14px; border: 1px solid var(--c-border); border-radius: 12px; background: var(--c-surface); color: inherit; }
.pwa-dialog::backdrop { background: rgb(17 40 28 / 0.45); }
.pwa-dialog .btn { margin-top: 8px; }

/* iOS odaklanınca yakınlaştırmasın (16 px altı girişte yakınlaştırır) ve parmak hedefi 44 px olsun; masaüstü sıkı ölçüsü korunur */
@media (pointer: coarse) {
  /* html öneki: s-tiny.css derlemede sonra gelir, özgüllükle geçilir */
  html .input, html .select, html .textarea { min-height: 44px; font-size: 16px; }
  .btn, .card--row .btn, .btn--sm { position: relative; }
  .btn::after, .card--row .btn::after, .btn--sm::after { content: ""; position: absolute; inset: -5px 0; min-height: 44px; }
}

/* 340 px altında Pazar bandının görseli metnin üstüne biniyor */
@media (max-width: 340px) { .tk-ban__art { display: none; } }

/* s-tiny.css */
/* Kompakt son katman: başlıklar, düğmeler, alanlar ve üst/alt çubuk tek ölçüde. Her ekranın üstünde çalışır. */
body { line-height: 1.4; }
h1, h2, h3 { letter-spacing: -0.01em; text-wrap: pretty; }
h1, .page-head h1, .screen-head h1 { margin-bottom: 2px; font-size: var(--fs-2xl); font-weight: 700; }
h2 { margin-bottom: var(--s-2); font-size: var(--fs-xl); font-weight: 650; }
h3 { margin-bottom: var(--s-1); font-size: var(--fs-lg); font-weight: 650; }
.lead, .screen-sub, .page-head .muted, .page-head__sub { font-size: var(--fs-sm); color: var(--c-text-muted); }
.eyebrow { margin-bottom: 2px; font-size: 0.72rem; }
.page-head { margin-bottom: var(--s-3); }
.muted { color: var(--c-text-muted); }

/* Düğme ve alan */
.btn { min-height: var(--tap); padding: 0 var(--s-4); font-size: var(--fs-base); font-weight: 600; border-radius: 9px; }
.btn--sm { min-height: 30px; padding: 0 var(--s-3); font-size: var(--fs-sm); }
.btn--lg { min-height: calc(var(--tap) + 2px); font-size: var(--fs-base); }
.input, .select, .textarea { min-height: var(--tap); padding: 0 var(--s-3); border-radius: 9px; font-size: var(--fs-base); }
.textarea { padding-block: var(--s-2); }
.field { gap: 2px; }
.field__label { font-size: var(--fs-sm); }
.field__hint { font-size: 0.72rem; }
.choice { min-width: 0; min-height: 32px; font-size: var(--fs-base); }
.choice > span { min-width: 0; overflow-wrap: anywhere; }
:root:not([data-font="lg"]) .layout-app { --tap: 36px; }

/* Kart, liste */
.card, .tint-card { padding: var(--s-3); border-radius: 12px; }
.list__item { min-height: 36px; padding-block: var(--s-1); font-size: var(--fs-base); }
/* Başlık + tek cümle + tek düğme: kart tek şerit, düğme sağda */
.card--row { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 0 var(--s-3); align-items: center; padding-block: var(--s-2); }
.card--row > * { grid-column: 1; margin: 0; }
.card--row > h2, .card--row > h3 { font-size: var(--fs-base); }
.card--row > p { font-size: var(--fs-sm); color: var(--c-text-muted); }
.card--row > :last-child { grid-column: 2; grid-row: 1 / span 2; }
.card--row .btn { min-height: 30px; max-width: 10.5rem; padding-inline: var(--s-3); font-size: var(--fs-sm); line-height: 1.15; }
@media (min-width: 768px) {
  .card--row { grid-template-columns: auto minmax(0, 1fr) auto; }
  .card--row > p { grid-column: 2; grid-row: 1; }
  .card--row > :last-child { grid-column: 3; grid-row: 1; }
  .card--row .btn { max-width: none; }
}
.badge { font-size: 0.7rem; }
.alert { padding: var(--s-2) var(--s-3); font-size: var(--fs-sm); border-radius: 8px; }
.icon-btn { width: 32px; height: 32px; }
.icon-btn .ico { width: 18px; height: 18px; }

/* Üst ve alt çubuk */
.app-top { padding-block: calc(env(safe-area-inset-top) + 4px) 4px; }
.app-top .brand { font-size: 16px; }
.app-top .brand img { width: auto; height: 48px; margin-inline-end: 0; }
.tabbar__item { font-size: 10.5px; }
.tabbar__item .ico { width: 20px; height: 20px; }

/* Ekrana özel başlıklar da aynı ölçüde */
.layout-app .app-main h1 { font-size: var(--fs-2xl); line-height: 1.2; }
.cta-bar { min-height: 44px; padding-block: var(--s-2); }
.seg { padding: 2px; border-radius: 10px; }
.seg a, .seg button { min-height: 28px; font-size: var(--fs-sm); border-radius: 8px; }
.chip { min-height: 30px; padding: 0 var(--s-3); font-size: var(--fs-sm); border-radius: 10px; }
.mk-week li { padding-block: 2px; }
.grid-2 > .btn { align-self: end; justify-self: start; }
@media (min-width: 1024px) {
  /* Masaüstünde form alanları yan yana; tek sütun tüm genişliği boşa harcıyor */
  form.grid-2 { grid-template-columns: repeat(auto-fit, minmax(11rem, 1fr)); gap: var(--s-2) var(--s-3); align-items: end; }
  form.grid-2 > .choice { grid-column: span 2; }
  form.card.stack { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--s-2) var(--s-3); align-items: end; }
  form.card.stack > * { grid-column: 1 / -1; margin: 0; }
  form.card.stack > .field:not(fieldset):not(:has(textarea, .choice-list)) { grid-column: auto; }
  form.card.stack > .btn { grid-column: auto; justify-self: start; }
  form.card.stack > .grid-2 { display: contents; }
}
.stat__value { font-size: 1.1rem; }
.stat__value small { font-size: 0.75rem; }

/* Satır ve kutu */
.rowlink { min-height: 0; padding: 5px var(--s-3); gap: var(--s-3); }
.rowlink__meta { font-size: 12px; line-height: 1.3; }
.ibox { width: 30px; height: 30px; border-radius: 9px; }
.ibox .ico { width: 17px; height: 17px; }
.ibox--lg { width: 38px; height: 38px; border-radius: 10px; }
.ibox--lg .ico { width: 20px; height: 20px; }

/* Bugün ekranı masaüstü */
.wx { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 12px; padding: 8px 12px; border: 1px solid var(--c-border); border-radius: 12px; background: var(--t-blue); color: var(--c-text); text-decoration: none; }
.wx:hover { color: var(--c-text); }
.wx__place { display: inline-flex; align-items: center; gap: 4px; font-size: 13px; font-weight: 600; }
.wx__temp { font-size: 20px; font-weight: 800; }
.wx__temp small { font-size: 12px; vertical-align: 6px; }
.wx__sky { font-size: 13px; font-weight: 600; }
.wx__stats { flex: 1 1 18rem; margin: 0; }
.wx__stats dt { font-size: 11.5px; color: var(--c-text-muted); }
.wx__stats dd { font-size: 13px; font-weight: 700; }
.m-stat, .m-q { color: var(--c-text); background: var(--c-surface); }
.m-stat:hover, .m-q:hover { border-color: var(--c-primary); color: var(--c-text); }
.m-stat__l { display: block; font-size: 12px; color: var(--c-text-muted); }
.m-stat__v { display: block; font-size: 16px; font-weight: 800; }
.m-stat__v small { font-size: 12px; font-weight: 500; }
.m-sec { margin: 10px 0 5px; font-size: 14px; font-weight: 700; }
.m-assist { display: block; margin-top: 8px; padding: 10px 12px; border-radius: 12px; background: #17623e; color: #fff; text-decoration: none; }
.m-assist:hover { color: #fff; }
.m-assist b { display: block; font-size: 14px; }
.m-assist span { font-size: 12.5px; }

@media (min-width: 768px) {
  .m-stat, .m-q { min-height: 0; padding-block: 5px; }
  .m-stat img, .m-q img { width: 28px; height: 28px; }
  .m-assist { padding-block: 6px; }
}

@media (min-width: 1024px) {
  .tabbar { top: 0; min-height: 40px; }
  .tabbar__item { min-height: 40px; padding-block: 0; font-size: var(--fs-base); }
  .tabbar__item[aria-current="page"]::before { inset: 4px 4px; }
}

@media (max-width: 767px) {
  .app-main { padding-top: 4px; }
  /* Kapalı panelin kutusu yatay kaydırma üretmesin */
  .m-sheet:not([open]) .m-sheet__panel { display: none; }
  .tabbar { min-height: var(--tabbar-h); border-radius: 14px 14px 0 0; box-shadow: 0 -1px 8px rgb(17 40 28 / 0.08); }
  .tabbar__item { min-height: 46px; }
  .tabbar__item[aria-current="page"]::before { top: 2px; height: 26px; border-radius: 10px; }
  .icon-btn { width: 32px; height: 32px; }
  .icon-btn .ico { width: 19px; height: 19px; }
  .today-head h1 { font-size: 16px; margin: 0; }
  .today-head p { font-size: 12.5px; }
  .m-sec { margin: 8px 0 4px; font-size: 13.5px; }
  /* Bugün: kartlar kısa, ilk ekranda hepsi görünür */
  .wx { display: block; height: 124px; padding: 0; border: 0; border-radius: 14px; background: #bcdcf2 url(/img/m/weather.webp) center / cover no-repeat; }
  .wx__place { top: 7px; left: 10px; font-size: 12.5px; }
  .wx__temp { top: 24px; left: 10px; font-size: 26px; }
  .wx__temp small { font-size: 13px; vertical-align: 9px; }
  .wx__sky { top: 34px; left: 72px; font-size: 13px; }
  .wx__stats { left: 6px; right: 6px; bottom: 6px; height: 40px; border-radius: 10px; }
  .wx__stats .ico { width: 17px; height: 17px; }
  .wx__stats > div { gap: 5px; padding-inline-start: 8px; height: 26px; }
  .wx__stats dt { font-size: 11px; }
  .wx__stats dd { font-size: 12.5px; }
  .m-stats { gap: 6px; }
  .m-stat { height: 48px; gap: 7px; padding: 0 8px; border-radius: 11px; }
  .m-stat img { width: 30px; height: 30px; border-radius: 8px; }
  .m-stat__l { font-size: 11.5px; }
  .m-stat__v { font-size: 15.5px; }
  .m-stat__v small { font-size: 11.5px; }
  .m-quick { gap: 6px; }
  .m-q { height: 42px; gap: 6px; padding: 0 7px; border-radius: 10px; font-size: 12.5px; }
  .m-q img { width: 28px; height: 28px; }
  .m-assist { height: 54px; margin-top: 8px; padding: 9px 12px; border-radius: 12px; }
  .m-assist::after { width: 96px; }
  .m-assist b { font-size: 14px; }
  .m-assist span { margin-top: 1px; font-size: 12px; }
}

/* s-wizard.css */
/* Kurulum sihirbazı, üretim döngüsü, yol haritası. Proje standardına bağlıdır (s-tiny.css, --tap 36px): gövde 14, ikincil 12.6, yardım 11-11.5; h1 16-17, h2 15.4; düğme ve alan 36. Soru zeminde, cevap beyaz panelde. */
.layout-wizard { background: var(--c-surface-2); }
.wz { display: flex; flex-direction: column; width: 100%; max-width: 560px; min-height: 100dvh; margin-inline: auto; padding-top: env(safe-area-inset-top); font-size: 14px; line-height: 1.4; }

/* Üst şerit */
.wz-top { display: flex; align-items: center; gap: 6px; min-height: 40px; padding: 4px 11px; }
.wz-top__btn { display: inline-flex; align-items: center; justify-content: center; flex: none; width: 32px; height: 32px; margin-inline-start: -8px; color: var(--c-text); }
.wz-top__btn .ico { width: 18px; height: 18px; }
.wz-top__t { display: flex; flex: 1; flex-direction: column; min-width: 0; margin: 0; line-height: 1.2; }
.wz-top__t span { overflow: hidden; color: var(--c-text); font-size: 13px; font-weight: 700; text-overflow: ellipsis; white-space: nowrap; }
.wz-top__t b { color: var(--c-text-muted); font-size: 11px; font-weight: 500; }
.wz-top__exit { flex: none; padding: 6px 0; color: var(--c-primary); font-size: 12px; font-weight: 600; text-decoration: none; }
.wz-prog { display: block; width: 100%; height: 3px; }
.wz-prog__bg { fill: var(--c-border); }
.wz-prog__on { fill: var(--c-primary); }

.wz-main { display: flex; flex: 1; flex-direction: column; min-width: 0; padding: 11px 11px 0; }
.wz-form { display: flex; flex: 1; flex-direction: column; min-width: 0; }
.wz-form--end { flex: none; margin-top: auto; }
.wz-form > section[hidden] { display: none; }
.wz-form > .alert, .jy > .alert { margin-bottom: 8px; }
.wz-safe { display: flex; align-items: center; gap: 6px; margin: 6px 2px 0; color: var(--c-text-muted); font-size: 11.5px; }
.wz-gap { margin-top: 11px; }

/* Soru */
.wq { margin-bottom: 8px; }
.wq__tag { display: inline-block; margin: 0 0 3px; padding: 0 6px; border-radius: 5px; background: var(--c-border); color: var(--c-text-muted); font-size: 11px; font-weight: 600; line-height: 1.5; }
.wq__tag--req { background: var(--c-warning-bg); color: var(--c-warning); }
.wq__tag--ok { background: var(--c-success-bg); color: var(--c-success); }
.layout-wizard .wq__q { margin: 0; color: var(--c-text); font-size: 16.5px; font-weight: 700; line-height: 1.25; letter-spacing: -0.01em; }
.wq__help { margin: 2px 0 0; color: var(--c-text-muted); font-size: 12.6px; line-height: 1.35; }
.wq__err { margin: 3px 0 0; color: var(--c-error); font-size: 12.6px; font-weight: 600; }

/* Cevap paneli */
.wa { padding: 8px; border: 1px solid var(--c-border); border-radius: 12px; background: var(--c-surface); }
.wa + .wa { margin-top: 6px; }
.wa-more[hidden] { display: none; }
.wa-sub { margin: 0 0 6px; color: var(--c-text); font-size: 13px; font-weight: 650; }
.wa-note { margin: 6px 2px; color: var(--c-text-muted); font-size: 11.5px; }
.wa-note[hidden] { display: none; }

/* Alan: etiket kutunun içinde. Boşken ortada, odak veya doluyken üst kenarda; hiç kaybolmaz */
.wa-field { position: relative; display: block; min-height: 42px; padding: 15px 9px 1px; border: 1px solid var(--c-border); border-radius: 9px; background: var(--c-surface); }
.wa-field + .wa-field, .wa-note + .wa-field, .wa-geo + .wa-field { margin-top: 6px; }
.wa-field--gap { margin-top: 6px; }
.wa-field:focus-within { border-color: var(--c-primary); }
.wa-field > span:not(.sr-only) { position: absolute; top: 3px; inset-inline: 10px 8px; overflow: hidden; color: var(--c-text-muted); font-size: 11.2px; font-weight: 600; line-height: 1.2; white-space: nowrap; text-overflow: ellipsis; pointer-events: none; transition: top .12s, transform .12s, font-size .12s; }
.wa-field:has(> input[placeholder=" "]:placeholder-shown:not(:focus):not(:-webkit-autofill)) > span:not(.sr-only) { top: 50%; transform: translateY(-50%); font-size: 12.6px; font-weight: 500; }
.wa-field input, .wa-field select { display: block; width: 100%; min-height: 24px; padding: 0; border: 0; outline: 0; background: transparent; color: var(--c-text); font: inherit; font-size: 14px; font-weight: 500; }
.wa-field input::placeholder { color: var(--c-text-muted); font-weight: 400; opacity: 0.75; }
.wa-field--search { min-height: 36px; margin-bottom: 6px; padding-block: 5px; }
.wa-unit { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); gap: 6px; }
.wa-two { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; }
.wa-unit .wa-field, .wa-two .wa-field { margin: 0; }

.wa-geo { display: flex; align-items: center; justify-content: center; gap: 6px; width: 100%; min-height: 36px; border: 1px dashed var(--c-primary); border-radius: 9px; background: var(--c-success-bg); color: var(--c-primary); font: inherit; font-size: 13px; font-weight: 600; cursor: pointer; }
.wa-geo[hidden] { display: none; }

/* Seçenek kartı: seçilince yeşil kenar, yazı okunur kalır */
.wa-cards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; padding: 6px; }
.wa-cards--one { grid-template-columns: minmax(0, 1fr); }
.wa-card { position: relative; display: block; min-width: 0; }
.wa-card:last-child:nth-child(odd) { grid-column: 1 / -1; }
.wa-card input, .wa-chip input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.wa-card__in { display: flex; align-items: center; gap: 8px; height: 100%; min-height: 36px; padding: 4px 8px; border: 1px solid var(--c-border); border-radius: 9px; background: var(--c-surface); cursor: pointer; }
.wa-card__in > .ico { flex: none; width: 18px; height: 18px; color: var(--c-primary); }
.wa-card__in > span { display: flex; flex-direction: column; min-width: 0; }
.wa-card__in b { color: var(--c-text); font-size: 13.5px; font-weight: 650; line-height: 1.2; }
.wa-card__in small { color: var(--c-text-muted); font-size: 11.5px; line-height: 1.2; }
.wa-card input:checked + .wa-card__in { border-color: var(--c-primary); background: var(--c-success-bg); box-shadow: inset 0 0 0 1px var(--c-primary); }
.wa-card input:focus-visible + .wa-card__in, .wa-chip input:focus-visible + span { outline: 2px solid var(--c-focus); outline-offset: 2px; }

.wa-chips { display: flex; flex-wrap: wrap; gap: 6px; }
.wa-chip { position: relative; display: block; min-width: 0; }
.wa-chip[hidden] { display: none; }
.wa-chip span { display: flex; align-items: center; justify-content: center; min-height: 30px; padding: 2px 10px; border: 1px solid var(--c-border); border-radius: 9px; background: var(--c-surface); color: var(--c-text); font-size: 13px; font-weight: 550; line-height: 1.2; text-align: center; cursor: pointer; }
.wa-chip input:checked + span { border-color: var(--c-primary); background: var(--c-success-bg); color: var(--c-primary); font-weight: 650; box-shadow: inset 0 0 0 1px var(--c-primary); }

.wa-ideas { display: flex; flex-wrap: wrap; gap: 6px; }
.wa-ideas button { min-height: 30px; padding: 0 10px; border: 1px solid var(--c-border); border-radius: 15px; background: var(--c-surface-2); color: var(--c-text); font: inherit; font-size: 12.6px; font-weight: 550; cursor: pointer; }

.wa-folds { display: grid; gap: 3px; }
.wa-fold[hidden] { display: none; }
.wa-fold summary { display: flex; align-items: center; gap: 6px; min-height: 30px; padding: 0 8px; border-radius: 8px; background: var(--c-surface-2); color: var(--c-text); font-size: 13px; font-weight: 650; cursor: pointer; list-style: none; }
.wa-fold summary::-webkit-details-marker { display: none; }
.wa-fold summary::after { content: "+"; margin-inline-start: auto; font-size: 15px; font-weight: 500; }
.wa-fold[open] summary::after { content: "−"; }
.wa-fold summary b { display: grid; place-items: center; min-width: 17px; height: 17px; border-radius: 9px; background: var(--c-primary); color: var(--c-on-primary); font-size: 11px; }
.wa-fold .wa-chips { padding: 6px 2px; }

/* Ürün paylaşımı ve bilanço */
.wa-use { display: grid; grid-template-columns: minmax(0, 1fr) 84px 30px; gap: 6px; align-items: center; min-height: 36px; border-bottom: 1px solid var(--c-border); }
.wa-use span { color: var(--c-text); font-size: 13.5px; font-weight: 550; line-height: 1.2; }
.wa-use input { width: 100%; min-height: 30px; padding: 0 6px; border: 1px solid var(--c-border); border-radius: 8px; background: var(--c-surface); color: var(--c-text); font: inherit; font-size: 14px; font-weight: 600; text-align: end; }
.wa-use input:focus { border-color: var(--c-primary); outline: 0; }
.wa-use em { color: var(--c-text-muted); font-size: 11.5px; font-style: normal; }
.wa-left { margin: 6px 2px 0; color: var(--c-primary); font-size: 12.6px; font-weight: 650; }
.wa-left.is-over { color: var(--c-error); }
.wa-bal h2 { margin: 0 0 2px; color: var(--c-text); font-size: 14px; font-weight: 700; }
.wa-bal h2 small { color: var(--c-text-muted); font-size: 11.5px; font-weight: 500; }
.wa-bal p { margin: 0; color: var(--c-text-muted); font-size: 12.6px; }
.wa-bal b { color: var(--c-text); }

/* Yöntem kartları */
.wa-ways { display: grid; gap: 6px; padding: 6px; }
.wa-way { display: flex; align-items: center; gap: 8px; min-height: 44px; padding: 5px 8px; border: 1px solid var(--c-border); border-radius: 9px; color: var(--c-text); text-decoration: none; }
.wa-way--best { border-color: var(--c-primary); background: var(--c-success-bg); }
.wa-way > .ico:first-child { flex: none; width: 18px; height: 18px; color: var(--c-primary); }
.wa-way > .ico:last-child { flex: none; color: var(--c-text-muted); }
.wa-way > span { flex: 1; min-width: 0; }
.wa-way b { display: block; font-size: 13.5px; font-weight: 650; line-height: 1.2; }
.wa-way small { display: block; color: var(--c-text-muted); font-size: 11.5px; line-height: 1.25; }
.wa-have { display: flex; align-items: center; gap: 6px; margin: 0; color: var(--c-text); font-size: 14px; font-weight: 650; }
.wa-have .ico { color: var(--c-primary); }

/* Özet */
.wa-sum { display: grid; margin: 0; padding: 2px 8px; }
.wa-sum > div { display: grid; grid-template-columns: 76px minmax(0, 1fr) auto; gap: 6px; align-items: center; min-height: 32px; padding: 3px 0; border-bottom: 1px solid var(--c-border); }
.wa-sum > div:last-child { border-bottom: 0; }
.wa-sum dt { color: var(--c-text-muted); font-size: 12px; }
.wa-sum dd { margin: 0; color: var(--c-text); font-size: 13px; font-weight: 600; line-height: 1.25; overflow-wrap: anywhere; }
.wa-sum dd.is-empty { color: var(--c-text-muted); font-weight: 400; }
.wa-sum a { color: var(--c-primary); font-size: 12px; font-weight: 600; text-decoration: none; }
.wa-after { margin: 6px 2px 0; }
.wa-after a { display: inline-flex; align-items: center; gap: 4px; padding: 3px 0; color: var(--c-primary); font-size: 13px; font-weight: 600; text-decoration: none; }

/* Alt çubuk: tek düğme tam genişlik olmaz, sola yaslanır */
.wf { position: sticky; bottom: 0; z-index: 5; display: flex; align-items: center; gap: 6px; margin: auto -11px 0; padding: 6px 11px calc(6px + env(safe-area-inset-bottom)); border-top: 1px solid var(--c-border); background: var(--c-surface-2); }
.wz-form > section:has(+ .wf), .wz-form > .wa-after, .wz-form > .wa-sum { margin-bottom: 11px; }
.wf__back { display: inline-flex; align-items: center; justify-content: center; flex: none; width: 36px; height: 36px; border: 1px solid var(--c-border); border-radius: 9px; background: var(--c-surface); color: var(--c-text); cursor: pointer; }
.wf__back[hidden] { display: none; }
.wf__back .ico { width: 17px; height: 17px; }
.wf__next { order: 1; display: inline-flex; flex: none; align-items: center; justify-content: center; gap: 6px; max-width: 100%; min-height: 36px; padding: 0 14px; border: 0; border-radius: 9px; background: var(--c-primary); color: var(--c-on-primary); font: inherit; font-size: 14px; font-weight: 650; cursor: pointer; }
.wf__next .ico { width: 16px; height: 16px; }
.wf__next:hover { background: var(--c-primary-hover); }
.wf__next[disabled] { opacity: 0.7; cursor: progress; }
.wf__skip { order: 2; flex: none; min-height: 36px; padding: 0 6px; border: 0; background: none; color: var(--c-text-muted); font: inherit; font-size: 12.6px; font-weight: 600; cursor: pointer; }

/* Harita */
.wz-map { flex: 1; gap: 6px; }
.wz-map .page-head { margin: 0; }
.layout-wizard .wz-map h1 { font-size: 16.5px; font-weight: 700; }
.wz-map .page-head .muted { font-size: 12.6px; line-height: 1.3; }
.wz-map .map { flex: 1 1 auto; height: auto; min-height: 46dvh; border-radius: 12px; }
.wz-map .map-toolbar { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 3px; }
.wz-map .map-toolbar .btn { justify-content: center; min-width: 0; min-height: 30px; padding-inline: 3px; font-size: 12.6px; grid-column: span 2; }
.wz-map .map-toolbar [data-map-mode] { grid-column: span 3; }
.wz-map .map-stats { margin: 0 2px; font-size: 12.6px; }
.map-save { position: sticky; bottom: calc(var(--tabbar-h) + env(safe-area-inset-bottom) + 4px); z-index: 500; display: flex; align-items: center; gap: 6px; padding: 6px; border-top: 1px solid var(--c-border); border-radius: 9px; background: var(--c-surface-2); }
.map-save > :not(.btn) { display: none; }
.map-save .btn { justify-content: center; min-height: 36px; width: auto; padding-inline: 12px; font-size: 13px; line-height: 1.15; text-align: center; }
.map-save .btn--primary { order: 1; font-size: 14px; }
.map-save a.btn { order: 2; }
.wz-map .map-save { bottom: 0; margin-inline: -11px; padding: 6px 11px calc(6px + env(safe-area-inset-bottom)); border-radius: 0; }

/* Yol haritası */
.jy { display: grid; gap: 8px; padding-bottom: calc(14px + env(safe-area-inset-bottom)); }
.jy-hero { display: flex; align-items: center; gap: 8px; padding: 8px 10px; border-radius: 12px; background: #174d3a; color: #fff; }
.layout-wizard .jy-hero h1 { margin: 0; color: #fff; font-size: 16.5px; font-weight: 700; line-height: 1.2; }
.jy-hero p { margin: 1px 0 0; color: #d7e8de; font-size: 12px; line-height: 1.3; }
.jy-ring { flex: none; width: 44px; height: 44px; }
.jy-ring circle, .jbar__ring circle, .jcard__ring circle { fill: none; stroke-width: 3.4; }
.jy-ring circle { stroke: rgb(255 255 255 / 20%); }
.jy-ring .on, .jbar__ring .on, .jcard__ring .on { stroke-linecap: round; transform: rotate(-90deg); transform-origin: 18px 18px; }
.jy-ring .on { stroke: #8fe0ae; }
.jy-ring text { fill: #fff; font-size: 9.5px; font-weight: 700; text-anchor: middle; }
.jy-done { display: flex; align-items: center; gap: 6px; margin: 0; padding: 6px 8px; border-radius: 9px; background: var(--c-success-bg); color: var(--c-success); font-size: 12.6px; font-weight: 600; line-height: 1.3; }
.jy-done .ico { flex: none; width: 17px; height: 17px; }
.jy-intent { display: flex; align-items: center; justify-content: space-between; min-height: 36px; padding: 0 10px; border: 1px solid var(--c-primary); border-radius: 9px; color: var(--c-primary); font-size: 13px; font-weight: 650; text-decoration: none; }

.jy-next { padding: 8px 10px; border: 1px solid var(--c-primary); border-radius: 12px; background: var(--c-surface); }
.jy-next__k { display: flex; align-items: center; justify-content: space-between; gap: 6px; margin: 0; color: var(--c-primary); font-size: 11.5px; font-weight: 700; }
.jy-next__k span { display: inline-flex; align-items: center; gap: 3px; flex: none; color: var(--c-text-muted); font-weight: 500; }
.layout-wizard .jy-next h2 { margin: 1px 0 0; color: var(--c-text); font-size: 15.4px; font-weight: 700; line-height: 1.25; }
.jy-next__why { margin: 1px 0 6px; color: var(--c-text-muted); font-size: 12.6px; line-height: 1.3; }
.jy-next__go { display: inline-flex; align-items: center; justify-content: center; gap: 6px; min-height: 36px; padding: 0 14px; border-radius: 9px; background: var(--c-primary); color: var(--c-on-primary); font-size: 14px; font-weight: 650; text-decoration: none; }
.jy-next__go .ico { width: 16px; height: 16px; }
.jy-next__go--end { justify-self: start; }
.jy-next form { display: inline-block; margin-inline-start: 6px; }
.jy-next__skip { min-height: 30px; padding: 0 6px; border: 0; background: none; color: var(--c-text-muted); font: inherit; font-size: 12.6px; font-weight: 600; cursor: pointer; }

.layout-wizard .jy-h { margin: 3px 2px 6px; color: var(--c-text); font-size: 14.7px; font-weight: 700; }
.jy-path { margin: 0; padding: 0; list-style: none; }
.jy-phase { margin: 3px 0 6px; color: var(--c-primary); font-size: 12px; font-weight: 700; }
.jy-node { position: relative; display: flex; gap: 8px; min-height: 36px; }
.jy-node::before { content: ""; position: absolute; inset-block: 24px 0; inset-inline-start: 11px; width: 2px; background: var(--c-border); }
.jy-node:last-child::before, .jy-node:has(+ .jy-phase)::before { display: none; }
.jy-node--done::before { background: var(--c-primary); }
.jy-node__dot { z-index: 1; display: grid; place-items: center; flex: none; width: 24px; height: 24px; border-radius: 50%; background: var(--c-surface); box-shadow: inset 0 0 0 1.5px var(--c-border); color: var(--c-text-muted); }
.jy-node__dot .ico { width: 13px; height: 13px; }
.jy-node--done .jy-node__dot { background: var(--c-primary); box-shadow: none; color: var(--c-on-primary); }
.jy-node--current .jy-node__dot { background: var(--c-success-bg); box-shadow: inset 0 0 0 1.5px var(--c-primary); color: var(--c-primary); }
.jy-node__t { display: flex; flex: 1; flex-direction: column; min-width: 0; padding-bottom: 6px; color: inherit; line-height: 1.2; text-decoration: none; }
.jy-node__t b { color: var(--c-text); font-size: 13.5px; font-weight: 600; }
.jy-node__t small { color: var(--c-text-muted); font-size: 11.5px; }
.jy-node--locked .jy-node__t b { color: var(--c-text-muted); font-weight: 500; }
.jy-node--current .jy-node__t small { color: var(--c-primary); font-weight: 600; }

.jy-due ul { display: grid; gap: 6px; margin: 0; padding: 0; list-style: none; }
.jy-due a { display: flex; align-items: center; gap: 6px; min-height: 36px; padding: 4px 8px; border: 1px solid var(--c-warning); border-radius: 9px; background: var(--c-warning-bg); color: var(--c-text); text-decoration: none; }
.jy-due span { display: flex; flex: 1; flex-direction: column; min-width: 0; line-height: 1.2; }
.jy-due b { font-size: 13.5px; font-weight: 650; }
.jy-due small { color: var(--c-warning); font-size: 11.5px; font-weight: 600; }
.jy-due em { flex: none; color: var(--c-primary); font-size: 12.6px; font-style: normal; font-weight: 650; }

.jy-outs { display: flex; flex-wrap: wrap; align-items: center; gap: 3px 14px; }
.jy-out { display: inline-flex; align-items: center; min-height: 30px; border: 0; background: none; color: var(--c-text-muted); font: inherit; font-size: 12.6px; font-weight: 600; text-decoration: underline; cursor: pointer; }

/* Uygulama içi hatırlatma ve ana ekran kartı */
.jbar { display: flex; align-items: center; gap: 8px; min-height: 36px; margin-bottom: var(--s-3); padding: 3px 8px; border: 1px solid var(--c-border); border-radius: 9px; background: var(--c-surface); color: var(--c-text); text-decoration: none; }
.jbar__ring { flex: none; width: 22px; height: 22px; }
.jbar__ring circle, .jcard__ring circle { stroke: var(--c-border); }
.jbar__ring .on, .jcard__ring .on { stroke: var(--c-primary); }
.jbar__t { display: flex; flex: 1; flex-direction: column; min-width: 0; line-height: 1.2; }
.jbar__t small { color: var(--c-text-muted); font-size: 11px; }
.jbar__t b { overflow: hidden; font-size: 12.6px; font-weight: 650; text-overflow: ellipsis; white-space: nowrap; }
.jbar > .ico { flex: none; color: var(--c-text-muted); }
.jcard { display: flex; align-items: center; gap: 8px; padding: 6px 8px; border: 1px solid var(--c-primary); border-radius: 12px; background: var(--c-surface); color: var(--c-text); text-decoration: none; }
.jcard__ring { flex: none; width: 32px; height: 32px; }
.jcard__t { display: flex; flex: 1; flex-direction: column; min-width: 0; line-height: 1.25; }
.jcard__t small { color: var(--c-primary); font-size: 11px; font-weight: 600; }
.jcard__t b { font-size: 13.5px; font-weight: 700; }
.jcard__t span { color: var(--c-text-muted); font-size: 11.5px; }
.jcard > .ico { flex: none; color: var(--c-text-muted); }
.jcard__more { margin: 0 2px; font-size: 12px; }
.jcard__more a { color: var(--c-primary); font-weight: 600; }

/* iOS odaklanınca sayfayı büyütmesin */
@supports (-webkit-touch-callout: none) {
  .wa-field input, .wa-field select, .wa-use input { font-size: 16px; }
}

