/* Site-wide Dark Theme + Plus Jakarta Sans adoption */

:root {
  --site-bg: #0b0e14;
  --site-surface: #0f1116;
  --site-surface-2: #12141a;
  --site-border: #262a35;
  --site-text: #e9edf3;
  --site-text-dim: #98a1b0;
  --site-primary: #3b82f6;
  --site-accent: #22d3ee;
}

html, body { background: var(--site-bg); color: var(--site-text); }
body { font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif; }

/* Bootstrap overrides */
.navbar-dark.bg-dark { background-color: rgba(14,18,25,.92) !important; border-bottom: 1px solid var(--site-border); backdrop-filter: blur(8px) saturate(140%); z-index: 2147483647 !important; }
.navbar .navbar-brand { color: var(--site-text) !important; font-weight: 800; letter-spacing: .2px; display: inline-flex; align-items: center; gap: 8px; }
.navbar .navbar-brand:hover { color: #ffffff !important; }
.navbar .nav-link { position: relative; color: var(--site-text) !important; padding: .6rem .85rem !important; border-radius: 10px; }
.navbar .nav-link:hover { color: #ffffff !important; background: rgba(255,255,255,.03); }
.navbar .nav-link.active, .navbar .nav-link:focus { color: var(--site-accent) !important; }
.navbar .nav-link::after { content: ""; position: absolute; left: .8rem; right: .8rem; bottom: .35rem; height: 2px; background: linear-gradient(90deg, #93c5fd, #a5f3fc); transform: scaleX(0); transform-origin: left; transition: transform .2s ease; border-radius: 999px; }
.navbar .nav-link:hover::after, .navbar .nav-link.active::after { transform: scaleX(1); }

/* Dropdown açıkken altındaki dekoratif pseudo-öğeler tıklamayı engellemesin */
.navbar .nav-item.dropdown .dropdown-menu { isolation: isolate; }

/* Language/user buttons */
.navbar .btn, .navbar .dropdown-toggle { border-radius: 999px !important; }
.navbar .btn-outline-light { padding: .45rem .9rem; }
.navbar .btn-primary { padding: .45rem .9rem; }

/* Fix legacy yellow text inside navbar */
.navbar .text-warning { color: var(--site-accent) !important; }
.dropdown-menu { z-index: 2147483647 !important; padding: .35rem 0; pointer-events: auto; position: absolute; overscroll-behavior: contain; }
.dropdown-menu .dropdown-item { position: relative; z-index: 2147483647; pointer-events: auto; }
.dropdown-menu { background: var(--site-surface); border: 1px solid var(--site-border); color: var(--site-text); }
.dropdown-item { color: var(--site-text); }
.dropdown-item { padding: .55rem 1rem; line-height: 1.1; }
.dropdown-item:hover { background: rgba(255,255,255,.06); color: #fff; }

/* Navbar dropdown aesthetic (dark, glassy, brand-consistent) */
.navbar .dropdown-menu {
  background: rgba(15,17,23,0.96);
  border: 1px solid var(--site-border);
  border-radius: 12px;
  padding: 6px;
  box-shadow: 0 16px 40px rgba(0,0,0,.45);
  backdrop-filter: blur(8px) saturate(140%);
}
.navbar .dropdown-item {
  border-radius: 10px;
  margin: 2px 4px;
  font-weight: 700;
}
.navbar .dropdown-item:hover,
.navbar .dropdown-item:focus,
.navbar .dropdown-item:active {
  background: linear-gradient(135deg, rgba(59,130,246,.14), rgba(34,211,238,.14));
  color: #ffffff !important;
}

/* Force dropdown to capture clicks above any backgrounds */
header, header * { pointer-events: auto; }
.dropdown-menu, .dropdown-menu * { pointer-events: auto !important; }

.card { background: var(--site-surface); border: 1px solid var(--site-border); color: var(--site-text); }
.table { color: var(--site-text); }
.table thead { background: rgba(255,255,255,.03); }
.form-control, .form-select { background: #0f131a; color: var(--site-text); border: 1px solid var(--site-border); }
.form-control::placeholder, .form-select::placeholder { color: var(--site-text-dim); opacity: .85; }
.form-control:focus, .form-select:focus { background: #0f131a; color: var(--site-text); border-color: var(--site-accent); box-shadow: 0 0 0 .25rem rgba(34,211,238,.18); }
.form-control:-webkit-autofill,
.form-control:-webkit-autofill:hover,
.form-control:-webkit-autofill:focus,
input:-webkit-autofill, select:-webkit-autofill, textarea:-webkit-autofill {
  -webkit-text-fill-color: var(--site-text);
  -webkit-box-shadow: 0 0 0px 1000px #0f131a inset;
  transition: background-color 9999s ease-in-out 0s;
}
.input-group-text { background: rgba(255,255,255,.03); color: var(--site-text); border: 1px solid var(--site-border); }

.btn-primary { background: linear-gradient(135deg, rgba(59,130,246,.20), rgba(34,211,238,.20)); border: 1px solid rgba(56,189,248,.38); color: #fff; border-radius: 999px; backdrop-filter: saturate(130%) blur(4px); }
.btn-primary:hover { filter: brightness(1.06); background: linear-gradient(135deg, rgba(59,130,246,.28), rgba(34,211,238,.28)); }
.btn-outline-light { border-color: rgba(255,255,255,.35); color: #e5edf7; border-radius: 999px; backdrop-filter: blur(4px) saturate(120%); }
.btn-outline-light:hover { background: rgba(255,255,255,.08); }

.badge { border: 1px solid var(--site-border); }

/* Accent text utility */
.text-accent { color: var(--site-accent) !important; }
/* Override legacy warning palette to new accent */
.text-warning { color: var(--site-accent) !important; }
.btn-warning { background: linear-gradient(135deg, rgba(59,130,246,.20), rgba(34,211,238,.20)); border: 1px solid rgba(56,189,248,.38); color: #fff; border-radius: 999px; backdrop-filter: saturate(130%) blur(4px); }
.btn-warning:hover { filter: brightness(1.06); background: linear-gradient(135deg, rgba(59,130,246,.28), rgba(34,211,238,.28)); }

/* Navbar shrink style */
.navbar.navbar-shrink { padding-top: .35rem; padding-bottom: .35rem; background-color: rgba(14,18,25,.96) !important; box-shadow: 0 6px 20px rgba(0,0,0,.35); }

/* Page sections */
.bg-light { background-color: #0f1116 !important; }
.text-muted { color: var(--site-text-dim) !important; }

/* Footer */
footer.bg-dark { background-color: #0e1219 !important; border-top: 1px solid var(--site-border); }

/* Utility */
.shadow-lg { box-shadow: 0 10px 28px rgba(0,0,0,.35) !important; }
.sticky-top { z-index: 2147483645; }

/* Page hero and headings */
.page-hero {
  background: linear-gradient(180deg, rgba(255,255,255,0.04), rgba(255,255,255,0));
  padding: 64px 0;
  color: var(--site-text);
  border-bottom: 1px solid var(--site-border);
}
.page-title {
  font-weight: 800;
  background: linear-gradient(135deg, #ffffff, #eaf7ff);
  -webkit-background-clip: text; background-clip: text; color: transparent;
  position: relative; display: inline-block;
}
.page-title::after {
  content: ""; display: block; height: 3px; width: 100%; margin-top: 8px; border-radius: 999px;
  background: linear-gradient(90deg, #93c5fd, #a5f3fc); opacity: .75; box-shadow: 0 2px 8px rgba(147,197,253,.25);
}
.page-subtitle { color: #cfe9ff; font-weight: 700; letter-spacing: .2px; }

/* Steps chip */
.step-chip {
  width: 44px; height: 44px; border-radius: 999px; display: flex; align-items: center; justify-content: center;
  background: rgba(59,130,246,.18); color: #e6f0ff; border: 1px solid var(--site-border); font-weight: 800;
}

/* Wide CTA */
.cta-wide {
  background: linear-gradient(135deg, rgba(59,130,246,.10), rgba(34,211,238,.10));
  border-top: 1px solid var(--site-border);
  border-bottom: 1px solid var(--site-border);
  color: var(--site-text);
}

/* Accordion dark styling */
.accordion .accordion-item { background: var(--site-surface); border: 1px solid var(--site-border); border-radius: 12px; overflow: hidden; }
.accordion .accordion-item + .accordion-item { margin-top: 10px; }
.accordion-button { background: rgba(255,255,255,.03); color: var(--site-text); }
.accordion-button.collapsed { background: rgba(255,255,255,.03); color: var(--site-text); }
.accordion-button:focus { box-shadow: 0 0 0 .25rem rgba(34,211,238,.18); }
.accordion-button::after { filter: invert(.85) saturate(.8); }
.accordion-body { background: rgba(255,255,255,.02); color: var(--site-text); }


/* Auth pages (login/register) */
body.auth { background: radial-gradient(1200px 500px at 80% -10%, rgba(255,138,92,.08), transparent 60%), radial-gradient(1000px 400px at 10% 120%, rgba(34,211,238,.10), transparent 60%), var(--site-bg); }
.auth-wrapper { padding: 32px 0 64px; }
.auth-panel { display: grid; grid-template-columns: 1fr; gap: 18px; }
@media (min-width: 992px) { .auth-panel { grid-template-columns: 1.1fr 1fr; min-height: calc(100vh - 120px); align-items: center; } }
.auth-left { background: var(--site-surface-2); border: 1px solid var(--site-border); border-radius: 16px; }
.auth-left-inner { padding: 28px; display: flex; flex-direction: column; justify-content: center; height: 100%; }
.auth-left .brand-badge { display:inline-flex; align-items:center; gap:8px; background: rgba(255,255,255,.06); border:1px solid var(--site-border); color:#e9edf3; border-radius:999px; padding:6px 12px; font-weight:800; letter-spacing:.2px; width: fit-content; }
.auth-title { font-weight: 900; font-size: clamp(1.6rem, 2.6vw, 2.2rem); margin: 16px 0 8px; background: linear-gradient(135deg, #ffffff, #eaf7ff); -webkit-background-clip:text; background-clip:text; color: transparent; }
.auth-subtitle { color: var(--site-text-dim); }
.auth-features { list-style:none; padding:0; margin:16px 0 0; color: var(--site-text-dim); }
.auth-features li { display:flex; align-items:center; gap:10px; margin:8px 0; }
.auth-features i { color: var(--site-accent); }

.auth-right { display:flex; align-items:center; }
.auth-card { width: 100%; background: var(--site-surface); border: 1px solid var(--site-border); border-radius: 16px; padding: 24px; box-shadow: 0 12px 32px rgba(0,0,0,.28); }
.auth-heading { font-weight: 900; letter-spacing: .2px; }
.auth-desc { color: var(--site-text-dim); }
.auth-input-group .input-group-text { background: rgba(255,255,255,.06); border: 1px solid var(--site-border); }
.auth-input-group .form-control { background: #0f131a; color: var(--site-text); border: 1px solid var(--site-border); }
.auth-input-group .form-control:focus { border-color: var(--site-accent); box-shadow: 0 0 0 .25rem rgba(34,211,238,.18); }
