/* Katman sırası: uygulama stilleri (katmansız) her zaman Pusula'yı ezer. */
@layer pusula.tokens, pusula.components;

@layer pusula.tokens {
/* Pusula — generated from tokens.json */
:root, [data-theme="light"] {
  --bg: #fff8f0;
  --surface: #ffffff;
  --surface-sunken: #f1eae3;
  --surface-strong: #e3ddd6;
  --text: #1e1b18;
  --text-muted: #5f5a54;
  --outline: #eadfd2;
  --outline-strong: #7f7973;
  --primary: #0b6e6e;
  --on-primary: #ffffff;
  --primary-container: #d7f0ec;
  --on-primary-container: #0b4f4f;
  --accent: #f4a259;
  --on-accent: #1e1b18;
  --accent-container: #fee6d3;
  --on-accent-container: #542d00;
  --success: #1f763b;
  --on-success: #ffffff;
  --success-container: #ccf8d4;
  --on-success-container: #012d10;
  --warning: #ca7d33;
  --on-warning: #1e1b18;
  --warning-container: #fee6d3;
  --on-warning-container: #542d00;
  --danger: #ab322a;
  --on-danger: #ffffff;
  --danger-container: #fee4e0;
  --on-danger-container: #6a0e0c;
  --focus: #b26401;
  --deniz-97: #d4fffe;
  --deniz-94: #c4f7f6;
  --deniz-90: #b3eae9;
  --deniz-82: #91d2d1;
  --deniz-74: #6dbaba;
  --deniz-66: #48a3a2;
  --deniz-58: #108c8c;
  --deniz-50: #077272;
  --deniz-42: #005959;
  --deniz-34: #014141;
  --deniz-26: #012a2b;
  --deniz-18: #011616;
  --deniz-12: #000808;
  --kayisi-97: #fef3ea;
  --kayisi-94: #fee6d3;
  --kayisi-90: #fed5b3;
  --kayisi-82: #f3b581;
  --kayisi-74: #df995c;
  --kayisi-66: #ca7d33;
  --kayisi-58: #b26401;
  --kayisi-50: #915104;
  --kayisi-42: #723e00;
  --kayisi-34: #542d00;
  --kayisi-26: #381c01;
  --kayisi-18: #1f0c00;
  --kayisi-12: #0d0400;
  --krem-97: #fbf4ed;
  --krem-94: #f1eae3;
  --krem-90: #e3ddd6;
  --krem-82: #c9c3bc;
  --krem-74: #b0aaa3;
  --krem-66: #97918a;
  --krem-58: #7f7973;
  --krem-50: #68625c;
  --krem-42: #514c46;
  --krem-34: #3c3731;
  --krem-26: #28231e;
  --krem-18: #15110c;
  --krem-12: #080503;
  --yaprak-97: #dfffe5;
  --yaprak-94: #ccf8d4;
  --yaprak-90: #bcecc5;
  --yaprak-82: #9cd4a7;
  --yaprak-74: #7cbd8a;
  --yaprak-66: #5ca56d;
  --yaprak-58: #388e51;
  --yaprak-50: #1f763b;
  --yaprak-42: #0d5d2a;
  --yaprak-34: #00451b;
  --yaprak-26: #012d10;
  --yaprak-18: #001705;
  --yaprak-12: #000901;
  --kor-97: #fef2f0;
  --kor-94: #fee4e0;
  --kor-90: #ffd2cb;
  --kor-82: #ffaba0;
  --kor-74: #f2897c;
  --kor-66: #dd6a5e;
  --kor-58: #c94a3f;
  --kor-50: #ab322a;
  --kor-42: #8a201b;
  --kor-34: #6a0e0c;
  --kor-26: #4b0002;
  --kor-18: #2a0001;
  --kor-12: #140000;
  --shadow-1: 0 1px 2px rgba(30,27,24,0.06), 0 4px 12px rgba(30,27,24,0.06);
  --shadow-2: 0 12px 43px rgba(30,27,24,0.12);
  --shadow-3: 0 4px 8px rgba(30,27,24,0.08), 0 24px 64px rgba(30,27,24,0.18);
}
[data-theme="dark"] {
  --bg: #16120e;
  --surface: #261f19;
  --surface-sunken: #1f1a15;
  --surface-strong: #342c24;
  --text: #f4ede5;
  --text-muted: #bfb7ae;
  --outline: #342c24;
  --outline-strong: #83796f;
  --primary: #78c9c8;
  --on-primary: #062222;
  --primary-container: #123f3f;
  --on-primary-container: #bdeeec;
  --accent: #f4a259;
  --on-accent: #1e1b18;
  --accent-container: #4a3322;
  --on-accent-container: #ffd8b6;
  --success: #86c995;
  --on-success: #001705;
  --success-container: #163f26;
  --on-success-container: #c2efcb;
  --warning: #e6a56c;
  --on-warning: #1f0c00;
  --warning-container: #4a3322;
  --on-warning-container: #ffd8b6;
  --danger: #f2897c;
  --on-danger: #2a0001;
  --danger-container: #5a201c;
  --on-danger-container: #ffd2cb;
  --focus: #f4a259;
  --shadow-1: 0 1px 2px rgba(0,0,0,0.4), 0 4px 12px rgba(0,0,0,0.28);
  --shadow-2: 0 2px 4px rgba(0,0,0,0.4), 0 12px 32px rgba(0,0,0,0.42);
  --shadow-3: 0 4px 8px rgba(0,0,0,0.42), 0 24px 64px rgba(0,0,0,0.5);
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme]) {
    --bg: #16120e;
    --surface: #261f19;
    --surface-sunken: #1f1a15;
    --surface-strong: #342c24;
    --text: #f4ede5;
    --text-muted: #bfb7ae;
    --outline: #342c24;
    --outline-strong: #83796f;
    --primary: #78c9c8;
    --on-primary: #062222;
    --primary-container: #123f3f;
    --on-primary-container: #bdeeec;
    --accent: #f4a259;
    --on-accent: #1e1b18;
    --accent-container: #4a3322;
    --on-accent-container: #ffd8b6;
    --success: #86c995;
    --on-success: #001705;
    --success-container: #163f26;
    --on-success-container: #c2efcb;
    --warning: #e6a56c;
    --on-warning: #1f0c00;
    --warning-container: #4a3322;
    --on-warning-container: #ffd8b6;
    --danger: #f2897c;
    --on-danger: #2a0001;
    --danger-container: #5a201c;
    --on-danger-container: #ffd2cb;
    --focus: #f4a259;
    --shadow-1: 0 1px 2px rgba(0,0,0,0.4), 0 4px 12px rgba(0,0,0,0.28);
    --shadow-2: 0 2px 4px rgba(0,0,0,0.4), 0 12px 32px rgba(0,0,0,0.42);
    --shadow-3: 0 4px 8px rgba(0,0,0,0.42), 0 24px 64px rgba(0,0,0,0.5);
  }
}
[data-theme="contrast"] {
  --bg: #ffffff;
  --surface: #ffffff;
  --surface-sunken: #fbf4ed;
  --surface-strong: #f1eae3;
  --text: #000000;
  --text-muted: #3c3731;
  --outline: #514c46;
  --outline-strong: #000000;
  --primary: #014141;
  --on-primary: #ffffff;
  --primary-container: #c4f7f6;
  --on-primary-container: #011616;
  --accent: #723e00;
  --on-accent: #ffffff;
  --accent-container: #fee6d3;
  --on-accent-container: #1f0c00;
  --success: #00451b;
  --on-success: #ffffff;
  --success-container: #ccf8d4;
  --on-success-container: #001705;
  --warning: #723e00;
  --on-warning: #ffffff;
  --warning-container: #fee6d3;
  --on-warning-container: #1f0c00;
  --danger: #8a201b;
  --on-danger: #ffffff;
  --danger-container: #fee4e0;
  --on-danger-container: #2a0001;
  --focus: #723e00;
  --shadow-1: none;
  --shadow-2: 0 0 0 2px #000000;
  --shadow-3: 0 0 0 2px #000000;
}
:root {
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-8: 32px;
  --space-10: 40px;
  --space-12: 48px;
  --space-16: 64px;
  --space-20: 80px;
  --radius-xs: 6px;
  --radius-s: 10px;
  --radius-m: 16px;
  --radius-l: 20px;
  --radius-xl: 28px;
  --radius-full: 9999px;
  --sure-hizli: 120ms;
  --sure-standart: 220ms;
  --sure-uzun: 360ms;
  --sure-ifade: 520ms;
  --egri-standart: cubic-bezier(0.2, 0, 0, 1);
  --egri-giris: cubic-bezier(0.05, 0.7, 0.1, 1);
  --egri-cikis: cubic-bezier(0.3, 0, 0.8, 0.15);
  --egri-yay: cubic-bezier(0.34, 1.4, 0.64, 1);
  --egri-yay-yumusak: cubic-bezier(0.2, 1.08, 0.4, 1);
  --egri-yay-ifade: cubic-bezier(0.3, 1.7, 0.5, 1);
  --sure-yay: 220ms;
  --sure-yay-uzun: 360ms;
  --font-display: "Bricolage Grotesque", "Figtree", system-ui, sans-serif;
  --font-text: "Figtree", system-ui, -apple-system, "Segoe UI", sans-serif;
  --text-ekran-xl: 800 88px/84px var(--font-display);
  --text-ekran-l: 800 64px/62px var(--font-display);
  --text-baslik-l: 700 44px/48px var(--font-display);
  --text-baslik-m: 700 34px/40px var(--font-display);
  --text-baslik-s: 700 26px/32px var(--font-display);
  --text-unvan-l: 700 22px/28px var(--font-text);
  --text-unvan-m: 700 18px/24px var(--font-text);
  --text-govde-l: 400 17px/26px var(--font-text);
  --text-govde-m: 400 15px/22px var(--font-text);
  --text-etiket-l: 700 16px/20px var(--font-text);
  --text-etiket-m: 600 14px/18px var(--font-text);
  --text-etiket-s: 600 12px/16px var(--font-text);
}
.ekran-xl {
  font-family: var(--font-display);
  font-size: 88px;
  line-height: 84px;
  font-weight: 800;
  letter-spacing: -0.02em;
  font-variation-settings: 'opsz' 96;
}
.ekran-l {
  font-family: var(--font-display);
  font-size: 64px;
  line-height: 62px;
  font-weight: 800;
  letter-spacing: -0.018em;
  font-variation-settings: 'opsz' 72;
}
.baslik-l {
  font-family: var(--font-display);
  font-size: 44px;
  line-height: 48px;
  font-weight: 700;
  letter-spacing: -0.012em;
  font-variation-settings: 'opsz' 48;
}
.baslik-m {
  font-family: var(--font-display);
  font-size: 34px;
  line-height: 40px;
  font-weight: 700;
  letter-spacing: -0.01em;
  font-variation-settings: 'opsz' 36;
}
.baslik-s {
  font-family: var(--font-display);
  font-size: 26px;
  line-height: 32px;
  font-weight: 700;
  letter-spacing: 0;
  font-variation-settings: 'opsz' 28;
}
.unvan-l {
  font-family: var(--font-text);
  font-size: 22px;
  line-height: 28px;
  font-weight: 700;
  letter-spacing: 0;
}
.unvan-m {
  font-family: var(--font-text);
  font-size: 18px;
  line-height: 24px;
  font-weight: 700;
  letter-spacing: 0;
}
.govde-l {
  font-family: var(--font-text);
  font-size: 17px;
  line-height: 26px;
  font-weight: 400;
  letter-spacing: 0;
}
.govde-m {
  font-family: var(--font-text);
  font-size: 15px;
  line-height: 22px;
  font-weight: 400;
  letter-spacing: 0;
}
.etiket-l {
  font-family: var(--font-text);
  font-size: 16px;
  line-height: 20px;
  font-weight: 700;
  letter-spacing: 0;
}
.etiket-m {
  font-family: var(--font-text);
  font-size: 14px;
  line-height: 18px;
  font-weight: 600;
  letter-spacing: 0;
}
.etiket-s {
  font-family: var(--font-text);
  font-size: 12px;
  line-height: 16px;
  font-weight: 600;
  letter-spacing: 0.01em;
}

