/* ============================================================
   PAGE HERO — compact dark band with breadcrumb + title
   Used at the top of every interior page. Single source of truth.
   ============================================================ */
.page-hero {
  position: relative;
  background: #0d1117;
  color: #fff;
  overflow: hidden;
  isolation: isolate;
}
.page-hero.aior-pointer-fx-host {
  transform: none !important;
}
.page-hero .aior-pointer-fx {
  display: none !important;
}
.page-hero-bg {
  position: absolute;
  inset: 0;
  z-index: -3;
  pointer-events: none;
}
.page-hero-bg img {
  width: 100%; height: 100%;
  object-fit: cover;
  object-position: left center;
  /* Busy screenshots (e.g. referans hero) must stay behind dark glass */
  opacity: 0.28;
  filter: contrast(1.05) saturate(0.75) brightness(0.55);
}
.page-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -2;
  /* Darker glass overlay — readable title/body over any hero photo */
  background:
    linear-gradient(
      180deg,
      rgba(6, 9, 15, 0.90) 0%,
      rgba(6, 9, 15, 0.93) 45%,
      rgba(6, 9, 15, 0.95) 100%
    );
  pointer-events: none;
}
.page-hero-particles {
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  display: block;
  opacity: 0.45; /* particles softer over darker glass */
}
.page-hero-content {
  position: relative;
  padding: 18px 16px 28px;
}
@media (min-width: 768px) {
  .page-hero-content { padding: 22px 24px 36px; }
}
.page-hero-text {
  margin-top: 16px;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 8px;
  width: 100%;
  /* Use more of the max-w-7xl band on desktop */
  max-width: 52rem;
  margin-inline: auto;
}
@media (min-width: 1024px) {
  .page-hero-text { max-width: 64rem; }
}
.page-hero-eyebrow {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.6);
}
.page-hero-title {
  font-size: clamp(24px, 3.4vw, 34px);
  font-weight: 700;
  letter-spacing: -.02em;
  color: #fff;
  margin: 0;
  line-height: 1.15;
  max-width: 100%;
}
.page-hero-sub {
  font-size: 14.5px;
  color: rgba(255,255,255,0.78);
  margin: 0 auto;
  max-width: 100%; /* fill widened .page-hero-text */
  line-height: 1.55;
  /* Başlık bandı ortalı kalsın; paragraf site SSOT justify */
  text-align: justify;
  text-justify: inter-word;
  hyphens: auto;
}

/* Breadcrumb — air-glass chip; theme tokens by default (light/dark surfaces).
   Hardcoded white-on-dark only inside .page-hero (always dark photo band). */
