/* =============================================================================
   FlowerTurkiye tasarim sistemi (sft-)
   Kaynak: docs/research/design-direction.md. FlowerEast'ten bilincli ayrisma:
   yesil yok, krem yok, yuvarlak font yok, hap buton yok, carousel yok.
   Bilesenler yalnizca semantik token'lari kullanir; ham paleti degil.
   ========================================================================== */

:root {
  --ink-900:#14171F; --ink-700:#3A4150; --ink-500:#5C6474; --ink-400:#7A8191;
  --line:#D9DCE3; --paper:#FAF9F7; --white:#FFFFFF; --mist:#EEF1F4; --stone:#F2EFEA;
  --iznik-800:#12264A; --iznik-600:#1F4E8C; --iznik-300:#A9C1E6;
  --tulip-600:#B01E35; --tulip-100:#FBEAEC;
  --teal-700:#1C6468; --teal-100:#E6F1F1;
  --brass-600:#8C6A2F; --saffron-400:#E0A526;

  --color-bg:var(--paper); --color-surface:var(--white); --color-surface-alt:var(--mist);
  --color-text:var(--ink-900); --color-text-muted:var(--ink-500);
  --color-action:var(--iznik-800); --color-action-hover:#0B1A36; --color-on-action:var(--white);
  --color-link:var(--iznik-600); --color-focus:var(--iznik-600);
  --color-urgent:var(--tulip-600); --color-urgent-bg:var(--tulip-100);
  --color-success:var(--teal-700); --color-success-bg:var(--teal-100);
  --color-border-ui:var(--ink-400); --color-border-deco:var(--line);

  --font-display:"Cormorant Garamond",Georgia,"Times New Roman",serif;
  --font-ui:"Manrope",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;

  --fs-display:clamp(2.5rem,1.6rem + 3.9vw,4.5rem);
  --fs-h1:clamp(2.125rem,1.66rem + 2vw,3.25rem);
  --fs-h2:clamp(1.75rem,1.44rem + 1.33vw,2.5rem);
  --fs-h3:clamp(1.375rem,1.22rem + .66vw,1.75rem);
  --fs-lead:clamp(1.0625rem,1rem + .22vw,1.1875rem);
  --fs-body:1rem; --fs-ui:.9375rem; --fs-small:.875rem; --fs-eyebrow:.75rem;
  --fs-price:clamp(1.125rem,1.07rem + .22vw,1.25rem);

  --s-1:4px; --s-2:8px; --s-3:12px; --s-4:16px; --s-5:24px; --s-6:32px; --s-7:48px; --s-8:64px; --s-9:96px;
  --radius-sm:2px; --radius:4px; --radius-lg:8px;
  --shadow-pop:0 8px 24px rgba(20,23,31,.10);
  --shadow-sheet:0 -8px 24px rgba(20,23,31,.08);
  --ease:cubic-bezier(.2,.7,.2,1); --dur-1:120ms; --dur-2:220ms; --dur-3:400ms;
  --container:1280px; --gutter:clamp(16px,4vw,40px);

  /* Iznik 8 kollu yildiz deseni — dekoratif, yalnizca koyu zeminlerde dusuk opaklikla */
  --pattern-iznik:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='56' viewBox='0 0 56 56'%3E%3Cg fill='none' stroke='%23ffffff' stroke-width='.8'%3E%3Crect x='16' y='16' width='24' height='24'/%3E%3Crect x='16' y='16' width='24' height='24' transform='rotate(45 28 28)'/%3E%3C/g%3E%3C/svg%3E");
}
html[dir="rtl"], :lang(ar) {
  --font-display:"Amiri",Georgia,serif;
  --font-ui:"IBM Plex Sans Arabic",system-ui,"Segoe UI",Tahoma,sans-serif;
}

