/* MaliPilot UI/UX 2.0 — ortak, bağımlılıksız tasarım katmanı */
:root {
  --mp-ink: #0f172a;
  --mp-copy: #475569;
  --mp-muted: #64748b;
  --mp-line: #e2e8f0;
  --mp-soft: #f8fafc;
  --mp-white: #ffffff;
  --mp-brand: #f97316;
  --mp-brand-dark: #ea580c;
  --mp-focus: rgba(249, 115, 22, .24);
  --mp-radius: 20px;
  --mp-radius-sm: 12px;
  --mp-shadow: 0 1px 2px rgba(15, 23, 42, .04), 0 12px 32px rgba(15, 23, 42, .06);
  --mp-shadow-hover: 0 18px 44px rgba(15, 23, 42, .10);
  --mp-ease: 240ms cubic-bezier(.2, .8, .2, 1);
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 6rem; }
body {
  margin: 0;
  color: var(--mp-ink);
  background: var(--mp-soft);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height: 1.65;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}
::selection { color: var(--mp-ink); background: #fed7aa; }
img, svg, video { max-width: 100%; height: auto; }
a, button, input, select, textarea, summary { -webkit-tap-highlight-color: transparent; }
a, button { transition: color var(--mp-ease), background-color var(--mp-ease), border-color var(--mp-ease), box-shadow var(--mp-ease), transform var(--mp-ease); }
:where(a, button, input, select, textarea, summary):focus-visible {
  outline: 3px solid var(--mp-focus) !important;
  outline-offset: 3px;
}

/* Tipografi ve okuma ritmi */
:where(h1, h2, h3, h4) { color: var(--mp-ink); letter-spacing: -.025em; text-wrap: balance; }
h1 { font-size: clamp(2.35rem, 7vw, 4.75rem) !important; line-height: 1.04 !important; letter-spacing: -.055em; }
h2 { font-size: clamp(1.75rem, 4vw, 2.65rem) !important; line-height: 1.15 !important; }
h3 { line-height: 1.25 !important; }
:where(main, article) p { max-width: 72ch; }
article { font-size: 1.025rem; }
article :where(p, li) { color: var(--mp-copy) !important; line-height: 1.8 !important; }
article :where(h2, h3) { scroll-margin-top: 7rem; }
article h2 { margin-top: 3.5rem !important; margin-bottom: 1.15rem !important; padding-top: 0 !important; border-top: 0 !important; }
article h3 { margin-top: 2rem !important; margin-bottom: .75rem !important; }
article :where(ul, ol) { padding-left: 1.35rem; }
article li + li { margin-top: .55rem; }

/* Üst menü ve hero */
body > nav, body > div > nav:first-child {
  border-color: rgba(226, 232, 240, .82) !important;
  box-shadow: 0 1px 0 rgba(15, 23, 42, .03);
  backdrop-filter: blur(18px);
}
body > header {
  position: relative;
  isolation: isolate;
}
body > header::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  pointer-events: none;
  background: radial-gradient(circle at 80% 10%, rgba(249,115,22,.10), transparent 34%), radial-gradient(circle at 10% 30%, rgba(59,130,246,.07), transparent 30%);
}
body > header p { max-width: 62ch; }
body > header [class*="shadow-2xl"], body > header [class*="shadow-xl"] { box-shadow: var(--mp-shadow) !important; }

/* Tek buton sistemi */
:where(a, button)[class*="bg-havuc-500"],
:where(a, button)[class*="bg-orange-500"],
:where(a, button)[class*="bg-gray-900"],
:where(a, button)[class*="bg-slate-900"],
button[type="submit"] {
  min-height: 48px;
  border-radius: var(--mp-radius-sm) !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .55rem;
  font-weight: 800 !important;
  box-shadow: 0 8px 22px rgba(15, 23, 42, .10) !important;
  transform: translateY(0);
}
:where(a, button)[class*="bg-havuc-500"], :where(a, button)[class*="bg-orange-500"], button[type="submit"] {
  background: linear-gradient(135deg, var(--mp-brand), var(--mp-brand-dark)) !important;
  color: #fff !important;
}
:where(a, button)[class*="bg-havuc-500"]:hover,
:where(a, button)[class*="bg-orange-500"]:hover,
:where(a, button)[class*="bg-gray-900"]:hover,
:where(a, button)[class*="bg-slate-900"]:hover,
button[type="submit"]:hover { transform: translateY(-2px); box-shadow: 0 13px 28px rgba(15, 23, 42, .15) !important; }
:where(a, button):active { transform: translateY(0) scale(.985) !important; }
:where(button, input[type="submit"]):disabled { opacity: .5; cursor: not-allowed; transform: none !important; box-shadow: none !important; }

/* Kart sistemi */
:where(section, article, div, a)[class*="rounded-3xl"],
:where(section, article, div, a)[class*="rounded-[3rem]"] {
  border-radius: var(--mp-radius) !important;
}
:where(article, a, div)[class*="bg-white"][class*="border"] { border-color: var(--mp-line) !important; }
:where(article, a, div)[class*="bg-white"][class*="rounded-3xl"],
:where(article, a, div)[class*="bg-white"][class*="rounded-[3rem]"] { box-shadow: var(--mp-shadow) !important; }
:where(article, a, div)[class*="hover:shadow"]:hover,
.card-hover:hover { transform: translateY(-3px) !important; box-shadow: var(--mp-shadow-hover) !important; }
.card-hover { transition: border-color var(--mp-ease), box-shadow var(--mp-ease), transform var(--mp-ease) !important; }