.breadcrumb {
  font-size: 13px;
  display: inline-flex;
  max-width: 100%;
  margin: 0 0 0.15rem;
  padding: 0.38rem 0.85rem;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.72);
  -webkit-backdrop-filter: blur(10px) saturate(1.15);
  backdrop-filter: blur(10px) saturate(1.15);
  border: 1px solid rgba(15, 23, 42, 0.10);
  box-shadow:
    0 10px 28px -18px rgba(15, 23, 42, 0.18),
    0 1px 0 rgba(255, 255, 255, 0.55) inset;
}
:root[data-theme="dark"] .breadcrumb {
  background: rgba(28, 28, 28, 0.62);
  border-color: rgba(255, 255, 255, 0.12);
  box-shadow:
    0 12px 32px -20px rgba(0, 0, 0, 0.55),
    0 1px 0 rgba(255, 255, 255, 0.06) inset;
}
.breadcrumb-list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  list-style: none;
  margin: 0;
  padding: 0;
}
.breadcrumb-item {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
}
.breadcrumb-link {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  /* Soft+muted mix: readable on light glass without competing with current */
  color: color-mix(in srgb, var(--fg-soft) 70%, var(--fg-muted));
  text-decoration: none;
  transition: color .12s;
  white-space: nowrap;
}
.breadcrumb-link:hover { color: var(--accent); }
.breadcrumb-home { font-weight: 500; }
.breadcrumb-brand {
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  letter-spacing: -0.01em;
}
.breadcrumb-sep {
  color: var(--fg-muted);
  flex-shrink: 0;
}
.breadcrumb-current {
  color: var(--fg);
  font-weight: 600;
  max-width: 60ch;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* Page hero photo band is always dark — invert crumb contrast */
.page-hero .breadcrumb {
  background: rgba(13, 17, 23, 0.58);
  border-color: rgba(255, 255, 255, 0.18);
  box-shadow:
    0 12px 32px -18px rgba(0, 0, 0, 0.55),
    0 1px 0 rgba(255, 255, 255, 0.10) inset;
}
.page-hero .breadcrumb-link {
  color: rgba(255, 255, 255, 0.90);
}
.page-hero .breadcrumb-link:hover {
  color: #fff;
}
.page-hero .breadcrumb-sep {
  color: rgba(255, 255, 255, 0.58);
}
.page-hero .breadcrumb-current {
  color: #fff;
}


/* Adapt XenForo's element resets without forking shared components. */
html#XF { font-size: 16px; }
html#XF body { margin: 0; }
html#XF .p-body-inner { max-width: 1280px; padding: 24px 32px; }
html#XF .p-body-main, html#XF .p-body-content, html#XF .p-body-sidebar { min-width: 0; }
html#XF .page-hero-title { font-weight: 700 !important; padding: 0; text-indent: 0; }
html#XF .page-hero-sub { padding: 0; }
html#XF .page-hero img { display: block; }
html#XF footer.footer-aior { padding: 0; font-size: inherit; background-image: none; margin: 0; }
html#XF footer.footer-aior::after { content: none; }
html#XF .aior-fnav-inner { width: 100%; min-width: 0; }
html#XF .aior-fnav-list { min-width: 0; }
html#XF .button.button--primary, html#XF .button.button--cta,
html#XF .forumStats-header .tabs-tab.is-active, html#XF .forumStats-header .tabs-tab:hover,
html#XF .aior-fnav-link.is-active, html#XF .aior-fnav-link[aria-current="page"] {
  background: var(--accent-solid) !important; border-color: var(--accent-solid) !important; color: var(--on-solid) !important;
}
html#XF .u-scrollButtons, html#XF .js-scrollButtons { display: none !important; }
@media (max-width: 767px) {
  html#XF .p-body-inner { padding: 16px; }
  html#XF .aior-fnav-inner { display: flex; flex-wrap: wrap; gap: 4px; padding-inline: 16px; }
  html#XF .aior-fnav-list { flex: 1 1 100%; justify-content: flex-start; overflow-x: auto; }
  html#XF .aior-fnav-tools { margin-left: auto; }
}

/* Utilities supplied by Astro's page CSS on the main site. */
html#XF body { font-size: 14px !important; line-height: 1.55 !important; }
html#XF .justify-between { justify-content: space-between; }
html#XF .min-w-0 { min-width: 0; }
html#XF .shrink-0 { flex-shrink: 0; }
html#XF .aior-fnav-inner { max-width: 80rem; margin-inline: auto; padding-inline: 32px; }
@media (max-width: 1023px) { html#XF .aior-fnav-inner { padding-inline: 24px; } }
@media (max-width: 639px) { html#XF .aior-fnav-inner { padding-inline: 16px; } }
/* Filled forum actions use the same accessible blue as the shared header. */
html#XF .aior--forum-stats .forumStats-main-tab.is-active,
html#XF .aior--forum-stats .tabs-tab.is-active,
html#XF .forumStats-showMore .button,
html#XF .tab-buttons .buttonGroup-buttonWrapper .button.menuTrigger {
  background: var(--accent-solid) !important;
  border-color: var(--accent-solid) !important;
  color: var(--on-solid) !important;
}
html#XF .tab-buttons .button.menuTrigger .button-text,
html#XF .tab-buttons .button.menuTrigger i,
html#XF .tab-buttons .button.menuTrigger svg { color: var(--on-solid) !important; }
html#XF[data-theme] .aior--forum-stats .forumStats-main-tab.is-active,
html#XF[data-theme] .aior--forum-stats .forumStats-main-tab.is-active :is(span, i, svg),
html#XF[data-theme] .tab-buttons .buttonGroup-buttonWrapper .button.menuTrigger,
html#XF[data-theme] .tab-buttons .buttonGroup-buttonWrapper .button.menuTrigger :is(span, i, svg) {
  color: var(--on-solid) !important;
}
/* XF's external SVG has no intrinsic width; reserve a real touch target and icon slot. */
html#XF .tab-buttons .button.menuTrigger {
  min-width: 36px !important;
  padding: 8px !important;
  justify-content: center !important;
}
html#XF .tab-buttons .button-text,
html#XF .tab-buttons .fa--xf,
html#XF .tab-buttons .fa--xf svg {
  width: 16px !important;
  height: 16px !important;
  min-width: 16px !important;
}

