/* A+ Transfer Şoför — tasarım değişkenleri, sıfırlama ve temel öğeler.
   app.css 1200 satıra ulaşınca yüzeylere göre bölündü; yükleme sırası
   app.php ve index.php içindeki <link> sırasıdır. */

/* A+ Transfer Şoför — native app hissiyatlı arayüz, light + dark tema */

:root {
  --accent: #f5b83d;
  --accent-ink: #201603;
  --green: #2fb673;
  --green-ink: #04170d;
  --blue: #3478f6;
  --red: #e5484d;

  --radius: 18px;
  --radius-s: 13px;
  --space: clamp(0.9rem, 2.5vw, 1.4rem);
  --duration-fast: 160ms;
  --duration-normal: 300ms;
  --duration-slow: 460ms;
  --ease: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-spring: cubic-bezier(0.34, 1.4, 0.5, 1);
  --tabbar-h: 4.1rem;
}

/* koyu tema (varsayılan) */
:root, :root[data-theme="dark"] {
  --bg: #0b0f15;
  --bg-grad-1: rgba(245, 184, 61, 0.09);
  --bg-grad-2: rgba(52, 120, 246, 0.07);
  --surface: #141a24;
  --surface-2: #1b2330;
  --surface-3: #232d3e;
  --line: rgba(255, 255, 255, 0.075);
  --line-strong: rgba(255, 255, 255, 0.14);
  --text: #eaeff6;
  --text-dim: #8da0b6;
  --shadow: 0 1px 2px rgba(0, 0, 0, 0.3), 0 10px 32px rgba(0, 0, 0, 0.38);
  --shadow-float: 0 4px 10px rgba(0, 0, 0, 0.35), 0 18px 48px rgba(0, 0, 0, 0.5);
  --header-bg: rgba(11, 15, 21, 0.8);
  /* Sürekli ekranda duran çubuklar için opak karşılık: backdrop-filter
     kaydırmanın her karesinde yeniden bulanıklık hesaplatıyordu. */
  --header-solid: #10151d;
  --blue-soft: rgba(84, 148, 255, 0.16);
  --blue-text: #82b1ff;
  --accent-soft: rgba(245, 184, 61, 0.14);
  --accent-text: #f5b83d;
  --green-soft: rgba(47, 182, 115, 0.15);
  --green-text: #4cd695;
  --red-soft: rgba(229, 72, 77, 0.14);
}

/* açık tema */
:root[data-theme="light"] {
  --bg: #eef1f6;
  --bg-grad-1: rgba(245, 184, 61, 0.14);
  --bg-grad-2: rgba(52, 120, 246, 0.08);
  --surface: #ffffff;
  --surface-2: #f3f5f9;
  --surface-3: #e8ecf3;
  --line: rgba(15, 30, 55, 0.09);
  --line-strong: rgba(15, 30, 55, 0.18);
  --text: #16202e;
  --text-dim: #5d6b80;
  --shadow: 0 1px 2px rgba(20, 35, 60, 0.05), 0 8px 26px rgba(20, 35, 60, 0.09);
  --shadow-float: 0 4px 12px rgba(20, 35, 60, 0.1), 0 20px 50px rgba(20, 35, 60, 0.16);
  --header-bg: rgba(255, 255, 255, 0.82);
  --header-solid: #f7f9fc;
  --blue-soft: rgba(52, 120, 246, 0.11);
  --blue-text: #2b62c9;
  --accent-soft: rgba(214, 148, 15, 0.13);
  --accent-text: #9c6d05;
  --green-soft: rgba(47, 182, 115, 0.13);
  --green-text: #147448;
  --red-soft: rgba(229, 72, 77, 0.1);
}

* { margin: 0; padding: 0; box-sizing: border-box; }

[hidden] { display: none !important; }

html {
  -webkit-text-size-adjust: 100%;
}

body {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  background: var(--bg);
  color: var(--text);
  min-height: 100vh;
  min-height: 100dvh;
  -webkit-font-smoothing: antialiased;
  -webkit-tap-highlight-color: transparent;
  overscroll-behavior-y: none;
  transition: background var(--duration-normal) var(--ease), color var(--duration-normal) var(--ease);
}

/* app gibi: metin seçimi ve uzun basma menüsü kapalı (form alanları hariç) */
.app-body, .login-body {
  -webkit-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
}
input, textarea { -webkit-user-select: text; user-select: text; }

button, a { touch-action: manipulation; }

:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; border-radius: 6px; }