/* İkonlar ve etiketler */
:where(div, span)[class*="w-14"][class*="h-14"], :where(div, span)[class*="w-16"][class*="h-16"] {
  width: 3rem !important; height: 3rem !important; border-radius: var(--mp-radius-sm) !important;
}
:where(span, div)[class*="uppercase"][class*="tracking"] { letter-spacing: .08em !important; }

/* Bilgi, uyarı ve kontrol kutuları */
.info-box, .check-list, .error-list li,
article :where(div)[class*="bg-orange-50"][class*="border"],
article :where(div)[class*="bg-blue-50"][class*="border"],
article :where(div)[class*="bg-red-50"][class*="border"],
article :where(div)[class*="bg-green-50"][class*="border"] {
  border-radius: var(--mp-radius-sm) !important;
  border-width: 1px !important;
  box-shadow: none !important;
}
.info-box { padding: 1.25rem !important; }
.check-list, .error-list { gap: .75rem !important; }

/* Form sistemi */
form { accent-color: var(--mp-brand); }
form label { color: #475569 !important; letter-spacing: .045em; }
form :where(input:not([type="hidden"]), select, textarea) {
  width: 100%;
  min-height: 48px;
  border: 1px solid #cbd5e1 !important;
  border-radius: var(--mp-radius-sm) !important;
  background: #fff !important;
  color: var(--mp-ink) !important;
  padding: .75rem 1rem !important;
  box-shadow: 0 1px 2px rgba(15, 23, 42, .03);
  transition: border-color var(--mp-ease), box-shadow var(--mp-ease), background-color var(--mp-ease);
}
form textarea { min-height: 112px; resize: vertical; }
form :where(input, select, textarea)::placeholder { color: #94a3b8; }
form :where(input, select, textarea):hover { border-color: #94a3b8 !important; }
form :where(input, select, textarea):focus { border-color: var(--mp-brand) !important; box-shadow: 0 0 0 4px var(--mp-focus) !important; outline: 0 !important; }
form button[type="submit"] { width: 100%; }

/* Blog kartları */
main section article[class*="flex-col"] { padding: 1.75rem !important; min-height: 100%; }
main section article[class*="flex-col"] > span:first-child { display: inline-flex; width: max-content; color: var(--mp-brand) !important; }
main section article[class*="flex-col"] h3 { font-size: 1.15rem; }
main section article[class*="flex-col"] a:last-child { display: inline-flex; min-height: 44px; align-items: center; }

/* FAQ */
details {
  overflow: clip;
  border: 1px solid var(--mp-line) !important;
  border-radius: var(--mp-radius-sm) !important;
  background: #fff !important;
  box-shadow: 0 1px 2px rgba(15, 23, 42, .03);
  transition: border-color var(--mp-ease), box-shadow var(--mp-ease);
}
details + details { margin-top: .75rem; }
details:hover, details[open] { border-color: #fdba74 !important; box-shadow: 0 8px 24px rgba(15, 23, 42, .06); }
details summary { min-height: 56px; padding: 1rem 1.15rem !important; color: var(--mp-ink) !important; font-weight: 750 !important; }
details[open] summary { border-bottom: 1px solid #ffedd5; }
details > :not(summary) { padding-left: 1.15rem; padding-right: 1.15rem; }

/* Footer */
footer {
  margin-top: 0 !important;
  border-color: var(--mp-line) !important;
  background: #fff !important;
}
footer a:hover { color: var(--mp-brand) !important; }

/* Mobil öncelikli düzeltmeler */
@media (max-width: 767px) {
  body > nav, body > nav > div { min-height: 64px; }
  body > nav { padding-top: .65rem !important; padding-bottom: .65rem !important; }
  body > header { padding-left: 1.25rem !important; padding-right: 1.25rem !important; padding-top: 2.5rem !important; padding-bottom: 3.5rem !important; }
  body > header h1 { font-size: clamp(2.35rem, 12vw, 3.4rem) !important; }
  body > header p { font-size: 1rem !important; }
  section { scroll-margin-top: 5rem; }
  :where(main, section, footer) > [class*="px-6"], :where(main, section, footer)[class*="px-6"] { padding-left: 1.25rem !important; padding-right: 1.25rem !important; }
  :where(a, button)[class*="px-8"], :where(a, button)[class*="px-12"] { padding-left: 1.25rem !important; padding-right: 1.25rem !important; }
  :where(a, button)[class*="py-4"], :where(a, button)[class*="py-5"] { padding-top: .85rem !important; padding-bottom: .85rem !important; }
  [class*="grid-cols-2"] { gap: .75rem !important; }
  :where(div, article, section)[class*="p-10"], :where(div, article, section)[class*="p-12"] { padding: 1.5rem !important; }
  table { display: block; max-width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; }
  article { font-size: 1rem; }
  article h2 { margin-top: 2.75rem !important; }
}

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