/* Çerez onay — tam genişlik yatay alt bar (WHMCS ile aynı tasarım) */
body.cookie-consent-visible {
  padding-bottom: var(--cookie-consent-offset, 148px);
  transition: padding-bottom 180ms ease;
}
.cookie-consent {
  position: fixed;
  z-index: 10000;
  left: 0;
  right: 0;
  bottom: 0;
  transform: translateY(100%);
  width: auto;
  max-width: 100%;
  overflow-x: clip;
  box-sizing: border-box;
  /* Own surface + color-scheme: never inherit dark UA text onto white glass */
  color-scheme: light;
  background: #ffffff;
  color: #0a0e1a;
  border-top: 1px solid #d8dee8;
  padding: 0 clamp(0.85rem, 3vw, 1.5rem) calc(clamp(0.85rem, 2vw, 1rem) + env(safe-area-inset-bottom, 0px));
  box-shadow: 0 -20px 48px -24px rgba(15, 23, 42, 0.28);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition:
    opacity 180ms ease,
    transform 220ms cubic-bezier(0.22, 1, 0.36, 1),
    visibility 0s linear 220ms;
}
.cookie-consent::before {
  content: "";
  display: block;
  height: 3px;
  margin: 0 0 0.85rem;
  width: 100%;
  background: linear-gradient(90deg, var(--accent) 0%, var(--accent-deep) 55%, #1557a0 100%);
}
.cookie-consent[data-open="true"] {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0);
  transition-delay: 0s;
}
.cookie-consent-inner {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 0.85rem clamp(0.85rem, 2.5vw, 1.5rem);
  align-items: center;
  width: min(1180px, 100%);
  margin: 0 auto;
  padding: 0.15rem 0 0.35rem;
}
.cookie-consent-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 11px;
  background: color-mix(in srgb, #1d9bf0 12%, #ffffff);
  color: #0c7abf;
  flex-shrink: 0;
}
.cookie-consent-copy { min-width: 0; }
.cookie-consent-title {
  margin: 0 0 0.25rem;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.35;
  color: #0a0e1a;
}
.cookie-consent-text {
  margin: 0;
  font-size: clamp(13px, 1.45vw, 14px);
  line-height: 1.55;
  /* Hard contrast on white bar — never var(--fg-muted) from dark theme */
  color: #334155;
}
.cookie-consent-links,
.cookie-consent-actions {
  display: flex;
  align-items: center;
  gap: 0.55rem;
}
.cookie-consent-links {
  flex-wrap: wrap;
  margin-top: 0.45rem;
}
.cookie-consent-link {
  font-size: 13px;
  color: #0c7abf;
  text-decoration: none;
  font-weight: 600;
}
.cookie-consent-link:hover {
  color: #1d9bf0;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.cookie-consent-link-sep {
  color: #64748b;
  font-size: 12px;
  user-select: none;
}
.cookie-consent-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 9.5rem;
  min-height: 44px;
  padding: 0.72rem 1.15rem;
  border: 1.5px solid transparent;
  font-weight: 700;
  font-size: 14px;
  line-height: 1.2;
  border-radius: 11px;
  cursor: pointer;
  white-space: nowrap;
  transition: background 140ms ease, border-color 140ms ease, box-shadow 140ms ease, color 140ms ease, transform 140ms ease;
}
.cookie-consent-btn-primary {
  background: var(--accent-solid);
  border-color: var(--accent-solid);
  color: var(--on-solid);
  box-shadow: 0 10px 24px -14px color-mix(in srgb, #1d9bf0 85%, transparent);
}
.cookie-consent-btn-primary:hover {
  background: var(--accent-solid-hover);
  border-color: var(--accent-solid-hover);
}
.cookie-consent-btn-ghost {
  background: #0a0e1a;
  border-color: #0a0e1a;
  color: #ffffff;
  box-shadow: none;
}
.cookie-consent-btn-ghost:hover {
  background: #1a2233;
  border-color: #1a2233;
}
:root[data-theme="dark"] .cookie-consent {
  color-scheme: dark;
  background: rgba(22, 22, 24, 0.97);
  color: #f7f8f9;
  border-top-color: rgba(255, 255, 255, 0.12);
  box-shadow: 0 -20px 48px -24px rgba(0, 0, 0, 0.75);
}
:root[data-theme="dark"] .cookie-consent-icon {
  background: color-mix(in srgb, #1d9bf0 18%, #2a2a2a);
  color: #1d9bf0;
}
:root[data-theme="dark"] .cookie-consent-title {
  color: #f7f8f9;
}
:root[data-theme="dark"] .cookie-consent-text {
  color: #c5c9d2;
}
:root[data-theme="dark"] .cookie-consent-link {
  color: #5eb8f5;
}
:root[data-theme="dark"] .cookie-consent-link:hover {
  color: #1d9bf0;
}
:root[data-theme="dark"] .cookie-consent-link-sep {
  color: #8b919c;
}
:root[data-theme="dark"] .cookie-consent-btn-ghost {
  background: rgba(255, 255, 255, 0.1);
  border-color: rgba(255, 255, 255, 0.28);
  color: #f7f8f9;
}
:root[data-theme="dark"] .cookie-consent-btn-ghost:hover {
  background: rgba(255, 255, 255, 0.16);
  border-color: rgba(255, 255, 255, 0.4);
}
:root[data-theme="dark"] .cookie-consent-btn-primary {
  color: #ffffff;
}
@media (max-width: 820px) {
  .cookie-consent-inner {
    grid-template-columns: auto 1fr;
    grid-template-areas: "icon copy" "actions actions";
  }
  .cookie-consent-icon { grid-area: icon; }
  .cookie-consent-copy { grid-area: copy; }
  /* Buttons side by side: stacked full-width buttons made the bar ~40% of a phone screen. */
  .cookie-consent-actions {
    grid-area: actions;
    width: 100%;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.5rem;
  }
  .cookie-consent-btn { width: 100%; min-width: 0; }
}
@media (max-width: 480px) {
  .cookie-consent::before { margin-bottom: 0.6rem; }
  .cookie-consent-inner {
    grid-template-columns: 1fr;
    grid-template-areas: "copy" "actions";
    gap: 0.6rem;
    padding: 0;
  }
  .cookie-consent-icon { display: none; }
  .cookie-consent-title { font-size: 13px; margin-bottom: 0.15rem; }
  .cookie-consent-text { font-size: 12.5px; line-height: 1.45; }
  .cookie-consent-links { margin-top: 0.3rem; }
  .cookie-consent-link { font-size: 12.5px; }
  /* 44px stays the touch target; long labels may wrap instead of overflowing. */
  .cookie-consent-btn { padding: 0.55rem 0.6rem; font-size: 13.5px; white-space: normal; }
}