/* ---------- Gerçek yay hareketi ----------
   Sönümlü yay denkleminden örneklenmiş eğriler (ζ: 0,55 / 0,78 / 0,38). Yay doğası gereği
   standart eğriden uzun sürer; süreler eğriyle birlikte değişir. Desteklemeyen tarayıcı yukarıdaki yedekleri kullanır. */
@supports (transition-timing-function: linear(0, 1)) {
  :root {
    --egri-yay: linear(0, 0.049, 0.17, 0.331, 0.504, 0.67, 0.815, 0.933, 1.02, 1.079, 1.113, 1.126, 1.123, 1.11, 1.091, 1.069, 1.047, 1.028, 1.012, 1, 0.992, 0.987, 0.984, 0.984, 0.986, 0.988, 0.991, 0.993, 0.996, 0.998, 1, 1.001, 1.002, 1.002, 1.002, 1.002, 1);
    --egri-yay-yumusak: linear(0, 0.033, 0.115, 0.223, 0.342, 0.459, 0.569, 0.667, 0.752, 0.822, 0.878, 0.923, 0.956, 0.98, 0.998, 1.009, 1.015, 1.019, 1.02, 1.019, 1.018, 1.016, 1.013, 1.011, 1.009, 1.007, 1.005, 1.004, 1.002, 1.002, 1.001, 1, 1, 1, 1, 1, 1);
    --egri-yay-ifade: linear(0, 0.077, 0.269, 0.516, 0.767, 0.984, 1.144, 1.24, 1.275, 1.26, 1.21, 1.144, 1.074, 1.013, 0.966, 0.937, 0.925, 0.927, 0.94, 0.958, 0.977, 0.994, 1.008, 1.016, 1.02, 1.02, 1.017, 1.012, 1.007, 1.002, 0.998, 0.996, 0.994, 0.994, 0.995, 0.996, 1);
    --sure-yay: 420ms;
    --sure-yay-uzun: 520ms;
  }
}