/* ---- Taban (Evara'nin govde ayarlarini ezer) ---- */
html { -webkit-text-size-adjust:100%; }
body {
  font:400 var(--fs-body)/1.6 var(--font-ui);
  color:var(--color-text);
  background:var(--color-bg);
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3,.sft-display { font-family:var(--font-display); font-weight:600; color:var(--color-text); text-wrap:balance; letter-spacing:-.005em; }
h4,h5,h6 { font-family:var(--font-ui); color:var(--color-text); }
a { color:var(--color-link); }
:focus-visible { outline:2px solid var(--color-focus); outline-offset:2px; }
.on-dark :focus-visible { outline-color:var(--saffron-400); }
@media (prefers-reduced-motion:reduce) { *{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important} }

.sft-container { width:100%; max-width:var(--container); margin-inline:auto; padding-inline:var(--gutter); }
.sft-visually-hidden { position:absolute!important; width:1px; height:1px; margin:-1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0; }
.sft-eyebrow { font:700 var(--fs-eyebrow)/1.2 var(--font-ui); letter-spacing:.16em; text-transform:uppercase; color:var(--ink-700); margin:0 0 var(--s-3); }
.sft-lead { font-size:var(--fs-lead); line-height:1.55; color:var(--ink-700); max-width:60ch; }
.sft-linkbtn { background:none; border:0; padding:0; color:inherit; font:inherit; text-decoration:underline; text-underline-offset:3px; cursor:pointer; }

/* ---- Butonlar: koseli, hap yok ---- */
.sft-btn {
  display:inline-flex; align-items:center; justify-content:center; gap:var(--s-2);
  min-height:48px; padding:0 var(--s-5);
  font:600 var(--fs-ui)/1.2 var(--font-ui); letter-spacing:.01em;
  border:1px solid var(--color-action); border-radius:var(--radius);
  background:var(--color-action); color:var(--color-on-action); text-decoration:none; cursor:pointer;
  transition:background var(--dur-1) var(--ease), transform var(--dur-1) var(--ease);
}
.sft-btn:hover { background:var(--color-action-hover); color:var(--color-on-action); }
.sft-btn:active { transform:translateY(1px); }
.sft-btn--ghost { background:transparent; color:var(--color-action); }
.sft-btn--ghost:hover { background:var(--color-action); color:var(--white); }
.sft-btn--block { width:100%; }
.sft-btn .sft-arrow { transition:transform var(--dur-2) var(--ease); }
.sft-btn:hover .sft-arrow { transform:translateX(3px); }

.sft-iconbtn {
  display:inline-grid; place-items:center; width:44px; height:44px; position:relative;
  border:0; background:transparent; color:var(--ink-900); border-radius:var(--radius); cursor:pointer; text-decoration:none;
}
.sft-iconbtn:hover { background:var(--mist); color:var(--ink-900); }

/* ---- Utility seridi ---- */
.sft-utility { background:var(--iznik-800); color:#fff; font-size:13px; }
.sft-utility__row { display:flex; align-items:center; justify-content:space-between; gap:var(--s-4); min-height:34px; }
.sft-utility__msg { margin:0; color:#fff; font-variant-numeric:tabular-nums; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.sft-utility__msg strong { color:#fff; }
.sft-utility__tools { display:flex; gap:var(--s-4); flex-shrink:0; }
.sft-utility .sft-menu summary { color:#fff; }

/* ---- Acilir menu (details) ---- */
.sft-menu { position:relative; }
.sft-menu summary { list-style:none; cursor:pointer; padding:var(--s-2) 0; font-weight:600; }
.sft-menu summary::-webkit-details-marker { display:none; }
.sft-menu__list {
  position:absolute; inset-inline-end:0; top:100%; z-index:60; min-width:180px; margin:0; padding:var(--s-2) 0; list-style:none;
  background:var(--white); border:1px solid var(--line); border-radius:var(--radius); box-shadow:var(--shadow-pop);
}
.sft-menu__list--wide { inset-inline-start:0; inset-inline-end:auto; min-width:260px; }
.sft-menu__list a { display:block; padding:10px var(--s-4); color:var(--ink-900); text-decoration:none; font-size:var(--fs-ui); }
.sft-menu__list a:hover, .sft-menu__list a[aria-current] { background:var(--mist); color:var(--iznik-800); }

/* ---- Header ---- */
.sft-header { position:sticky; top:0; z-index:50; background:rgba(250,249,247,.96); backdrop-filter:saturate(1.2) blur(8px); border-bottom:1px solid var(--line); transition:transform var(--dur-2) var(--ease); }
.sft-header.is-hidden { transform:translateY(-100%); }
.sft-header__row { display:flex; align-items:center; gap:var(--s-5); min-height:76px; }
.sft-header__brand { text-decoration:none; color:var(--ink-900); flex-shrink:0; }
.sft-header__burger { display:none; }
.sft-header__actions { display:flex; gap:var(--s-1); margin-inline-start:auto; }
.sft-nav ul { display:flex; gap:var(--s-5); list-style:none; margin:0; padding:0; align-items:center; }
.sft-nav a, .sft-nav summary { color:var(--ink-900); text-decoration:none; font:600 var(--fs-ui)/1.2 var(--font-ui); padding:var(--s-2) 0; border-bottom:1px solid transparent; }
.sft-nav a:hover { border-bottom-color:var(--ink-900); }
.sft-cart-btn__count {
  position:absolute; top:4px; inset-inline-end:2px; min-width:18px; height:18px; padding:0 5px;
  border-radius:9px; background:var(--tulip-600); color:#fff; font:700 11px/18px var(--font-ui); text-align:center;
}

/* ---- Logo ---- */
.sft-logo { display:inline-flex; align-items:center; gap:12px; color:var(--iznik-800); }
/* Rozet yaziyla esit agirlikta okunmali (geri bildirim 28.10.2026: "ikon biraz daha buyumeli"). */
.sft-logo__mark { flex-shrink:0; width:54px; height:54px; }
.sft-logo__tulip { fill:var(--tulip-600); }
.sft-logo__type { display:flex; flex-direction:column; line-height:1; }
.sft-logo__name { font:700 29px/1 var(--font-display); color:var(--iznik-800); letter-spacing:-.005em; white-space:nowrap; }
.sft-logo__name em { font-style:italic; font-weight:600; color:var(--tulip-600); }
.sft-logo__tag { font:700 10px/1.2 var(--font-ui); letter-spacing:.2em; text-transform:uppercase; color:var(--ink-700); margin-top:6px; }
.sft-logo--light, .sft-logo--light .sft-logo__name, .sft-logo--light .sft-logo__tag { color:#fff; }
.sft-logo--light .sft-logo__name em { color:#F3A9B5; }

/* ---- Mobil cekmece ---- */
.sft-drawer-backdrop { position:fixed; inset:0; background:rgba(20,23,31,.45); z-index:90; }
.sft-drawer {
  position:fixed; inset-block:0; inset-inline-start:0; width:min(88vw,380px); z-index:91; overflow-y:auto;
  background:var(--paper); padding:var(--s-4) var(--s-5) var(--s-7); box-shadow:var(--shadow-pop);
}
.sft-drawer__head { display:flex; align-items:center; justify-content:space-between; margin-bottom:var(--s-5); }
.sft-drawer__list, .sft-drawer__langs { list-style:none; margin:0; padding:0; }
.sft-drawer__list a { display:block; padding:14px 0; border-bottom:1px solid var(--line); color:var(--ink-900); text-decoration:none; font:500 var(--fs-h3)/1.2 var(--font-display); }
.sft-drawer__minor a { font:500 var(--fs-ui)/1.3 var(--font-ui); padding:12px 0; color:var(--ink-700); }
.sft-drawer__langs { display:flex; flex-wrap:wrap; gap:var(--s-3); margin-top:var(--s-5); }
.sft-drawer__langs a { color:var(--ink-700); text-decoration:none; font-size:var(--fs-small); }
.sft-drawer__langs a[aria-current] { color:var(--iznik-800); font-weight:700; text-decoration:underline; }

/* ---- Hero ---- */
.sft-hero { position:relative; background:var(--paper); overflow:hidden; }
.sft-hero__grid { display:grid; grid-template-columns:5fr 7fr; align-items:stretch; min-height:min(66vh,620px); }
.sft-hero__copy { padding:var(--s-8) var(--s-7) var(--s-7) 0; display:flex; flex-direction:column; justify-content:center; position:relative; z-index:2; }
.sft-hero__title { font:500 var(--fs-display)/1.02 var(--font-display); letter-spacing:-.01em; margin:0 0 var(--s-4); }
.sft-hero__title em { font-style:italic; color:var(--iznik-600); }
/* Gorsel viewport'un sag kenarina tasar (container 1280'de biterken bos serit kaliyordu). */
.sft-hero__media { position:relative; margin-inline-end:calc(-1 * (max(0px, (100vw - var(--container)) / 2) + var(--gutter))); }
.sft-hero__media img, .sft-hero__media picture { display:block; width:100%; height:100%; object-fit:cover; }
/* Sanat SVG'si satir yuksekligini BELIRLEMEMELI: 880x1100 viewBox genislige gore ~1050px boy
   uretip hero'yu ekrandan tasiriyordu ("sayfa bu kadar" hissi). Yukseklik metin kolonundan gelir. */
.sft-hero__media > svg { position:absolute; inset:0; width:100%; height:100%; }
.sft-hero__chip {
  position:absolute; inset-inline-start:var(--s-5); top:var(--s-5); z-index:2;
  display:flex; gap:var(--s-2); align-items:center; max-width:calc(100% - 48px);
  padding:var(--s-2) var(--s-3); background:rgba(255,255,255,.92); border-radius:var(--radius);
  font-size:var(--fs-small); color:var(--ink-900);
}
.sft-hero__chip svg { color:var(--teal-700); flex-shrink:0; }

/* ---- Teslimat bulucu ---- */
.sft-finder {
  margin-top:var(--s-5); margin-inline-end:calc(-1 * var(--s-7)); position:relative; z-index:3;
  background:var(--white); border:1px solid var(--line); border-radius:var(--radius); padding:var(--s-5);
  box-shadow:0 18px 40px rgba(18,38,74,.08);
}
.sft-finder__title { font:600 1.0625rem/1.3 var(--font-ui); margin:0 0 var(--s-4); color:var(--ink-900); }
/* Konum alani tam satir: "Yenişehir, Viranşehir/Şanlıurfa" gibi uzun etiketler dar kolonda kesiliyordu. */
.sft-finder__fields { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:var(--s-3); margin-bottom:var(--s-3); align-items:end; }
.sft-field--loc { grid-column:1 / -1; }
.sft-finder__submit { min-height:52px; white-space:nowrap; }
.sft-field { position:relative; display:flex; flex-direction:column; gap:6px; }
.sft-field__label { font:600 12px/1.2 var(--font-ui); letter-spacing:.06em; text-transform:uppercase; color:var(--ink-700); }
.sft-input {
  width:100%; min-height:52px; padding:0 var(--s-4); font:500 16px/1.2 var(--font-ui); color:var(--ink-900);
  background:var(--white); border:1px solid var(--color-border-ui); border-radius:var(--radius);
  transition:border-color var(--dur-1) var(--ease), box-shadow var(--dur-1) var(--ease);
}
.sft-input:focus { outline:none; border-color:var(--iznik-600); box-shadow:0 0 0 3px rgba(31,78,140,.18); }
.sft-input--icon { padding-inline-start:44px; }
.sft-field__icon { position:absolute; inset-inline-start:14px; bottom:15px; color:var(--ink-500); pointer-events:none; }
.sft-finder__cutoff { display:flex; gap:var(--s-2); align-items:center; margin:var(--s-3) 0 0; font-size:var(--fs-small); color:var(--tulip-600); font-variant-numeric:tabular-nums; }
/* Kapaliyken ayni cumle utility seridinde zaten var; panelde tekrarlanmaz. */
.sft-finder__cutoff.is-closed { display:none; }
.sft-finder__hint { margin:var(--s-3) 0 0; font-size:var(--fs-small); color:var(--ink-500); }
.sft-finder__hint a { color:var(--ink-700); }

.sft-suggest {
  position:absolute; top:calc(100% + 4px); inset-inline-start:0; width:max(100%, min(440px, 86vw)); z-index:70; margin:0; padding:var(--s-1) 0; list-style:none;
  max-height:340px; overflow-y:auto;
  background:var(--white); border:1px solid var(--line); border-radius:var(--radius); box-shadow:var(--shadow-pop);
}
.sft-suggest li { display:flex; gap:var(--s-3); align-items:flex-start; padding:12px var(--s-4); cursor:pointer; font-size:15px; line-height:1.35; }
.sft-suggest li svg { margin-top:2px; color:var(--iznik-600); flex-shrink:0; }
.sft-suggest li[aria-selected="true"], .sft-suggest li:hover { background:var(--mist); }
.sft-suggest li.is-closed { color:var(--ink-500); }
.sft-suggest__note { display:block; font-size:12px; color:var(--tulip-600); }
.sft-suggest__empty { color:var(--ink-500); cursor:default!important; }
.sft-suggest mark { background:none; color:inherit; font-weight:700; }
.sft-chips { display:flex; flex-wrap:wrap; gap:var(--s-2); margin-top:var(--s-3); }
.sft-chip { border:1px solid var(--line); background:var(--white); border-radius:var(--radius); padding:6px 12px; font:500 13px/1.2 var(--font-ui); color:var(--ink-700); cursor:pointer; }
.sft-chip:hover { border-color:var(--iznik-600); color:var(--iznik-800); }

/* ---- Guven seridi ---- */
.sft-trust { background:var(--mist); border-block:1px solid var(--line); }
.sft-trust__list { display:flex; justify-content:space-between; gap:var(--s-5); list-style:none; margin:0; padding:var(--s-4) 0; overflow-x:auto; scrollbar-width:none; }
.sft-trust__list::-webkit-scrollbar { display:none; }
.sft-trust__item { display:flex; align-items:center; gap:var(--s-2); white-space:nowrap; font:600 14px/1.3 var(--font-ui); color:var(--ink-900); }
.sft-trust__item svg { color:var(--iznik-600); flex-shrink:0; }

/* ---- Bolumler ---- */
.sft-section { padding-block:var(--s-9); }
.sft-section--alt { background:var(--stone); }
.sft-section--tight { padding-block:var(--s-8); }
.sft-section__head { display:flex; align-items:flex-end; justify-content:space-between; gap:var(--s-5); margin-bottom:var(--s-7); }
.sft-section__title { font-size:var(--fs-h2); line-height:1.12; margin:0; }
.sft-section__more { font:600 var(--fs-ui)/1.2 var(--font-ui); color:var(--ink-900); text-decoration:none; border-bottom:1px solid currentColor; padding-bottom:2px; white-space:nowrap; }

/* Vesileler: metin + kirpilmis cicek; 3:4 */
.sft-occasions { display:grid; grid-template-columns:repeat(6,1fr); gap:var(--s-4); }
.sft-occasion { position:relative; display:block; aspect-ratio:3/4; overflow:hidden; border-radius:var(--radius); text-decoration:none; color:#fff; background:var(--iznik-800); }
.sft-occasion img { width:100%; height:100%; object-fit:cover; transition:transform var(--dur-3) var(--ease); }
.sft-occasion:hover img { transform:scale(1.04); }
.sft-occasion::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(20,23,31,0) 45%, rgba(20,23,31,.72)); }
.sft-occasion__label { position:absolute; inset-inline:var(--s-4); bottom:var(--s-4); z-index:2; font:600 1.375rem/1.1 var(--font-display); }
.sft-occasion::before { content:""; position:absolute; inset:0; background-image:var(--pattern-iznik); opacity:.12; transition:opacity var(--dur-3) var(--ease); }
.sft-occasion:hover::before { opacity:.22; }
.sft-occasion:nth-child(6n+2) { background:var(--iznik-600); }
.sft-occasion:nth-child(6n+3) { background:var(--tulip-600); }
.sft-occasion:nth-child(6n+4) { background:var(--teal-700); }
.sft-occasion:nth-child(6n+5) { background:#2B2F3A; }
.sft-occasion:nth-child(6n+6) { background:var(--brass-600); }
.sft-occasion--calm::after { background:linear-gradient(180deg, rgba(18,38,74,.15) 30%, rgba(18,38,74,.82)); }

/* Urun izgarasi (ana sayfa): 4x2 masaustu, 2 sutun mobil */
.sft-products { display:grid; grid-template-columns:repeat(4,1fr); gap:var(--s-6) var(--s-5); }
.sft-card { display:flex; flex-direction:column; gap:var(--s-3); text-decoration:none; color:var(--ink-900); }
.sft-card__media { position:relative; aspect-ratio:4/5; overflow:hidden; background:var(--white); border-radius:var(--radius); }
.sft-card__media img { width:100%; height:100%; object-fit:cover; transition:transform var(--dur-3) var(--ease); }
.sft-card:hover .sft-card__media img { transform:scale(1.03); }
.sft-card__badge { position:absolute; top:var(--s-3); inset-inline-start:var(--s-3); padding:4px 8px; border-radius:var(--radius-sm); background:var(--white); font:700 11px/1.2 var(--font-ui); letter-spacing:.08em; text-transform:uppercase; color:var(--ink-900); }
.sft-card__badge--sale { background:var(--tulip-600); color:#fff; }
.sft-card__name { font:600 1rem/1.35 var(--font-ui); margin:0; }
.sft-card__meta { font-size:var(--fs-small); color:var(--ink-500); margin:0; }
.sft-card__price { font:700 var(--fs-price)/1.2 var(--font-ui); font-variant-numeric:tabular-nums; }
.sft-card__price del { font-weight:500; color:var(--ink-500); font-size:.85em; margin-inline-start:6px; }

/* Nasil calisir */
.sft-steps { display:grid; grid-template-columns:repeat(4,1fr); gap:var(--s-6); counter-reset:step; list-style:none; margin:0; padding:0; }
.sft-step { position:relative; padding-top:var(--s-6); border-top:1px solid var(--ink-900); }
.sft-step::before { counter-increment:step; content:"0" counter(step); position:absolute; top:var(--s-3); font:600 13px/1 var(--font-ui); letter-spacing:.12em; color:var(--tulip-600); }
.sft-step h3 { font-size:var(--fs-h3); margin:var(--s-3) 0 var(--s-2); }
.sft-step p { color:var(--ink-700); margin:0; }

/* Koyu editoryal bant (Iznik deseni) */
.sft-band { position:relative; background:var(--iznik-800); color:#fff; overflow:hidden; }
.sft-band::before { content:""; position:absolute; inset:0; background-image:var(--pattern-iznik); opacity:.06; }
.sft-band > * { position:relative; }
.sft-band h2, .sft-band h3 { color:#fff; }
.sft-band p { color:rgba(255,255,255,.82); }
.sft-band__grid { display:grid; grid-template-columns:1fr 1fr; gap:var(--s-8); align-items:center; }
.sft-band__quote { font:500 italic clamp(1.75rem,1.3rem + 1.6vw,2.75rem)/1.2 var(--font-display); margin:0; color:#fff; }
.sft-band__facts { display:grid; grid-template-columns:repeat(2,1fr); gap:var(--s-6); list-style:none; margin:0; padding:0; }
.sft-band__facts strong { display:block; font:500 clamp(2.25rem,1.8rem + 1.5vw,3.25rem)/1 var(--font-display); color:#fff; margin-bottom:var(--s-2); }
.sft-band__facts span { font-size:var(--fs-small); color:rgba(255,255,255,.75); }

/* Sehirler */
.sft-cities { display:grid; grid-template-columns:repeat(4,1fr); gap:0 var(--s-6); list-style:none; margin:0; padding:0; }
.sft-cities li { border-bottom:1px solid var(--line); }
.sft-cities a, .sft-cities span { display:flex; justify-content:space-between; padding:14px 0; color:var(--ink-900); text-decoration:none; font-weight:500; }
.sft-cities small { color:var(--ink-500); font-weight:500; }

/* SSS */
.sft-faq { max-width:820px; }
.sft-faq details { border-bottom:1px solid var(--line); }
.sft-faq summary { list-style:none; cursor:pointer; display:flex; justify-content:space-between; gap:var(--s-4); padding:var(--s-5) 0; font:600 1.0625rem/1.4 var(--font-ui); }
.sft-faq summary::-webkit-details-marker { display:none; }
.sft-faq summary::after { content:"+"; font:400 24px/1 var(--font-ui); color:var(--iznik-600); transition:transform var(--dur-2) var(--ease); }
.sft-faq details[open] summary::after { transform:rotate(45deg); }
.sft-faq p { margin:0 0 var(--s-5); color:var(--ink-700); max-width:68ch; }
.sft-faq-layout { display:grid; grid-template-columns:4fr 8fr; gap:var(--s-8); }

/* Hatirlatici */
.sft-reminder { display:grid; grid-template-columns:1fr auto; gap:var(--s-5); align-items:center; padding:var(--s-7); border:1px solid var(--line); background:var(--white); border-radius:var(--radius); }
.sft-reminder h2 { font-size:var(--fs-h3); margin:0 0 var(--s-2); }
.sft-reminder p { margin:0; color:var(--ink-700); }

/* ---- Footer ---- */
.sft-footer { position:relative; background:var(--iznik-800); color:rgba(255,255,255,.82); padding:var(--s-8) 0 var(--s-6); margin-top:0; }
.sft-footer::before { content:""; position:absolute; inset:0; background-image:var(--pattern-iznik); opacity:.05; pointer-events:none; }
.sft-footer > * { position:relative; }
.sft-footer__grid { display:grid; grid-template-columns:2fr 1fr 1fr 1.2fr; gap:var(--s-7); }
.sft-footer__claim { margin:var(--s-5) 0; max-width:42ch; font-size:var(--fs-small); color:rgba(255,255,255,.78); }
.sft-footer__title { font:700 var(--fs-eyebrow)/1.2 var(--font-ui); letter-spacing:.16em; text-transform:uppercase; color:#fff; margin:0 0 var(--s-4); }
.sft-footer__links { list-style:none; margin:0; padding:0; display:grid; gap:10px; }
.sft-footer a, .sft-footer .sft-linkbtn { color:rgba(255,255,255,.86); text-decoration:none; font-size:var(--fs-small); }
.sft-footer a:hover { color:#fff; text-decoration:underline; }
.sft-footer__muted { color:rgba(255,255,255,.62); font-size:13px; margin:0; }
.sft-footer__bottom { margin-top:var(--s-7); padding-top:var(--s-5); border-top:1px solid rgba(255,255,255,.14); display:grid; gap:var(--s-3); }
.sft-footer__legal { display:flex; flex-wrap:wrap; gap:var(--s-2) var(--s-5); list-style:none; margin:0; padding:0; }

/* ---- Duyarli ---- */
@media (max-width:1199px) {
  .sft-nav ul { gap:var(--s-4); }
  .sft-finder { margin-inline-end:0; }
  .sft-occasions { grid-template-columns:repeat(3,1fr); }
}
@media (max-width:991px) {
  .sft-header__burger { display:inline-grid; }
  .sft-nav { display:none; }
  .sft-header__row { min-height:60px; gap:var(--s-2); }
  .sft-logo__tag { display:none; }
  .sft-logo__name { font-size:23px; }
  .sft-logo__mark { width:46px; height:46px; }
  .sft-hero__grid { grid-template-columns:1fr; min-height:0; }
  .sft-hero__media { order:-1; margin-inline:calc(-1 * var(--gutter)); aspect-ratio:4/3; }
  .sft-hero__media::after { background:linear-gradient(180deg, rgba(250,249,247,0) 60%, rgba(250,249,247,.25)); }
  .sft-hero__copy { padding:var(--s-6) 0 var(--s-7); }
  .sft-products { grid-template-columns:repeat(2,1fr); gap:var(--s-5) var(--s-3); }
  .sft-steps { grid-template-columns:repeat(2,1fr); }
  .sft-band__grid, .sft-faq-layout { grid-template-columns:1fr; gap:var(--s-6); }
  .sft-cities { grid-template-columns:repeat(2,1fr); }
  .sft-footer__grid { grid-template-columns:1fr 1fr; }
  .sft-footer__brand { grid-column:1 / -1; }
}
@media (max-width:640px) {
  /* 375 px'te logo + 3 ikon tasiyordu (yatay kaydirma → tarayici sayfayi uzaklastiriyordu). */
  html, body { overflow-x:hidden; }
  .sft-header__row { gap:0; }
  .sft-header__brand { min-width:0; flex:1 1 auto; }
  .sft-logo { gap:6px; }
  .sft-logo__mark { width:42px; height:42px; }
  .sft-logo__name { font-size:20px; }
  .sft-header__actions .sft-iconbtn:not(.sft-cart-btn) { display:none; }
  .sft-utility__msg { font-size:12px; }
  .sft-section { padding-block:var(--s-8); }
  .sft-section__head { flex-direction:column; align-items:flex-start; margin-bottom:var(--s-5); }
  .sft-finder { padding:var(--s-4); margin-inline:calc(-1 * var(--s-2)); }
  .sft-finder__fields { grid-template-columns:1fr; }
  .sft-occasions { grid-template-columns:repeat(2,1fr); gap:var(--s-3); }
  .sft-steps { grid-template-columns:1fr; gap:var(--s-5); }
  .sft-reminder { grid-template-columns:1fr; padding:var(--s-5); }
  .sft-trust__list { justify-content:flex-start; }
  .sft-hero__chip { inset-inline-start:var(--s-3); top:var(--s-3); font-size:12px; }
  .sft-finder__fields { grid-template-columns:1fr; }
}

/* ===== Teslimat bolgesi sayfalari (/en/flower-delivery/...) ===== */
.sft-area-hero { padding-block:var(--s-8) var(--s-7); background:var(--color-surface-alt); border-bottom:1px solid var(--line); }
.sft-area-hero__grid { display:grid; grid-template-columns:7fr 5fr; gap:var(--s-8); align-items:end; }
.sft-area-hero__title { font:500 var(--fs-h1)/1.1 var(--font-display); color:var(--iznik-800); margin:var(--s-2) 0 var(--s-4); }
.sft-area-hero .sft-lead { max-width:62ch; margin-bottom:var(--s-5); }
.sft-area-hero .sft-eyebrow a { color:inherit; }
.sft-area-notice { padding:var(--s-3) var(--s-4); background:var(--color-urgent-bg); color:var(--color-urgent); border-radius:var(--radius); font-weight:600; }
.sft-area-facts { display:grid; grid-template-columns:repeat(2,1fr); gap:var(--s-5) var(--s-6); list-style:none; margin:var(--s-5) 0 0; padding:0; }
.sft-area-facts strong { display:block; font:500 clamp(1.75rem,1.4rem + 1.2vw,2.5rem)/1.05 var(--font-display); color:var(--iznik-800); margin-bottom:var(--s-1); overflow-wrap:anywhere; }
.sft-area-facts span { font-size:var(--fs-small); color:var(--ink-500); }
.sft-tags { display:flex; flex-wrap:wrap; gap:var(--s-2); list-style:none; margin:var(--s-5) 0 0; padding:0; }
.sft-tags li { padding:6px 12px; background:var(--white); border:1px solid var(--line); border-radius:999px; font-size:var(--fs-small); color:var(--ink-700); }
.sft-more { margin-top:var(--s-5); }
.sft-more summary { cursor:pointer; font-weight:600; color:var(--color-link); }
.sft-az { display:flex; flex-wrap:wrap; gap:var(--s-1); margin:var(--s-5) 0 var(--s-6); }
.sft-az a { display:inline-grid; place-items:center; min-width:40px; height:40px; border:1px solid var(--line); border-radius:var(--radius-sm); background:var(--white); color:var(--iznik-800); font-weight:600; text-decoration:none; }
.sft-az a:hover { border-color:var(--iznik-600); }
.sft-az-groups { columns:4 220px; column-gap:var(--s-7); }
.sft-az-group { break-inside:avoid; margin-bottom:var(--s-5); scroll-margin-top:96px; }
.sft-az-group h3 { font:500 1.75rem/1 var(--font-display); color:var(--tulip-600); margin:0 0 var(--s-2); }
.sft-az-group ul { list-style:none; margin:0; padding:0; }
.sft-az-group a { display:block; padding:6px 0; color:var(--ink-900); text-decoration:none; }
.sft-az-group a:hover { color:var(--iznik-600); text-decoration:underline; }
.sft-prose { max-width:760px; color:var(--ink-700); }
@media (max-width:991px) {
  .sft-area-hero__grid { grid-template-columns:1fr; gap:var(--s-5); }
}
@media (max-width:640px) {
  .sft-area-hero { padding-block:var(--s-6); }
  .sft-cities { grid-template-columns:1fr; }
}

/* ---- Hero seridi: mavi panonun altinda kayan teslimat fotograflari (168px; 132 kucuk kaliyordu) ---- */
.sft-hero__strip {
  position:absolute; inset-inline:0; bottom:0; z-index:2; overflow:hidden;
  padding:var(--s-4) 0; background:linear-gradient(180deg, rgba(18,38,74,0), rgba(18,38,74,.55) 40%);
  -webkit-mask-image:linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
          mask-image:linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
}
.sft-hero__strip-track { display:flex; gap:var(--s-3); width:max-content; animation:sft-strip 60s linear infinite; }
.sft-hero__strip:hover .sft-hero__strip-track { animation-play-state:paused; }
.sft-hero__strip img {
  width:168px; height:168px; object-fit:cover; border-radius:var(--radius);
  border:3px solid var(--paper); box-shadow:0 8px 24px rgba(0,0,0,.25); background:var(--paper);
}
@keyframes sft-strip { to { transform:translateX(-50%); } }
@media (prefers-reduced-motion:reduce) { .sft-hero__strip-track { animation:none; } }
/* Mobilde pano 4:3; serit kucuk kalmali ki lale kompozisyonunu ortmesin. */
@media (max-width:991px) {
  .sft-hero__strip { padding:var(--s-3) 0; }
  .sft-hero__strip img { width:92px; height:92px; border-width:2px; }
}

/* ===== Geri bildirim 28.10.2026 (2): menu, bayraklar, urun adi ve fiyat tipografisi ===== */
/* Nav'in "ul{display:flex}" kurali acilir listeyi YATAY diziyordu (Shop menusu tek satir). */
.sft-nav .sft-menu__list { display:block; padding:var(--s-2) 0; }
.sft-nav .sft-menu__list a { display:block; padding:10px var(--s-4); border-bottom:0; font-weight:500; white-space:nowrap; }
.sft-nav .sft-menu__list a:hover { border-bottom:0; }

.sft-flag { display:inline-block; vertical-align:-2px; border-radius:2px; box-shadow:0 0 0 1px rgba(0,0,0,.12); flex-shrink:0; }
.sft-menu summary { display:inline-flex; align-items:center; gap:6px; }
.sft-menu__list--flags a { display:flex; align-items:center; gap:10px; }
.sft-menu__list--flags small { margin-inline-start:auto; color:var(--ink-500); }
.sft-menu__note { padding:var(--s-2) var(--s-4) var(--s-1); max-width:260px; font-size:12px; line-height:1.4; color:var(--ink-500); border-top:1px solid var(--line); margin-top:var(--s-1); }
.sft-utility__tools { align-items:center; }
.sft-drawer__langs a { display:inline-flex; align-items:center; gap:8px; }

/* Urun adi ve fiyat (geri bildirim 28.10.2026, 3. tur).
   AD: Manrope 17px yari kalin; IKI SATIRA kirpilir ve iki satirlik yer AYRILIR — tek satirlik
   adlarin fiyati yukari kayiyor, ayni siradaki kartlarin fiyatlari farkli hizada duruyordu.
   FIYAT: once Cormorant (display serif) denendi; eski-usul rakamlari "telefon numarasi gibi"
   okundu, netlik kayboldu. Artik arayuz yazisi (Manrope 700), dik ve esit genislikte rakamlar. */
.sft-card__name, .fe-pcard__title, .fe-pcard__title a, .product-cart-wrap .product-content-wrap h2 a {
  font:600 1.0625rem/1.35 var(--font-ui) !important; color:var(--ink-900) !important; letter-spacing:0; font-style:normal;
}
.sft-card__name, .fe-pcard .fe-pcard__title {
  display:-webkit-box !important; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;
  min-height:calc(2 * 1.35 * 1.0625rem);
}
.sft-card__price, .fe-price-block .fe-price, .product-price .fe-price, .fe-price {
  font-family:var(--font-ui) !important; font-weight:700 !important; color:var(--iznik-800) !important;
  font-variant-numeric:lining-nums tabular-nums; letter-spacing:-.01em !important;
}
.sft-card__price .fe-price, .fe-price-block .fe-price { font-size:1.25rem !important; line-height:1.2; }
.fe-old-price { font-family:var(--font-ui); color:var(--ink-500); }
#product-price.fe-price { font-size:2.125rem !important; line-height:1.1; letter-spacing:-.02em !important; }

/* ---- Eski .container'i baslik izgarasina hizala ----
   Breadcrumb ve henuz tasinmamis ic sayfalar Bootstrap .container kullaniyor; onun kirilim
   genislikleri (1320/1140/960) ve 12px ic boslugu baslikta logonun durdugu .sft-container
   cizgisinden farkliydi — breadcrumb logodan daha solda baslayip "yamuk" gorunuyordu.
   Sayfalari tek tek tasimak yerine ana alan icindeki .container ayni olculeri alir;
   .row'un negatif kenari kolon ic boslugunu dengeledigi icin metin ayni cizgiye oturur. */
main.main .container { max-width:var(--container); padding-inline:var(--gutter); }

/* ---- Bulucu: gun cipleri (Bugun / Yarin / gun / Baska tarih) ----
   Yerel tarih kutusu yerine dort esit hucre: tek dokunusla secim, secili gun belirgin.
   "Baska tarih" hucresi yerel takvimi ustune serilmis gorunmez bir input ile acar —
   mobilde isletim sisteminin tarih secicisi gelir, masaustunde showPicker(). */
.sft-days { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; }
.sft-day { position:relative; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:2px;
  min-height:52px; padding:6px 4px; border:1px solid var(--line); border-radius:var(--radius); background:var(--white);
  color:var(--ink-700); cursor:pointer; font-family:var(--font-ui); text-align:center; transition:border-color .15s, background .15s, color .15s; }
.sft-day:hover { border-color:var(--iznik-600); }
.sft-day:focus-visible, .sft-day:focus-within { outline:none; box-shadow:0 0 0 3px rgba(31,78,140,.18); }
.sft-day__rel { font:600 11px/1.1 var(--font-ui); letter-spacing:.06em; text-transform:uppercase; color:var(--ink-500, #6b7280); }
.sft-day__num { font:600 15px/1.2 var(--font-ui); color:var(--ink-900, #111); white-space:nowrap; }
.sft-day[aria-checked="true"] { border-color:var(--iznik-800); background:var(--iznik-800); color:#fff; }
.sft-day[aria-checked="true"] .sft-day__rel, .sft-day[aria-checked="true"] .sft-day__num { color:#fff; }
.sft-day--other .sft-day__picker { position:absolute; inset:0; width:100%; height:100%; opacity:0; pointer-events:none; border:0; }
@media (max-width:380px) { .sft-day__num { font-size:13px; } }

/* Fotografli kategori karosu: Iznik deseni fotografin USTUNE binmesin (desen yalnizca
   gorselsiz, renkli zeminli karonun susu). Alt gradyan etiketin okunmasi icin kalir. */
.sft-occasion--photo::before { display:none; }
.sft-occasion--photo img { position:absolute; inset:0; }

/* ===== Geri bildirim 28.10.2026 (3): urun detayi, breadcrumb ===== */
/* Detay basligi: sag kolonda yer vardi, ad 28px'te ezik duruyordu. Display serif, daha iri. */
.fe-detail-title { font:500 clamp(1.875rem,1.5rem + 1.2vw,2.5rem)/1.15 var(--font-display) !important; letter-spacing:-.01em !important; color:var(--ink-900) !important; margin-bottom:12px; }
.sft-detail-lead { font:400 1.0625rem/1.65 var(--font-ui); color:var(--ink-700); margin:4px 0 20px; max-width:56ch; }
.sft-detail-about { max-width:760px; margin:var(--s-7, 56px) 0 var(--s-6, 40px); padding-top:var(--s-5, 32px); border-top:1px solid var(--line); }
.sft-detail-about__title { font:500 1.75rem/1.2 var(--font-display); color:var(--ink-900); margin-bottom:var(--s-4); }
.sft-detail-about p { font:400 1rem/1.75 var(--font-ui); color:var(--ink-700); margin-bottom:var(--s-4); }
.sft-detail-about ul { list-style:none; padding:0; margin:0 0 var(--s-4); display:grid; gap:10px; }
.sft-detail-about li { position:relative; padding-inline-start:26px; font:400 1rem/1.6 var(--font-ui); color:var(--ink-700); }
.sft-detail-about li::before { content:""; position:absolute; inset-inline-start:4px; top:.55em; width:9px; height:9px; transform:rotate(45deg); background:var(--tulip-600); border-radius:1px; }

/* Breadcrumb KALIYOR: BreadcrumbList isaretlemesiyle Google sonucta adres yerine yolu gosterir
   ve ic linkleme saglar. Gorunum sadelesti: tek satir, arayuz yazisi, sabit dikey ritim —
   onceki tema stilinin farkli dolgu/yukseklikleri "yamuk" duruyordu. */
.page-header.breadcrumb-wrap { padding:18px 0 0 !important; margin:0 !important; border:0 !important; background:transparent !important; }
.breadcrumb.fe-crumb { font:500 12.5px/1.4 var(--font-ui) !important; letter-spacing:.02em; min-height:20px; }
.fe-crumb__link { color:var(--ink-500) !important; }
.fe-crumb__link:hover, .fe-crumb__link:focus { color:var(--iznik-800) !important; }
.fe-crumb__sep { color:var(--ink-400) !important; margin:0 10px !important; font-size:14px; line-height:1; }
.fe-crumb__current { color:var(--ink-900) !important; font-weight:600 !important; }

/* Hizli bakis daha genis: 880px'te gorsel kucuk kaliyor, pencere detay sayfasinin "kucuk
   kopyasi" gibi durmuyordu. Gorsel kare ve buyuk, ad display serifte. */
.fe-qv .modal-dialog { max-width:min(1080px, calc(100vw - 32px)) !important; }
.fe-qv__grid { grid-template-columns:minmax(0,1.15fr) minmax(0,1fr) !important; }
.fe-qv__media img { width:100%; height:auto; max-height:none; aspect-ratio:1/1; object-fit:cover; }
#qv-name { font:500 clamp(1.5rem,1.2rem + 1vw,2.125rem)/1.15 var(--font-display) !important; color:var(--ink-900) !important; }
#qv-desc { font:400 1rem/1.65 var(--font-ui); color:var(--ink-700); -webkit-line-clamp:unset !important; display:block !important; }
@media (max-width:767px) { .fe-qv__grid { grid-template-columns:1fr !important; } }

/* Rehber kartinda gorsel yoksa sitenin rozeti: yuvarlak kirpma ve golge (bayrak icindi) uygulanmaz. */
.fe-blog-card__ph .fe-blog-card__mark { width:76px; height:76px; border-radius:0; box-shadow:none; object-fit:contain; }
.fe-blog-card__ph { background:linear-gradient(135deg, #F4EFE8, #EDE6DC); }

/* Hakkimizda: tek, buyuk gorsel (iki kucuk yan yana gorsel sayfayi katalog gibi gosteriyordu). */
.sft-about-hero__media { border-radius:var(--radius); overflow:hidden; box-shadow:0 18px 40px rgba(18,38,74,.12); aspect-ratio:4/5; }
.sft-about-hero__media img { width:100%; height:100%; object-fit:cover; display:block; }
.sft-about-hero__eyebrow { font:600 12px/1.4 var(--font-ui); letter-spacing:.12em; text-transform:uppercase; color:var(--tulip-600); margin-bottom:12px; display:block; }
.sft-about-hero h1 { font:500 clamp(2rem,1.6rem + 1.6vw,3rem)/1.1 var(--font-display) !important; color:var(--ink-900); margin-bottom:20px; }
.sft-about-hero p { font:400 1.0625rem/1.75 var(--font-ui); color:var(--ink-700); margin-bottom:16px; }

/* Urun detayi: gorsel daha buyuk. Iki esit sutun ve 520 px tavan (flowereast.css) gorseli
   sutunun icinde kucuk birakiyordu; gorsel sutunu genisletilir, tavan kaldirilir — kare kutu
   sutun genisligi kadar buyur. Mobil olcu (320 px) flowereast.css'te aynen kalir. */
@media (min-width: 992px) {
  .fe-detail-grid { grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); gap: 0 48px; }
  .fe-gallery-main { max-height: 640px; width: 100%; padding: 8px; border-radius: var(--radius-lg); }
  .fe-gallery-main img { width: 100%; height: 100%; }
}

/* TL karsiligi: vitrin USD (varsayilan) gosterirken tahsil edilecek TL tutari her yerde
   gorunur. Kartta fiyatin altinda tek satir, detayda fiyatin altinda aciklamali not. */
.fe-price-block .sft-price-try {
  display: block; margin-top: 2px;
  font: 600 .8125rem/1.3 var(--font-ui); color: var(--color-text-muted);
  font-variant-numeric: lining-nums tabular-nums; letter-spacing: 0;
}
.sft-try-note {
  margin: -8px 0 18px; font-size: var(--fs-small); line-height: 1.5; color: var(--color-text-muted);
}
.sft-try-note strong { color: var(--color-text); font-variant-numeric: lining-nums tabular-nums; }
/* Liste kartinda fiyat blogu yatay flex; TL satiri alt satira insin. */
.fe-price-block:has(.sft-price-try) { flex-wrap: wrap; }
.fe-price-block .sft-price-try { flex-basis: 100%; }

/* Bulucu duzeltmesi (kullanici geri bildirimi, 28.10.2026): tarih cipleri ile "Find flowers"
   ayni satirdaydi; dugme genisligi cipleri ~60 px'e sikistiriyordu ve "TOMORROW" kutudan
   tasiyordu. Dugme tarihlerin ALTINA, tam genislige alinir — cipler satirin tamamini kullanir.
   Ust etiket yine de kisaltilmaz; harf araligi daraltilir, cok dar ekranda kesilir. */
.sft-finder__fields { grid-template-columns: 1fr; }
.sft-finder__submit { width: 100%; justify-content: center; }
.sft-day__rel { letter-spacing: .03em; white-space: nowrap; max-width: 100%; overflow: hidden; text-overflow: ellipsis; }
/* Hero teslim fotografi (varsa SVG yer tutucunun yerine; bkz. Home/Index). */
.sft-hero__photo { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.sft-card__price .sft-price-try {
  display:block; margin-top:2px; font:600 .8125rem/1.3 var(--font-ui); color:var(--color-text-muted);
  font-variant-numeric:lining-nums tabular-nums;
}

/* "Baska tarih" takvimi (flatpickr, .sft-cal): yerel takvimin yerine, marka renklerinde ve
   biraz daha buyuk. Secili gun lacivert, bugun ince lale cizgisi, kapali gunler soluk. */
.flatpickr-calendar.sft-cal {
  width: 336px; padding: 14px 14px 10px; border: 1px solid var(--line); border-radius: var(--radius-lg);
  box-shadow: 0 18px 40px rgba(18,38,74,.16); font-family: var(--font-ui); background: var(--white);
}
.flatpickr-calendar.sft-cal::before, .flatpickr-calendar.sft-cal::after { display: none; }
.sft-cal .flatpickr-months { align-items: center; padding-bottom: 8px; }
.sft-cal .flatpickr-months .flatpickr-month { height: 40px; color: var(--iznik-800); fill: var(--iznik-800); }
.sft-cal .flatpickr-current-month { font: 500 1.35rem/1 var(--font-display); padding-top: 8px; color: var(--iznik-800); }
.sft-cal .flatpickr-current-month .cur-month { font-weight: 600; }
.sft-cal .flatpickr-current-month input.cur-year { font-weight: 500; color: var(--ink-500); }
.sft-cal .flatpickr-months .flatpickr-prev-month,
.sft-cal .flatpickr-months .flatpickr-next-month {
  top: 14px; height: 36px; width: 36px; padding: 9px; border-radius: 50%; color: var(--iznik-800);
}
.sft-cal .flatpickr-months .flatpickr-prev-month { left: 10px; }
.sft-cal .flatpickr-months .flatpickr-next-month { right: 10px; }
.sft-cal .flatpickr-months .flatpickr-prev-month:hover,
.sft-cal .flatpickr-months .flatpickr-next-month:hover { background: var(--mist); color: var(--iznik-800); }
.sft-cal .flatpickr-months .flatpickr-disabled { opacity: .25; }
.sft-cal .flatpickr-innerContainer, .sft-cal .flatpickr-rContainer, .sft-cal .flatpickr-days, .sft-cal .dayContainer { width: 308px; min-width: 308px; max-width: 308px; }
.sft-cal span.flatpickr-weekday { font: 700 .7rem/1 var(--font-ui); letter-spacing: .08em; text-transform: uppercase; color: var(--ink-500); }
.sft-cal .flatpickr-day {
  max-width: 44px; height: 44px; line-height: 42px; margin: 0; border-radius: 50%;
  font-weight: 600; font-size: .95rem; color: var(--ink-900); border-color: transparent;
}
.sft-cal .flatpickr-day:hover, .sft-cal .flatpickr-day:focus { background: var(--mist); border-color: transparent; }
.sft-cal .flatpickr-day.today { border-color: var(--tulip-600); }
.sft-cal .flatpickr-day.today:hover { background: var(--tulip-100); color: var(--ink-900); }
.sft-cal .flatpickr-day.selected, .sft-cal .flatpickr-day.selected:hover {
  background: var(--iznik-800); border-color: var(--iznik-800); color: #fff;
}
.sft-cal .flatpickr-day.flatpickr-disabled, .sft-cal .flatpickr-day.flatpickr-disabled:hover {
  color: #C3C7CF; background: none; font-weight: 500; cursor: default;
}
.sft-cal .flatpickr-day.prevMonthDay, .sft-cal .flatpickr-day.nextMonthDay { color: #D0D3DA; }
@media (max-width: 380px) {
  .flatpickr-calendar.sft-cal { width: 300px; padding: 10px; }
  .sft-cal .flatpickr-innerContainer, .sft-cal .flatpickr-rContainer, .sft-cal .flatpickr-days, .sft-cal .dayContainer { width: 280px; min-width: 280px; max-width: 280px; }
  .sft-cal .flatpickr-day { height: 40px; line-height: 38px; }
}
.sft-cal .flatpickr-day.today.flatpickr-disabled { border-color: transparent; }
.sft-cal .flatpickr-months .flatpickr-prev-month svg, .sft-cal .flatpickr-months .flatpickr-next-month svg { width: 18px; height: 18px; }