/* ---------- Sistem yüksek kontrast tercihi ----------
   Kullanıcı işletim sisteminde "daha fazla kontrast" seçtiyse ve sayfa açıkça bir tema seçmediyse
   kontrast teması otomatik uygulanır. */
@media (prefers-contrast: more) {
  :root:not([data-theme]) {
  --bg: #ffffff;
  --surface: #ffffff;
  --surface-sunken: #fbf4ed;
  --surface-strong: #f1eae3;
  --text: #000000;
  --text-muted: #3c3731;
  --outline: #514c46;
  --outline-strong: #000000;
  --primary: #014141;
  --on-primary: #ffffff;
  --primary-container: #c4f7f6;
  --on-primary-container: #011616;
  --accent: #723e00;
  --on-accent: #ffffff;
  --accent-container: #fee6d3;
  --on-accent-container: #1f0c00;
  --success: #00451b;
  --on-success: #ffffff;
  --success-container: #ccf8d4;
  --on-success-container: #001705;
  --warning: #723e00;
  --on-warning: #ffffff;
  --warning-container: #fee6d3;
  --on-warning-container: #1f0c00;
  --danger: #8a201b;
  --on-danger: #ffffff;
  --danger-container: #fee4e0;
  --on-danger-container: #2a0001;
  --focus: #723e00;
  --shadow-1: none;
  --shadow-2: 0 0 0 2px #000000;
  --shadow-3: 0 0 0 2px #000000;
  }
}
}
