/* Noxery companion styles for the dashboard-ui theme (same palette). */
:root {
  --nx-green: #3fb97f;
  --nx-green-bg: rgba(63,185,127,.12);
  --nx-red: #e05f4e;
  --nx-red-bg: rgba(224,95,78,.12);
  --nx-amber: #d9a13b;
  --nx-amber-bg: rgba(217,161,59,.13);
  --nx-mono: "Be Vietnam Pro", ui-monospace, Consolas, monospace;
}

/* ---------- header bits ---------- */
.header-logo img.brand-img { height: 30px; width: auto; }
.header-navigation-links a.active { color: var(--c-accent-primary); }
.avatar-initial {
  display: inline-flex; align-items: center; justify-content: center;
  width: 44px; height: 44px; border-radius: 50%;
  background: var(--c-background-tertiary); color: var(--c-accent-primary);
  font-weight: 700; font-size: 1rem;
}
.user-menu { position: relative; }
.user-menu .dropdown {
  position: absolute; right: 0; top: calc(100% + 8px); min-width: 170px;
  background: var(--c-background-primary); border: 1px solid var(--c-border-primary);
  border-radius: 10px; box-shadow: 0 8px 24px rgba(0,0,0,.08); padding: 6px; z-index: 40;
}
.user-menu .dropdown a {
  display: block; padding: 8px 12px; border-radius: 7px; text-decoration: none;
  color: var(--c-text-action); font-size: .875rem; font-weight: 500;
}
.user-menu .dropdown a:hover { background: var(--c-background-tertiary); color: var(--c-accent-primary); }
.mobile-menu { display: none; }
#mobileMenuBtn { display: none; }
@media (max-width: 1200px) {
  #mobileMenuBtn { display: inline-flex; }
}
@media (max-width: 1200px) {
  .mobile-menu { display: inline-flex; }
  .header-navigation.open { display: flex; position: absolute; top: 80px; left: 0; right: 0; z-index: 30;
    background: var(--c-background-primary); border-bottom: 1px solid var(--c-border-primary);
    padding: 12px 5%; flex-direction: column; align-items: stretch; gap: 8px; }
  .header-navigation.open .header-navigation-links { flex-direction: column; align-items: stretch; }
  .header-navigation.open .header-navigation-links a { padding: 10px 4px; }
  .header-navigation.open .header-navigation-actions { justify-content: flex-start; }
}

/* ---------- footer ---------- */
.footer { border-top: 1px solid var(--c-border-primary); margin-top: 2rem; padding: .9rem 0 1.25rem;
  color: var(--c-text-secondary); font-size: .75rem; background: transparent; }
.footer-inner { display: flex; justify-content: space-between; align-items: center; gap: .75rem 1.5rem; flex-wrap: wrap; }
.footer-inner > span { overflow-wrap: anywhere; }
.footer-inner nav { display: flex; align-items: center; gap: .25rem 1.1rem; flex-wrap: wrap; }
.footer-inner nav a { color: var(--c-text-secondary); text-decoration: none; font-weight: 500; white-space: nowrap; }
.footer-inner nav a:hover { color: var(--c-accent-primary); }
@media (max-width: 640px) {
  .footer-inner { flex-direction: column; align-items: stretch; }
  .footer-inner nav { display: grid; grid-template-columns: 1fr 1fr; gap: .5rem 1rem; }
  .footer-inner nav a { overflow: hidden; text-overflow: ellipsis; }
}

/* ---------- stats ---------- */
.stat-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.5rem; margin-bottom: 1.5rem; }
@media (max-width: 1000px) { .stat-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 560px) { .stat-grid { grid-template-columns: 1fr; } }
.stat-card { background: var(--c-background-primary); border: 1px solid var(--c-border-primary); border-radius: 10px; padding: 1.25rem; }
.stat-card .stat-label { color: var(--c-text-secondary); font-size: .78rem; font-weight: 500; }
.stat-card .stat-value { font-size: 1.6rem; font-weight: 700; margin-top: .25rem; }
.stat-card .stat-note { color: var(--c-text-secondary); font-size: .78rem; }

/* ---------- tables ---------- */
.table-card { background: var(--c-background-primary); border: 1px solid var(--c-border-primary); border-radius: 10px; overflow: hidden; margin-bottom: 1.5rem; }
.table-card .table-head { padding: 1.25rem 1.25rem .5rem; display: flex; justify-content: space-between; align-items: center; }
.table-card .table-head h3 { font-weight: 600; font-size: 1rem; }
.table-scroll { overflow-x: auto; }
table.nx-table { width: 100%; border-collapse: collapse; font-size: .875rem; }
.nx-table th { text-align: left; padding: .75rem 1.25rem; color: var(--c-text-secondary); font-weight: 500;
  border-bottom: 1px solid var(--c-border-primary); white-space: nowrap; }
.nx-table td { padding: .85rem 1.25rem; border-bottom: 1px solid var(--c-border-primary); vertical-align: middle; }
.nx-table tr:last-child td { border-bottom: none; }
.nx-table .mono { font-family: var(--nx-mono); font-size: .8rem; }
.empty { padding: 1.5rem; color: var(--c-text-secondary); }

/* ---------- badges ---------- */
.badge { display: inline-block; font-size: .72rem; font-weight: 600; padding: 2px 10px; border-radius: 99em;
  background: var(--c-background-quaternary); color: var(--c-text-action); }
.badge-ok { background: var(--nx-green-bg); color: var(--nx-green); }
.badge-off { background: var(--c-background-quaternary); color: var(--c-text-secondary); }
.badge-warn { background: var(--nx-amber-bg); color: var(--nx-amber); }
.badge-err { background: var(--nx-red-bg); color: var(--nx-red); }

/* ---------- alerts ---------- */
.alert { padding: .8rem 1rem; border-radius: 8px; font-size: .875rem; margin-bottom: 1.25rem;
  background: var(--c-background-tertiary); color: var(--c-text-action); }
.alert-error { background: var(--nx-red-bg); color: var(--nx-red); }
.alert-success { background: var(--nx-green-bg); color: var(--nx-green); }

/* ---------- email verification notice ---------- */
.email-verification-notice {
  display: grid;
  grid-template-columns: 1.9rem minmax(0, 1fr) auto;
  gap: .65rem;
  align-items: center;
  margin-bottom: 1rem;
  padding: .55rem .7rem;
  border: 1px solid rgba(181,71,8,.18);
  border-radius: 8px;
  background: var(--nx-amber-bg);
  color: var(--c-text-primary);
}
.email-verification-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.9rem;
  height: 1.9rem;
  border-radius: 6px;
  background: rgba(181,71,8,.1);
  color: var(--nx-amber);
  font-size: 1rem;
}
.email-verification-copy {
  display: flex;
  min-width: 0;
  align-items: baseline;
  gap: .45rem;
  flex-wrap: wrap;
  line-height: 1.35;
}
.email-verification-copy strong { color: var(--nx-amber); font-size: .78rem; font-weight: 700; }
.email-verification-copy span { color: var(--c-text-secondary); font-size: .74rem; }
.email-verification-form { margin: 0; }
.email-verification-button {
  height: 28px;
  padding: 0 .7rem;
  border-color: rgba(181,71,8,.25);
  color: var(--nx-amber);
  font-size: .72rem;
  white-space: nowrap;
}
.email-verification-button:hover,
.email-verification-button:focus { border-color: var(--nx-amber); color: var(--nx-amber); }
.email-verification-feedback {
  display: flex;
  align-items: center;
  gap: .45rem;
  margin: -.35rem 0 1rem;
  color: var(--nx-green);
  font-size: .76rem;
  line-height: 1.4;
}
.email-verification-feedback.is-error { color: var(--nx-red); }
.email-verification-feedback.is-info { color: var(--nx-amber); }
@media (max-width: 640px) {
  .email-verification-notice {
    grid-template-columns: 1.9rem minmax(0, 1fr);
    align-items: start;
  }
  .email-verification-form { grid-column: 2; }
}

/* ---------- suspension notice ---------- */
.suspension-alert {
  display: grid;
  grid-template-columns: 2.75rem minmax(0, 1fr);
  gap: 1rem;
  align-items: start;
  margin-bottom: 1.5rem;
  padding: 1.15rem 1.25rem;
  border: 1px solid var(--c-border-primary);
  border-left: 4px solid var(--nx-red);
  border-radius: 10px;
  background: var(--nx-red-bg);
  color: var(--c-text-primary);
}
.suspension-alert-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.75rem;
  height: 2.75rem;
  border-radius: 8px;
  background: rgba(217,45,32,.12);
  color: var(--nx-red);
  font-size: 1.35rem;
}
.suspension-alert-body { min-width: 0; }
.suspension-alert-title { margin: 0; }
.suspension-alert-eyebrow,
.suspension-alert-label {
  display: block;
  color: var(--nx-red);
  font-size: .68rem;
  font-weight: 700;
  letter-spacing: .08em;
  line-height: 1.3;
  text-transform: uppercase;
}
.suspension-alert-title h2 {
  margin: .15rem 0 0;
  color: var(--nx-red);
  font-size: 1.08rem;
  font-weight: 700;
  line-height: 1.35;
}
.suspension-alert-reason {
  margin-top: .9rem;
  padding: .8rem .9rem;
  border: 1px solid var(--c-border-primary);
  border-radius: 8px;
  background: var(--c-background-tertiary);
}
.suspension-alert-reason p {
  margin: .3rem 0 0;
  color: var(--c-text-primary);
  font-size: .92rem;
  font-weight: 600;
  line-height: 1.55;
  overflow-wrap: anywhere;
}
.suspension-alert-description {
  margin: .85rem 0 0;
  color: var(--c-text-secondary);
  font-size: .8rem;
  line-height: 1.55;
}
@media (max-width: 560px) {
  .suspension-alert {
    grid-template-columns: 1fr;
    gap: .75rem;
    padding: 1rem;
  }
  .suspension-alert-icon { width: 2.35rem; height: 2.35rem; font-size: 1.15rem; }
  .suspension-alert-title h2 { font-size: 1rem; }
  .suspension-alert-reason { padding: .75rem; }
}

/* ---------- forms ---------- */
.field { margin-bottom: 1rem; }
.field label { display: block; font-size: .8rem; font-weight: 500; margin-bottom: .35rem; color: var(--c-text-action); }
.input, .select {
  font: inherit; width: 100%; height: 42px; padding: 0 1em; border-radius: 8px;
  border: 2px solid var(--c-border-primary); background: var(--c-background-primary); color: var(--c-text-primary);
  font-size: .875rem; transition: .15s ease; box-sizing: border-box;
}
.button-block { width: 100%; box-sizing: border-box; }
/* recaptcha sabit 304px'dir; dar ekranda tasmamasi icin */
.captcha-wrap { max-width: 100%; overflow: hidden; margin-bottom: 1rem; }
@media (max-width: 340px) {
  .captcha-wrap .g-recaptcha { transform: scale(.85); transform-origin: 0 0; }
  .captcha-wrap { max-height: 70px; }
}
@media (max-width: 560px) {
  .footer-inner { justify-content: center; text-align: center; }
  .footer-inner nav a:first-child { margin-left: 0; }
}
.select { width: auto; }
textarea.input { height: auto; padding: .75em 1em; }
.input:focus, .select:focus { border-color: var(--c-accent-primary); }
.input::placeholder { color: var(--c-text-secondary); }
.inline-form { display: flex; gap: .75rem; align-items: center; flex-wrap: wrap; }
.check { display: flex; align-items: center; gap: .5rem; font-size: .875rem; margin-bottom: .5rem; }
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0 1rem; }
@media (max-width: 640px) { .form-grid { grid-template-columns: 1fr; } }

/* ---------- buttons (extend template .button) ---------- */
.button-primary { background: var(--c-accent-primary); border-color: var(--c-accent-primary); color: #fff; }
.button-primary:hover, .button-primary:focus { color: #fff; opacity: .9; border-color: var(--c-accent-primary); }
.button-danger { color: var(--nx-red); }
.button-danger:hover, .button-danger:focus { border-color: var(--nx-red); color: var(--nx-red); }
.button-block { width: 100%; }
.button-sm { height: 34px; font-size: .8rem; }
.button-primary:focus-visible, .button:focus-visible { outline: 2px solid var(--c-accent-primary); outline-offset: 2px; }

/* ---------- key reveal ---------- */
.key-box { display: flex; align-items: center; justify-content: space-between; gap: .75rem;
  background: var(--c-background-secondary); border: 1px solid var(--c-border-primary);
  border-radius: 8px; padding: .7rem 1rem; margin-top: .6rem; }
.key-box code { font-family: var(--nx-mono); font-size: .8rem; word-break: break-all; }

/* ---------- quota bars ---------- */
.quota { margin-top: .75rem; }
.quota-row { margin-bottom: .6rem; }
.quota-top { display: flex; justify-content: space-between; font-size: .75rem; color: var(--c-text-secondary); margin-bottom: 3px; }
.progress { height: 6px; background: var(--c-background-quaternary); border-radius: 3px; overflow: hidden; }
.progress > span { display: block; height: 100%; background: var(--c-accent-primary); border-radius: 3px; }
.progress > span.warn { background: var(--nx-amber); }
.progress > span.over { background: var(--nx-red); }

/* ---------- models sayfasi ---------- */
.models-toolbar { display: flex; gap: .75rem; align-items: center; margin-bottom: 1rem; }
.models-head { padding-top: .25rem; }
.models-head .content-header-intro p.models-count { margin: 0; font-size: .85rem; color: var(--c-text-secondary); }
.models-search { flex: 1 1 240px; min-width: 0; max-width: 340px; }
.filter-chips { display: flex; gap: .5rem; overflow-x: auto; padding-bottom: .25rem; scrollbar-width: thin; flex: 1 1 auto; min-width: 0; }
.filter-chips a {
  flex-shrink: 0; text-decoration: none; font-size: .82rem; font-weight: 600;
  color: var(--c-text-secondary); background: var(--c-background-primary);
  border: 1px solid var(--c-border-primary); border-radius: 999px;
  padding: .42rem .95rem; min-height: 36px; display: inline-flex; align-items: center;
  transition: border-color .12s ease, color .12s ease, background .12s ease;
}
.filter-chips a:hover { color: var(--c-text-primary); border-color: var(--c-accent-primary); }
.filter-chips a.active { background: var(--c-accent-soft); border-color: var(--c-accent-primary); color: var(--c-accent-text); }
@media (max-width: 640px) {
  .models-toolbar { flex-direction: column; align-items: stretch; gap: .6rem; margin-bottom: 1rem; }
  .models-search { flex: none; width: 100%; max-width: none; }
  .model-grid { gap: .8rem; }
  .model-card .card-body { gap: .5rem; }
}
.model-grid { display: grid; grid-template-columns: 1fr; gap: 1rem; }
@media (min-width: 700px) { .model-grid { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1100px) { .model-grid { grid-template-columns: repeat(3, 1fr); } }
.model-card .card-header { padding-bottom: .5rem; }
.model-head { display: flex; align-items: center; gap: .75rem; min-width: 0; }
.model-head > span.model-titles { width: auto; height: auto; display: flex; }
.model-head .model-id { width: auto; height: auto; display: block; }
.model-titles { display: flex; flex-direction: column; min-width: 0; gap: .15rem; }
.model-titles strong { font-size: 1rem; font-weight: 650; color: var(--c-text-primary); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.model-titles .model-id { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.model-card:hover .model-titles strong { color: var(--c-accent-text); }
.model-card .card-body { display: flex; flex-direction: column; gap: .6rem; }
.model-desc { font-size: .85rem; color: var(--c-text-secondary); line-height: 1.6; }
.model-badges { display: flex; flex-wrap: wrap; gap: .35rem; }
.model-badges .badge { font-size: .68rem; padding: 1px 8px; }
.model-card .quota { margin-top: .25rem; }
.model-card .card-footer a { font-weight: 650; color: var(--c-accent-text); text-decoration: none; }
.model-card .card-footer a:hover { color: var(--c-accent-primary); }
.model-card .quota-row { margin-bottom: .55rem; }
.model-card .quota-top .used { font-variant-numeric: tabular-nums; }
.model-card .progress { height: 8px; }
.models-soon-head { padding-top: 1.5rem; }
.badge { font-size: .7rem; }
.provider-icon { display: inline-flex; align-items: center; justify-content: center;
  width: 40px; height: 40px; border-radius: 8px; background: var(--c-background-secondary); flex-shrink: 0; }
.provider-icon img { width: 22px; height: 22px; }
.model-inline { display: inline-flex; align-items: center; gap: .6rem; min-width: 0; }
.model-inline .provider-icon { width: 30px; height: 30px; }
.model-inline .provider-icon img { width: 18px; height: 18px; }
.model-id { font-family: var(--nx-mono); font-size: .75rem; color: var(--c-text-secondary); }

/* ---------- code blocks ---------- */
.code-block { margin: 1rem 0 1.5rem; border: 1px solid var(--c-border-primary); border-radius: 8px; overflow: hidden; }
.code-head { display: flex; justify-content: space-between; align-items: center; padding: .5rem .9rem;
  background: var(--c-background-secondary); font-size: .75rem; color: var(--c-text-secondary); font-family: var(--nx-mono); }
.code-head button { border: 1px solid var(--c-border-primary); background: var(--c-background-primary);
  border-radius: 6px; font-size: .72rem; padding: 2px 10px; cursor: pointer; color: var(--c-text-action); }
.code-block pre { margin: 0; padding: 1rem; overflow-x: auto; font-size: .8rem; line-height: 1.65;
  font-family: var(--nx-mono); background: var(--c-background-primary); }
code.inline { font-family: var(--nx-mono); font-size: .8em; background: var(--c-background-tertiary);
  padding: 1px 6px; border-radius: 6px; }

/* ---------- docs ---------- */
.doc-section { margin-bottom: 2.5rem; }
.doc-section h2 { font-size: 1.25rem; font-weight: 600; margin-bottom: .75rem; }
.doc-section h3 { font-size: 1.05rem; font-weight: 600; margin: 1.5rem 0 .5rem; }
.doc-section p { color: var(--c-text-secondary); font-size: .9rem; margin-bottom: .8rem; }
.docs-header { max-width: 920px; padding-top: 2.65rem; border-top: 0; }
.docs-header .content-header-intro { width: 100%; }
.docs-header .content-header-intro h2 { margin-top: .35rem; font-size: clamp(1.55rem, 3vw, 2.2rem); letter-spacing: -.035em; }
.docs-header .content-header-intro p { max-width: 700px; margin-top: .55rem; font-size: .94rem; line-height: 1.65; }
.docs-tree-label { margin: 1.35rem 0 .45rem; padding: 0 .85rem; color: var(--c-text-secondary); font-size: .62rem; font-weight: 750; letter-spacing: .12em; }
.docs-tree-label:first-child { margin-top: .1rem; }
.docs-sidebar { position: sticky; top: 1.25rem; padding: .6rem; border: 1px solid var(--c-border-primary); border-radius: 12px; background: var(--c-background-primary); }
.docs-sidebar a { position: relative; min-height: 36px; padding: .55rem .85rem !important; border-radius: 7px !important; font-size: .82rem; line-height: 1.25; }
.docs-sidebar a:hover, .docs-sidebar a:focus, .docs-sidebar a.is-current { background: var(--c-background-tertiary) !important; color: var(--c-accent-primary) !important; }
.docs-sidebar a.is-current { font-weight: 650; }
.docs-sidebar a.is-current::before { content: ""; position: absolute; left: 0; top: 8px; bottom: 8px; width: 3px; border-radius: 3px; background: var(--c-accent-primary); }
.docs-callout { display: flex; gap: .7rem; align-items: flex-start; margin: 0 0 1.75rem; padding: .9rem 1rem; border: 1px solid var(--c-border-primary); border-left: 3px solid var(--nx-green); border-radius: 9px; background: var(--nx-green-bg); font-size: .86rem; line-height: 1.55; }
.docs-callout strong { flex: 0 0 auto; color: var(--nx-green); }
.docs-callout span { color: var(--c-text-secondary); }
.docs-callout-warn { border-color: var(--c-border-primary); border-left-color: var(--nx-amber); background: var(--nx-amber-bg); }
.docs-callout-warn strong { color: var(--nx-amber); }
.docs-list { margin: .75rem 0 1rem 1.2rem; padding: 0; color: var(--c-text-secondary); font-size: .9rem; line-height: 1.7; }
.docs-list li { margin-bottom: .35rem; }
.docs-table-card { margin: 1rem 0 1.25rem; }
.docs-table-card .table-head { align-items: center; }
.docs-table-card .table-head h3 { margin: 0; }
.docs-table-card .nx-table td:first-child { color: var(--c-text-primary); font-weight: 600; }
.docs-table-card .nx-table td { white-space: nowrap; }
.faq-item { padding: .9rem 0; border-bottom: 1px solid var(--c-border-primary); }
.faq-q { font-weight: 600; }
.faq-a { color: var(--c-text-secondary); font-size: .875rem; margin-top: .25rem; }
@media (min-width: 800px) {
  .content:has(.docs-sidebar) { max-width: 1180px; margin-top: 1.25rem; border-top: 0; gap: 2.5rem; }
  .content:has(.docs-sidebar) .content-panel { width: 230px; max-width: 230px; margin-right: 0; padding: 1rem 0 3rem; }
  .content:has(.docs-sidebar) .content-main { max-width: 820px; padding-top: 1rem; }
}
@media (max-width: 799px) {
  .docs-header { padding-top: 1.5rem !important; }
  .docs-header .endpoint-box { margin-top: .85rem; }
}

/* ---------- unified product shell ---------- */
body { background: var(--c-background-secondary); color: var(--c-text-primary); }
.header { height: 64px; padding: 0; background: #121214; border-bottom: 1px solid var(--c-border-primary); box-shadow: none; }
.header-content { min-height: 64px; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
.header-logo { margin-right: 2rem; }
.header-logo img.brand-img { height: 27px; }
.header-navigation-links { gap: .15rem; padding: 0; background: transparent; }
.header-navigation-links a { padding: .55rem .7rem; border-radius: 7px; color: var(--c-text-secondary); font-size: .78rem; font-weight: 550; }
.header-navigation-links a:hover, .header-navigation-links a:focus, .header-navigation-links a.active { background: var(--c-background-tertiary); color: var(--c-text-primary); box-shadow: none; }
.header-navigation-actions { gap: .35rem; }
.header-navigation-actions .button { height: 36px; border-radius: 7px; }
.main { padding-top: 2.4rem; }
.main-header h1 { color: var(--c-text-primary); font-size: 1.55rem; letter-spacing: -.025em; }
.content-header { padding-top: 1rem; border-top: 0; }
.content-header-intro h2 { color: var(--c-text-primary); letter-spacing: -.025em; }
.content-header-intro p, .page-sub { color: var(--c-text-secondary); line-height: 1.65; }
.content { margin-top: 1.35rem; border-top: 1px solid var(--c-border-primary); }
.card, .table-card, .stat-card { border: 1px solid var(--c-border-primary); border-radius: 10px; }
.card:hover { border-color: var(--c-accent-primary); }
.card-header { padding: 1.2rem 1.25rem .85rem; }
.card-body { padding: .9rem 1.25rem; }
.card-footer { padding: .85rem 1.25rem; border-top: 1px solid var(--c-border-primary); }
.button { border: 1px solid var(--c-border-primary); border-radius: 7px; color: var(--c-text-primary); background: var(--c-background-primary); }
.button:hover, .button:focus { border-color: var(--c-accent-primary); color: var(--c-accent-primary); }
.button-primary { border-color: var(--c-accent-primary); background: var(--c-accent-primary); color: #fff; }
.button-primary:hover, .button-primary:focus { background: var(--c-accent-hover, #4c7cd3); border-color: var(--c-accent-primary); color: #fff; }
.code-block { border: 1px solid var(--c-border-primary); border-radius: 7px; box-shadow: none; }
.code-head { background: var(--c-background-tertiary); border-bottom: 1px solid var(--c-border-primary); }
.code-block pre { background: var(--c-background-primary); color: var(--c-text-primary); }
.endpoint-box { border-color: var(--c-border-primary); border-radius: 7px; background: var(--c-background-primary); box-shadow: none; }
.search input, .select, .input { border-color: var(--c-border-primary); border-radius: 7px; background: var(--c-background-primary); color: var(--c-text-primary); }
.search input::placeholder, .input::placeholder { color: var(--c-text-secondary); }
.search input:focus, .select:focus, .input:focus { border-color: var(--c-accent-primary); box-shadow: 0 0 0 3px rgba(94,143,232,.18); }
.footer { border-top: 1px solid var(--c-border-primary); background: transparent; }

/* Home: editorial hero and concise product blocks. */
.main:has(#apiEndpoint) .content-header { padding: 2.5rem 0 1rem; }
.main:has(#apiEndpoint) .content-header-intro h2 { font-size: clamp(1.55rem, 3vw, 2.15rem); }
.main:has(#apiEndpoint) .content-header-intro p { max-width: 650px; font-size: .95rem; }
.main:has(#apiEndpoint) .content { border-top: 0; }
.main:has(#apiEndpoint) .content-main { padding-top: .5rem; }
.main:has(#apiEndpoint) .content-main > .card:first-child { border-color: var(--c-border-primary); background: var(--c-background-primary); color: var(--c-text-primary); }
.main:has(#apiEndpoint) .content-main > .card:first-child h3,
.main:has(#apiEndpoint) .content-main > .card:first-child .page-sub { color: #fff; }
.main:has(#apiEndpoint) .content-main > .card:first-child .endpoint-box { border-color: rgba(255,255,255,.18); background: rgba(255,255,255,.08); }
.main:has(#apiEndpoint) .content-main > .card:first-child .endpoint-box code { color: #fff; }
.main:has(#apiEndpoint) .content-main > .card:nth-of-type(2) { background: transparent; border: 0; box-shadow: none; }

@media (max-width: 600px) {
  .header, .header-content { height: 60px; min-height: 60px; }
  .header-navigation.open { top: 60px; margin: 0; width: 100%; border: 0; border-bottom: 1px solid var(--c-border-primary); border-radius: 0; background: #121214; }
  .main { padding-top: 1.6rem; }
  .main:has(#apiEndpoint) .content-header { padding-top: 1.25rem; }
  .main:has(#apiEndpoint) .content-header-actions { width: 100%; }
  .main:has(#apiEndpoint) .content-header-actions .button { flex: 1; }
}

/* ---------- blog / announcements ---------- */
.blog-body h2 { font-size: 1.15rem; font-weight: 700; margin: 1.25rem 0 .5rem; }
.blog-body p { color: var(--c-text-secondary); font-size: .92rem; line-height: 1.65; margin-bottom: .8rem; }
.blog-body ul { margin: .5rem 0 1rem 1.25rem; color: var(--c-text-secondary); font-size: .92rem; line-height: 1.65; }
.blog-body li { margin-bottom: .4rem; }
.blog-body strong { color: var(--c-text-primary); }

/* ---------- announcement line (dashboard, kompakt) ---------- */
.announce-line { display: flex; align-items: baseline; justify-content: space-between; gap: .75rem; padding: .55rem .9rem; margin-bottom: 1.25rem; border: 1px solid var(--c-border-primary); border-radius: .5rem; background: var(--c-bg-secondary, transparent); font-size: .85rem; }
.announce-title { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-weight: 600; }
.announce-read { flex-shrink: 0; font-size: .78rem; font-weight: 600; padding: .2rem .7rem; border: 1px solid var(--c-border-primary); border-radius: 999px; text-decoration: none; white-space: nowrap; }
.announce-read:hover { border-color: var(--c-accent-primary, #4f7cff); }
@media (max-width: 640px) {
  .announce-line { font-size: .8rem; padding: .5rem .7rem; }
  .poll-line { flex-wrap: wrap; align-items: center; }
  .poll-line .announce-title { flex: 1 1 100%; white-space: normal; overflow: visible; margin-bottom: .45rem; }
}

/* ---------- auth (full-page, centered, cardless feel) ---------- */
.auth-wrap { max-width: 460px; margin: 0 auto; padding: 4rem 0 5rem; min-height: 62vh;
  display: flex; flex-direction: column; justify-content: center; }
.auth-wrap .card { padding: 2.25rem 2.25rem 2rem; border-top: 4px solid var(--c-accent-primary); }
.auth-logo { display: flex; justify-content: center; margin-bottom: 1.1rem; }
.auth-logo img { height: 38px; }
.auth-title { text-align: center; font-size: 1.4rem; font-weight: 700; letter-spacing: -.02em; }
.auth-sub { text-align: center; color: var(--c-text-secondary); font-size: .875rem; margin: .35rem 0 1.6rem; }
.auth-foot { text-align: center; margin-top: 1.25rem; font-size: .875rem; color: var(--c-text-secondary); }
.auth-foot a { color: var(--c-accent-primary); font-weight: 500; text-decoration: none; }
.auth-divider { display: flex; align-items: center; gap: .75rem; color: var(--c-text-secondary);
  font-size: .78rem; margin: 1.25rem 0; }
.auth-divider::before, .auth-divider::after { content: ""; flex: 1; height: 1px; background: var(--c-border-primary); }
.google-btn { display: flex; align-items: center; justify-content: center; gap: .6rem; width: 100%;
  box-sizing: border-box; height: 42px; border-radius: 8px; border: 2px solid var(--c-border-primary);
  background: var(--c-background-primary); color: var(--c-text-primary);
  font-size: .875rem; font-weight: 500; text-decoration: none; transition: .15s ease; }
.google-btn:hover { border-color: var(--c-accent-primary); }
.google-btn svg { width: 18px; height: 18px; }
@media (max-width: 560px) {
  .auth-wrap { padding: 2rem 0 3rem; min-height: 0; }
  .auth-wrap .card { padding: 1.6rem 1.25rem; }
}

/* ---------- endpoint box / misc ---------- */
.endpoint-box { display: flex; align-items: center; gap: .6rem; background: var(--c-background-secondary);
  border: 1px solid var(--c-border-primary); border-radius: 8px; padding: .6rem .9rem; margin-top: 1rem; }
.endpoint-box code { flex: 1; font-family: var(--nx-mono); font-size: .78rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.endpoint-box button { border: 0; background: none; color: var(--c-accent-primary); font-size: .78rem; cursor: pointer; font-weight: 600; padding: .45rem .6rem; min-height: 36px; border-radius: 6px; flex-shrink: 0; }
.endpoint-box button:hover { color: var(--c-accent-text); background: var(--c-background-tertiary); }
.dot { width: 8px; height: 8px; border-radius: 50%; background: var(--nx-green); flex-shrink: 0; }
.page-sub { color: var(--c-text-secondary); font-size: .875rem; margin-top: .25rem; }
.toolbar-row { display: flex; gap: .75rem; flex-wrap: wrap; margin-bottom: 1.5rem; align-items: center; }
.toolbar-row .input { max-width: 320px; }

/* ---------- language switcher ---------- */
.flag-icon { width: 20px; height: 14px; border-radius: 3px; object-fit: cover; }
.lang-menu .dropdown a { display: flex; align-items: center; gap: .6rem; }
.icon-button .flag-icon { width: 22px; height: 16px; }

/* ---------- docs anchor offset (sticky header) ---------- */
html { scroll-behavior: smooth; }
.doc-section { scroll-margin-top: 100px; }

html, body { overflow-x: clip; }
.content-main, .content-header-intro, .card-body, .table-card, .stat-card { min-width: 0; }
.model-id, .nx-table .mono, .endpoint-box code { overflow-wrap: anywhere; word-break: break-word; }
.horizontal-tabs:empty { display: none; }
.main-header h1 { overflow-wrap: anywhere; }
.stat-grid-3 { grid-template-columns: repeat(3, 1fr); }
@media (max-width: 1000px) { .stat-grid-3 { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 560px) { .stat-grid-3 { grid-template-columns: 1fr; } }
@media (max-width: 800px) {
  .main-header { gap: .75rem; }
  .main-header h1 { font-size: 1.35rem; line-height: 1.3; }
  .main-header .search { max-width: none; }
  .table-scroll .nx-table { min-width: 620px; }
  .stat-card .stat-value { font-size: 1.3rem; }
  .horizontal-tabs a { font-size: .85rem; }
  .code-block pre { font-size: .72rem; padding: .8rem; }
  .card-grid { row-gap: 1rem; }
}
@media (max-width: 640px) {
  .content-header { flex-direction: column; align-items: stretch; }
  .content-header-actions { display: flex; flex-wrap: wrap; gap: .5rem; }
  .content-header-actions .button { flex: 1; }
  .endpoint-box code { font-size: .7rem; }
  .user-menu .dropdown { position: fixed; left: 5%; right: 5%; top: 84px; min-width: 0; }
  .inline-form .button { width: 100%; }
  .inline-form .input, .inline-form .select { flex: 1 1 100%; width: 100% !important; max-width: none !important; }
  .nx-table th, .nx-table td { padding: .6rem .75rem; }
}

/* ---------- ticket / WHMCS-WISECP style ---------- */
.ticket-header-meta { display:flex; flex-wrap:wrap; gap:.5rem .75rem; align-items:center; margin-top:.45rem; color:var(--c-text-secondary); font-size:.82rem; line-height:1.4; }
.ticket-header-meta .dot-sep { width:4px; height:4px; border-radius:50%; background:var(--c-border-primary); display:inline-block; flex-shrink:0; }
.ticket-layout { display:grid; grid-template-columns: minmax(0,1fr) 320px; gap:1.5rem; align-items:start; }
.ticket-main { min-width:0; display:flex; flex-direction:column; gap:1rem; }
.ticket-sidebar { min-width:0; position:sticky; top:1rem; display:flex; flex-direction:column; gap:1rem; }
.ticket-timeline { display:flex; flex-direction:column; gap:1rem; }
.ticket-msg { background:var(--c-background-primary); border:1px solid var(--c-border-primary); border-radius:12px; overflow:hidden; }
.ticket-msg.is-staff { border-left:4px solid var(--c-accent-primary); }
.ticket-msg.is-user { border-left:4px solid var(--nx-green); }
.ticket-msg-head { display:flex; justify-content:space-between; align-items:center; gap:.75rem; padding:.9rem 1.1rem .75rem; background:var(--c-background-secondary); border-bottom:1px solid var(--c-border-primary); }
.ticket-msg-head .who { display:flex; align-items:center; gap:.6rem; font-weight:600; font-size:.875rem; min-width:0; }
.ticket-msg-head .who .avatar-mini { width:28px; height:28px; border-radius:50%; display:inline-flex; align-items:center; justify-content:center; font-size:.75rem; font-weight:700; color:#fff; flex-shrink:0; line-height:1; }
.ticket-msg.is-user .avatar-mini { background: var(--nx-green); }
.ticket-msg.is-staff .avatar-mini { background: var(--c-accent-primary); }
.ticket-msg-head .who .name { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; max-width:180px; }
.ticket-msg-meta { font-size:.75rem; color:var(--c-text-secondary); white-space:nowrap; font-family:var(--nx-mono); flex-shrink:0; }
.ticket-msg-body { padding:1rem 1.1rem; white-space:pre-wrap; font-size:.875rem; line-height:1.7; color:var(--c-text-primary); word-break:break-word; overflow-wrap:anywhere; }
.ticket-msg.is-staff .ticket-msg-body { background: var(--c-background-tertiary); }
.ticket-reply { background:var(--c-background-primary); border:1px solid var(--c-border-primary); border-radius:12px; padding:1.25rem; }
.ticket-reply h3 { font-size:1rem; font-weight:700; }
.ticket-reply textarea.input { min-height:130px; resize:vertical; line-height:1.6; border-radius:10px; }
.ticket-reply .reply-actions { display:flex; gap:.75rem; align-items:center; flex-wrap:wrap; margin-top:.25rem; }
.ticket-info-card .card-header { padding:1.1rem 1.1rem .7rem; }
.ticket-info-grid { display:grid; grid-template-columns:1fr 1fr; gap:.85rem 1.1rem; font-size:.875rem; }
.ticket-info-grid dt { color:var(--c-text-secondary); font-size:.72rem; font-weight:600; letter-spacing:.02em; text-transform:uppercase; margin-bottom:3px; }
.ticket-info-grid dd { font-weight:600; word-break:break-word; }
.badge-info { background: var(--c-accent-soft); color: var(--c-accent-text); }
.badge-warn { background:var(--nx-amber-bg); color:var(--nx-amber); }
@media (max-width: 960px){
  .ticket-layout{ grid-template-columns:1fr; }
  .ticket-sidebar{ position:static; order:-1; }
  .ticket-msg-head{ flex-direction:column; align-items:flex-start; gap:.35rem; }
  .ticket-msg-head .who .name{ max-width:none; }
  .ticket-msg-meta{ white-space:normal; }
}
@media (max-width: 640px){
  .ticket-info-grid{ grid-template-columns:1fr; gap:.75rem; }
  .ticket-reply{ padding:1rem; }
  .ticket-msg-body{ padding:.9rem 1rem; font-size:.84rem; }
  .ticket-header-meta{ font-size:.78rem; }
}
.ticket-empty { text-align:center; padding:2.5rem 1rem; color:var(--c-text-secondary); }
.ticket-empty i{ font-size:2rem; margin-bottom:.5rem; display:block; color:var(--c-border-primary); }

/* ---------- support workspace ---------- */
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.section-kicker { display:inline-flex; align-items:center; gap:.4rem; color:var(--c-accent-primary); font-size:.7rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.ticket-list-intro { padding-top:1.5rem; }
.ticket-list-shell { background:var(--c-background-primary); border:1px solid var(--c-border-primary); border-radius:10px; overflow:hidden; }
.ticket-list-heading { display:flex; justify-content:space-between; align-items:center; gap:1rem; padding:1.1rem 1.25rem; border-bottom:1px solid var(--c-border-primary); }
.ticket-list-heading h3 { margin-top:.18rem; font-size:1.05rem; font-weight:650; }
.ticket-list-heading .button { flex-shrink:0; }
.ticket-table { font-size:.86rem; }
.ticket-table th { padding:.7rem 1.1rem; background:var(--c-background-secondary); font-size:.7rem; letter-spacing:.05em; text-transform:uppercase; }
.ticket-table td { padding:.85rem 1.1rem; }
.ticket-table tbody tr { transition:background .15s ease; }
.ticket-table tbody tr:hover { background:var(--c-background-secondary); }
.ticket-number { color:var(--c-text-secondary); white-space:nowrap; }
.ticket-subject-cell { min-width:260px; max-width:520px; }
.ticket-subject-cell strong, .ticket-list-card-subject { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.ticket-requester, .ticket-preview { display:block; margin-top:.25rem; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:var(--c-text-secondary); font-size:.76rem; }
.ticket-requester { color:var(--c-accent-primary); font-weight:600; }
.ticket-date { color:var(--c-text-secondary); font-size:.76rem; white-space:nowrap; }
.ticket-view-cell { text-align:right; white-space:nowrap; }
.ticket-view-cell .button i { margin-right:0; margin-left:.4rem; font-size:1em; }
.ticket-list-mobile { display:none; }
.ticket-empty { display:flex; align-items:center; flex-direction:column; gap:.7rem; padding:3.5rem 1.25rem; text-align:center; }
.ticket-empty strong { max-width:440px; color:var(--c-text-action); font-size:.9rem; font-weight:500; line-height:1.6; }
.ticket-empty .button { margin-top:.35rem; }
.ticket-empty-icon { display:inline-flex; align-items:center; justify-content:center; width:52px; height:52px; border-radius:16px; background:var(--c-background-tertiary); color:var(--c-accent-primary); }
.ticket-empty-icon i { margin:0; font-size:1.55rem; color:inherit; }
.ticket-detail-intro { padding-top:1.5rem; }
.ticket-detail-status { display:flex; align-items:center; gap:.65rem; }
.ticket-detail-status > .mono { color:var(--c-text-secondary); font-size:.78rem; }
.ticket-detail-intro .content-header-intro p { margin:.6rem 0 .35rem; }
.ticket-header-meta span { display:inline-flex; align-items:center; gap:.3rem; }
.ticket-header-meta i { color:var(--c-accent-primary); }
.ticket-section-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:1rem; margin-bottom:.15rem; }
.ticket-section-heading h2 { margin-top:.18rem; font-size:1.05rem; font-weight:650; }
.ticket-thread-line { flex:1; height:1px; margin-bottom:.35rem; background:var(--c-border-primary); }
.ticket-msg-head .who-copy { display:flex; flex-direction:column; min-width:0; gap:.1rem; }
.ticket-msg-head .who .name { max-width:260px; }
.ticket-role { color:var(--c-text-secondary); font-size:.7rem; font-weight:500; }
.ticket-msg-meta { display:inline-flex; align-items:center; gap:.3rem; }
.ticket-msg-meta i { font-size:.9rem; }
.ticket-card-icon { background:var(--c-background-tertiary); color:var(--c-accent-primary); }
.ticket-status-actions { display:flex; gap:.55rem; margin-top:1.25rem; }
.ticket-status-actions form, .ticket-status-actions > a { flex:1; min-width:0; }
.ticket-status-actions .button { width:100%; }
.ticket-admin-card .card-body { padding:1rem; }

/* ---------- crypto checkout ---------- */
.checkout-shell { width:100%; max-width:860px; margin:0 auto; }
.checkout-panel { padding:1.5rem; }
.checkout-plan { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding-bottom:1.25rem; border-bottom:1px solid var(--c-border-primary); }
.checkout-plan h3 { margin:.25rem 0 0; }
.checkout-plan strong { font-size:1.35rem; white-space:nowrap; }
.checkout-plan strong small { color:var(--c-text-secondary); font-size:.75rem; font-weight:400; }
.checkout-selectors { max-width:540px; }
.checkout-footer { display:flex; align-items:center; justify-content:space-between; gap:1rem; margin-top:1.4rem; padding-top:1.2rem; border-top:1px solid var(--c-border-primary); }
.checkout-footer .button-primary { font-weight:600; letter-spacing:.01em; }
@media (max-width:640px) {
  .checkout-panel { padding:1rem; }
  .checkout-plan { align-items:flex-start; flex-direction:column; }
  .checkout-footer { align-items:stretch; flex-direction:column; }
  .checkout-footer .button { width:100%; }
}

/* Compact Heleket-style currency and network selectors. */
.checkout-selectors { display:flex; gap:.8rem; margin-top:1.35rem; }
.selector-field { display:block; min-width:0; flex:1; }
.selector-label { display:block; margin:0 0 .45rem; color:var(--c-text-secondary); font-size:.72rem; font-weight:650; }
.selector-button { display:flex; align-items:center; width:100%; min-height:64px; padding:.7rem .85rem; border:1px solid var(--c-border-primary); border-radius:10px; background:var(--c-background-primary); color:var(--c-text-primary); text-align:left; font:inherit; cursor:pointer; transition:border-color .15s,box-shadow .15s,background .15s; }
.selector-button:hover, .selector-button:focus-visible { border-color:var(--c-accent-primary); background:var(--c-background-secondary); box-shadow:0 0 0 3px rgba(82,102,232,.1); outline:0; }
.selector-leading, .modal-icon-wrap { display:inline-flex; align-items:center; justify-content:center; width:40px; height:40px; flex:0 0 40px; }
.selector-icon { display:block; width:38px; height:38px; object-fit:contain; }
.selector-fallback { display:inline-flex; align-items:center; justify-content:center; width:36px; height:36px; border-radius:50%; background:var(--c-background-tertiary); color:var(--c-accent-primary); font-size:.72rem; font-weight:750; }
.selector-copy { display:grid; min-width:0; flex:1; gap:.2rem; margin-left:.7rem; }
.selector-copy strong { overflow:hidden; font-size:.86rem; line-height:1.2; text-overflow:ellipsis; white-space:nowrap; }
.selector-copy small { overflow:hidden; color:var(--c-text-secondary); font-family:var(--nx-mono); font-size:.68rem; line-height:1.2; text-overflow:ellipsis; white-space:nowrap; }
.selector-chevron { margin-left:.65rem; color:var(--c-text-secondary); font-size:1.2rem; font-style:normal; line-height:1; }
.selector-modal { position:fixed; inset:0; z-index:100; display:grid; place-items:center; padding:1rem; }
.selector-modal[hidden] { display:none; }
.selector-backdrop { position:absolute; inset:0; background:rgba(15,23,42,.42); backdrop-filter:blur(3px); }
.selector-dialog { position:relative; display:flex; width:min(100%,480px); max-height:min(700px,calc(100vh - 2rem)); flex-direction:column; padding:1rem; border:1px solid var(--c-border-primary); border-radius:14px; background:var(--c-background-primary); box-shadow:0 22px 70px rgba(15,23,42,.22); }
.selector-dialog-header { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:.15rem .15rem .9rem; }
.selector-dialog-kicker { color:var(--c-text-secondary); font-size:.66rem; font-weight:700; letter-spacing:.09em; text-transform:uppercase; }
.selector-dialog-header h3 { margin:.22rem 0 0; font-size:1.05rem; }
.selector-close { display:inline-flex; align-items:center; justify-content:center; width:32px; height:32px; border:0; border-radius:8px; background:var(--c-background-tertiary); color:var(--c-text-secondary); font-size:1.3rem; line-height:1; cursor:pointer; }
.selector-close:hover, .selector-close:focus-visible { color:var(--c-text-primary); outline:2px solid var(--c-accent-primary); outline-offset:1px; }
.modal-search { display:flex; align-items:center; gap:.55rem; min-height:42px; margin-bottom:.75rem; padding:0 .75rem; border:1px solid var(--c-border-primary); border-radius:8px; color:var(--c-text-secondary); }
.modal-search:focus-within { border-color:var(--c-accent-primary); box-shadow:0 0 0 3px rgba(82,102,232,.1); }
.modal-search input { width:100%; border:0; outline:0; background:transparent; color:var(--c-text-primary); font:inherit; font-size:.82rem; }
.selector-options { display:flex; flex-direction:column; gap:.35rem; overflow:auto; padding:.1rem .1rem .2rem; }
.selector-option { display:flex; align-items:center; width:100%; min-height:58px; padding:.55rem .65rem; border:1px solid transparent; border-radius:9px; background:transparent; color:var(--c-text-primary); text-align:left; font:inherit; cursor:pointer; }
.selector-option:hover, .selector-option:focus-visible, .selector-option.is-selected { border-color:var(--c-accent-primary); background:var(--c-background-secondary); outline:0; }
.selector-option-copy { display:grid; min-width:0; flex:1; gap:.2rem; margin-left:.7rem; }
.selector-option-copy strong { overflow:hidden; font-size:.82rem; text-overflow:ellipsis; white-space:nowrap; }
.selector-option-copy small { color:var(--c-text-secondary); font-family:var(--nx-mono); font-size:.67rem; }
.selector-check { width:1.1rem; color: var(--nx-green); opacity:0; text-align:center; }
.selector-option.is-selected .selector-check { opacity:1; }
.selector-empty { margin:0; padding:1rem .3rem; color:var(--c-text-secondary); font-size:.82rem; }
body.selector-open { overflow:hidden; }
@media (max-width:640px) {
  .checkout-selectors { flex-direction:column; gap:.75rem; }
  .selector-button { min-height:60px; }
  .selector-dialog { padding:.85rem; border-radius:12px; }
}
.ticket-admin-card .button { width:100%; }
.ticket-reply-heading { display:flex; align-items:center; gap:.75rem; margin-bottom:1rem; }
.ticket-reply-heading h2 { margin-top:.12rem; font-size:1.05rem; font-weight:650; }
.reply-icon { display:inline-flex; align-items:center; justify-content:center; width:38px; height:38px; flex-shrink:0; border-radius:11px; background:var(--c-background-tertiary); color:var(--c-accent-primary); }
.ticket-reply .field { margin-bottom:.75rem; }
.ticket-reply .reply-actions .button { flex-shrink:0; }
.ticket-form-wrap { max-width:780px; }
.ticket-form-card { border-top:3px solid var(--c-accent-primary); }
.ticket-form-header { padding-bottom:1rem; }
.ticket-form-header > div { gap:.75rem; }
.ticket-form-header .section-kicker { width:auto; height:auto; border-radius:0; }
.ticket-form-header h2 { margin:.15rem 0 0; font-size:1.05rem; font-weight:650; }
.ticket-form-header .ticket-card-icon { flex-shrink:0; }
.field-hint { margin-left:.35rem; color:var(--c-text-secondary); font-weight:400; }
.form-note { display:flex; align-items:flex-start; gap:.4rem; margin-top:.45rem; color:var(--c-text-secondary); font-size:.78rem; line-height:1.55; }
.form-note i { color:var(--c-accent-primary); margin-top:.15rem; }
.ticket-form-actions { display:flex; align-items:center; gap:.65rem; flex-wrap:wrap; margin-top:.25rem; }

/* ---------- donate page ---------- */
.donate-intro { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:2rem; padding:2rem; border:1px solid var(--c-border-primary); border-radius:14px; background: var(--c-background-primary); }
.donate-intro-copy { min-width:0; }
.donate-intro h2 { max-width:720px; margin-top:.45rem; font-size:clamp(1.45rem,3vw,2.15rem); font-weight:700; letter-spacing:-.035em; line-height:1.2; }
.donate-intro p { max-width:680px; margin-top:.65rem; color:var(--c-text-secondary); font-size:.94rem; line-height:1.75; }
.donate-intro-note { display:flex; align-items:center; gap:.7rem; max-width:220px; padding:.8rem 1rem; border:1px solid var(--c-border-primary); border-radius:12px; background: var(--c-background-tertiary); color:var(--c-text-action); font-size:.78rem; font-weight:600; line-height:1.45; }
.donate-intro-note i { color: var(--nx-amber); font-size:1.35rem; flex-shrink:0; }
.donate-section-heading { display:flex; justify-content:space-between; align-items:flex-end; gap:1rem; margin:2rem 0 1rem; }
.donate-section-heading p { margin-top:.25rem; color:var(--c-text-secondary); font-size:.85rem; }
.donate-live-mark { display:inline-flex; align-items:center; gap:.4rem; padding:.45rem .7rem; border-radius:99em; background:var(--c-background-tertiary); color:var(--c-accent-primary); font-size:.72rem; font-weight:600; white-space:nowrap; }
.donate-live-mark i { font-size:.55rem; }
.donate-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; align-items:stretch; }
.donate-card { display:flex; flex-direction:column; min-width:0; padding:1.25rem; border:1px solid var(--c-border-primary); border-top:3px solid var(--coin-color,var(--c-accent-primary)); border-radius:14px; overflow:hidden; }
.donate-card-trx { --coin-color:#e83e5b; }
.donate-card-btc { --coin-color:#f7931a; }
.donate-card-eth { --coin-color:#627eea; }
.donate-card > * { min-width:0; }
.donate-card-header { display:flex; align-items:center; min-width:0; }
.coin-identity { display:flex; align-items:center; gap:.75rem; min-width:0; }
.donate-card .coin-icon { display:inline-flex; align-items:center; justify-content:center; width:40px; min-width:40px; max-width:40px; height:40px; min-height:40px; max-height:40px; flex:0 0 40px; border-radius:11px; background:var(--c-background-secondary); overflow:hidden; }
.donate-card .coin-icon > img { display:block; width:40px !important; height:40px !important; max-width:40px !important; max-height:40px !important; flex:0 0 40px; object-fit:contain; }
.coin-copy { min-width:0; }
.coin-identity h2 { font-size:1.15rem; font-weight:700; letter-spacing:.02em; line-height:1.2; }
.coin-identity p { margin-top:.2rem; color:var(--c-text-secondary); font-family:var(--nx-mono); font-size:.72rem; line-height:1.2; }
.donate-address-block { margin-top:1.25rem; }
.donate-label-row { display:flex; align-items:center; gap:.5rem; margin-bottom:.45rem; color:var(--c-text-secondary); font-size:.72rem; font-weight:600; }
.donate-address-row { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:stretch; gap:.6rem; min-width:0; }
.donate-address { display:flex; align-items:center; min-width:0; min-height:54px; padding:.7rem .75rem; border:1px solid var(--c-border-primary); border-radius:9px; background:var(--c-background-secondary); color:var(--c-text-action); font-family:var(--nx-mono); font-size:.69rem; line-height:1.55; overflow-wrap:anywhere; word-break:break-word; }
.donate-copy-button { display:inline-flex; align-items:center; justify-content:center; align-self:stretch; gap:.35rem; min-width:76px; max-width:132px; padding:.45rem .65rem; border:1px solid var(--c-border-primary); border-radius:8px; background:var(--c-background-primary); color:var(--c-accent-primary); cursor:pointer; font:inherit; font-size:.72rem; font-weight:700; transition:border-color .15s ease,background .15s ease,color .15s ease; }
.donate-copy-button:hover, .donate-copy-button:focus { border-color:var(--c-accent-primary); background:var(--c-background-tertiary); color:var(--c-text-action); }
.donate-copy-button.is-copied { border-color: var(--nx-green); background:var(--nx-green-bg); color:var(--nx-green); }
.donate-copy-button i { flex-shrink:0; font-size:1rem; }
.donate-copy-button .copy-label { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.donate-qr-block { display:flex; flex-direction:column; align-items:center; gap:.7rem; margin-top:1rem; padding:1rem 0 .1rem; border-top:1px solid var(--c-border-primary); text-align:center; }
.donate-qr-block > img { display:block; width:160px !important; height:160px !important; max-width:160px !important; max-height:160px !important; flex:0 0 160px; padding:.25rem; border:1px solid var(--c-border-primary); border-radius:9px; background:#fff; object-fit:contain; }
.donate-qr-copy { min-width:0; max-width:100%; color:var(--c-text-secondary); font-size:.75rem; line-height:1.45; }
.donate-qr-label { color:var(--c-text-action); font-weight:700; }
.donate-qr-meta { margin-left:.25rem; color:var(--c-text-secondary); font-family:var(--nx-mono); font-size:.7rem; }
.donate-warning { display:flex; align-items:flex-start; gap:.45rem; margin-top:1rem; padding:.7rem .75rem; border:1px solid var(--c-border-primary); border-radius:9px; background: var(--nx-amber-bg); color: var(--c-text-primary); font-size:.7rem; line-height:1.55; }
.donate-warning i { margin-top:.1rem; flex-shrink:0; color: var(--nx-amber); }
.donate-warning strong { font-weight:700; }
.donate-thanks { display:grid; grid-template-columns:minmax(0,220px) minmax(0,1fr); align-items:center; gap:1.5rem; margin-top:1.5rem; padding:1.25rem; border:1px solid var(--c-border-primary); border-radius:14px; background:var(--c-background-primary); box-shadow:0 4px 18px rgba(39,42,67,.04); }
.donate-media { width:100%; max-width:220px; min-width:0; overflow:hidden; border-radius:10px; background:var(--c-background-secondary); }
.donate-media img { display:block; width:100%; max-width:100%; height:auto; aspect-ratio:384 / 270; object-fit:cover; }
.donate-thanks-copy { min-width:0; }
.donate-thanks-copy h2 { margin-top:.35rem; font-size:1.2rem; font-weight:700; letter-spacing:-.02em; }
.donate-thanks-copy p { max-width:600px; margin-top:.45rem; color:var(--c-text-secondary); font-size:.86rem; line-height:1.7; }

@media (max-width: 1100px) {
  .donate-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 960px) {
  .ticket-sidebar { order:2; }
  .ticket-main { order:1; }
}
@media (max-width: 700px) {
  .ticket-list-heading { padding:1.1rem; }
  .ticket-list-desktop { display:none; }
  .ticket-list-mobile { display:grid; gap:.6rem; padding:.75rem; }
  .ticket-list-card { display:block; padding:.9rem; border:1px solid var(--c-border-primary); border-radius:10px; color:inherit; text-decoration:none; transition:border-color .15s ease,background .15s ease; }
  .ticket-list-card:hover, .ticket-list-card:focus { border-color:var(--c-accent-primary); background:var(--c-background-secondary); }
  .ticket-list-card-top, .ticket-list-card-footer { display:flex; align-items:center; justify-content:space-between; gap:.75rem; }
  .ticket-list-card-subject { margin-top:.5rem; font-size:.9rem; }
  .ticket-list-card .ticket-preview { white-space:normal; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; }
  .ticket-list-card-footer { margin-top:.75rem; color:var(--c-text-secondary); font-size:.72rem; }
  .ticket-list-card-footer i { color:var(--c-accent-primary); font-size:1rem; }
  .ticket-detail-intro .content-header-actions .button { flex:initial; }
  .donate-intro { grid-template-columns:1fr; gap:1.25rem; padding:1.35rem; }
  .donate-intro-note { max-width:none; }
  .donate-section-heading { align-items:flex-start; flex-direction:column; }
  .donate-thanks { grid-template-columns:1fr; }
  .donate-media { max-width:260px; }
}
@media (max-width: 640px) {
  .ticket-list-intro, .ticket-detail-intro { padding-top:1rem; }
  .ticket-list-heading { align-items:flex-start; flex-direction:column; }
  .ticket-list-heading .button { width:100%; }
  .ticket-header-meta { align-items:flex-start; flex-direction:column; gap:.35rem; }
  .ticket-header-meta .dot-sep { display:none; }
  .ticket-section-heading { align-items:flex-start; }
  .ticket-thread-line { display:none; }
  .ticket-msg-head { padding:.8rem .9rem .7rem; }
  .ticket-msg-head .who .name { max-width:180px; }
  .ticket-status-actions, .ticket-form-actions { flex-direction:column; align-items:stretch; }
  .ticket-status-actions form, .ticket-status-actions > a, .ticket-form-actions .button { width:100%; }
  .ticket-form-header { padding:1.1rem 1rem .8rem; }
  .ticket-form-header h2 { font-size:.95rem; }
  .ticket-form-card .card-body { padding:1rem; }
  .donate-grid { grid-template-columns:1fr; }
  .donate-card { padding:1rem; }
  .donate-address { font-size:.67rem; }
  .donate-copy-button { min-width:72px; padding-inline:.5rem; }
  .donate-qr-block > img { width:160px !important; height:160px !important; max-width:160px !important; max-height:160px !important; }
  .donate-thanks { padding:1rem; }
  .donate-media { max-width:100%; }
}

/* ---------- billing: odeme yontemi + coin secimi (sade, temayla uyumlu) ---------- */
.pay-methods { display:flex; flex-direction:column; gap:.6rem; }
.pay-method { display:flex; align-items:center; gap:.7rem; padding:.8rem .9rem; border:1px solid var(--c-border-primary); border-radius:10px; background:var(--c-background-primary); cursor:pointer; }
.pay-method:hover { border-color:var(--c-accent-primary); }
.pay-method input { width:18px; height:18px; accent-color:var(--c-accent-primary); }
.pay-method span { font-size:.9rem; font-weight:600; }
.coin-row { display:flex; flex-wrap:wrap; gap:.6rem; }
.coin { display:inline-flex; align-items:center; gap:.5rem; padding:.6rem .9rem; border:1px solid var(--c-border-primary); border-radius:10px; background:var(--c-background-primary); cursor:pointer; font-size:.85rem; font-weight:650; }
.coin:hover { border-color:var(--c-accent-primary); }
.coin input { width:16px; height:16px; accent-color:var(--c-accent-primary); }
.coin img { width:22px; height:22px; object-fit:contain; }
.pay-card { max-width:640px; margin:0 auto; }
.pay-wide { display:flex; align-items:center; justify-content:center; width:100%; text-align:center; }
.pay-addr { display:flex; gap:.6rem; align-items:stretch; }
.pay-addr code { flex:1; min-width:0; overflow-wrap:anywhere; word-break:break-all; padding:.7rem .8rem; border:1px solid var(--c-border-primary); border-radius:8px; background:var(--c-background-secondary); font-size:.78rem; }
.pay-addr .button { flex-shrink:0; }
.pay-qr { display:flex; justify-content:center; margin:1.1rem 0; }
.pay-qr img { width:200px; height:200px; border:1px solid var(--c-border-primary); border-radius:12px; background:#fff; padding:8px; }
@media (max-width:640px) {
  .pay-addr { flex-direction:column; }
  .pay-addr .button { width:100%; }
  .pay-qr img { width:180px; height:180px; }
  .pay-card, .checkout-shell { overflow-x:hidden; }
}

/* ---------- shopier checkout (chrome yok, tam ekran) ---------- */
.main-bare { padding-top:0; overflow-x:clip; }
.main-bare .content { border-top:0; margin-top:0; display:block; }
.main-bare .content-main { padding-top:0; padding-bottom:0; display:flex; flex-direction:column; }
.shopier-full { display:flex; flex-direction:column; width:100vw; max-width:100vw; min-height:100vh; min-height:100dvh; margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw); }
.shopier-bar { display:flex; align-items:center; justify-content:space-between; gap:.8rem; padding:.55rem .2rem; min-height:48px; flex-shrink:0; }
.pay-frame-flex { flex:1 1 auto; display:flex; min-height:0; }
.pay-frame-flex iframe { flex:1 1 auto; width:100%; max-width:100%; height:calc(100vh - 48px); height:calc(100dvh - 48px); border:0; background:#fff; display:block; }
.pay-live { display:inline-flex; align-items:center; gap:.45rem; color:var(--c-text-secondary); font-size:.82rem; }
.pay-dot { width:8px; height:8px; border-radius:50%; background: var(--nx-green); animation:pay-pulse 1.6s ease-in-out infinite; }
@keyframes pay-pulse { 0%,100% { opacity:1; } 50% { opacity:.35; } }
.pay-end { padding:1rem 0; text-align:center; }
.pay-success { text-align:center; padding:2.2rem 1.5rem; }
.pay-success h2 { margin:1rem 0 .4rem; }
.pay-check { stroke: var(--nx-green); margin:0 auto; }
@media (max-width:640px) {
  .shopier-bar { padding:.5rem .6rem; }
}

/* ---------- banka havalesi ---------- */
.bank-box { display:flex; flex-direction:column; gap:.55rem; }
.bank-logo { height:28px; width:auto; max-width:170px; align-self:flex-start; }
.bank-row { display:flex; align-items:center; justify-content:space-between; gap:.8rem; }
@media (max-width:640px) {
  .bank-row { align-items:flex-start; flex-direction:column; gap:.15rem; }
}

/* ---------- paket ozellikleri ---------- */
.plan-features { list-style:none; margin:1rem 0 0; padding:0; display:flex; flex-direction:column; gap:.45rem; }
.plan-features li { position:relative; padding-left:1.4rem; font-size:.85rem; color:var(--c-text-primary); }
.plan-features li::before { content:"✓"; position:absolute; left:0; color: var(--nx-green); font-weight:700; }

/* ---------- fiyatlandirma ---------- */
.pricing-toolbar { display:flex; align-items:center; justify-content:space-between; gap:1rem; margin-bottom:1.5rem; padding:1rem 1.1rem; border:1px solid var(--c-border-primary); border-radius:14px; background:var(--c-background-secondary); }
.pricing-switch { display:inline-flex; align-items:center; gap:.2rem; padding:.22rem; border:1px solid var(--c-border-primary); border-radius:999px; background:var(--c-background-primary); }
.pricing-switch a { display:inline-flex; align-items:center; gap:.4rem; padding:.55rem .85rem; border-radius:999px; color:var(--c-text-secondary); text-decoration:none; font-size:.82rem; font-weight:600; white-space:nowrap; }
.pricing-switch a:hover { color:var(--c-text-primary); }
.pricing-switch a.is-active { color:var(--c-text-primary); background:var(--c-background-secondary); box-shadow:0 1px 5px rgba(15,23,42,.08); }
.pricing-switch a span { color: var(--nx-green); font-size:.68rem; font-weight:700; }
.pricing-billing-note { display:flex; align-items:center; gap:.4rem; max-width:560px; margin:0; color:var(--c-text-secondary); font-size:.8rem; line-height:1.35; }
.pricing-billing-note i { flex:none; color: var(--nx-green); font-size:1rem; }
.pricing-grid-clean { align-items:stretch; gap:1rem; }
.pricing-card { min-width:0; border:1px solid var(--c-border-primary); transition:border-color .15s ease, box-shadow .15s ease, transform .15s ease; }
.pricing-card:hover { border-color:var(--c-border-primary); box-shadow:none; transform:none; }
.pricing-card.is-featured { border-color: var(--c-accent-primary); }
.pricing-card.is-current { border-color: var(--nx-green); }
.pricing-card.is-disabled { opacity:.62; }
.pricing-card-top { display:flex; align-items:flex-start; justify-content:space-between; gap:.6rem; padding:1.4rem 1.25rem 0; }
.pricing-kicker { display:block; color:var(--c-text-secondary); font-size:.68rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.pricing-card-top h3 { margin:.3rem 0 0; font-size:1.2rem; }
.pricing-popular { flex:none; border-radius:999px; padding:.3rem .55rem; background: var(--c-accent-soft); color: var(--c-accent-text); font-size:.66rem; font-weight:700; }
.pricing-price { display:flex; align-items:baseline; gap:.4rem; min-height:2.4rem; margin:0 0 .55rem; }
.pricing-price strong { color:var(--c-text-primary); font-size:clamp(1.8rem,3vw,2.35rem); letter-spacing:-.055em; line-height:1; }
.pricing-price span { color:var(--c-text-secondary); font-size:.78rem; }
.pricing-compare { display:flex; align-items:center; gap:.45rem; min-height:1.2rem; color:var(--c-text-secondary); font-size:.76rem; }
.pricing-compare span { color: var(--nx-green); font-size:.68rem; font-weight:700; }
.pricing-rule { height:1px; margin:1rem 0 0; background:var(--c-border-primary); }
.pricing-card .card-body { padding-top:1rem; }
.pricing-card .plan-features { min-height:174px; margin-top:0; padding-top:1.1rem; }
.pricing-card .card-footer { gap:.55rem; padding:1rem 1.25rem 1.25rem; }
.pricing-current { display:flex; align-items:center; justify-content:center; width:100%; min-height:40px; border:1px solid var(--c-border-primary); border-radius:8px; color:var(--c-text-action); font-size:.8rem; font-weight:600; }
.card-footer .pricing-cta { display:inline-flex; align-items:center; justify-content:center; gap:.45rem; width:100%; min-height:44px; font-size:.95rem; font-weight:700; letter-spacing:.015em; background: var(--c-accent-primary); border-color: var(--c-accent-primary); color:#fff; }
.card-footer .pricing-cta:hover, .card-footer .pricing-cta:focus { background: var(--c-accent-hover, #4c7cd3); border-color: var(--c-accent-hover, #4c7cd3); color:#fff; opacity:1; }
.card-footer .pricing-cta i { font-size:1.1em; }
.card-footer .button-primary, .card-footer .button-primary:hover, .card-footer .button-primary:focus { color:#fff; }
@media (max-width:760px) { .pricing-toolbar { align-items:stretch; flex-direction:column; } .pricing-switch { justify-content:center; } .pricing-switch a { flex:1; justify-content:center; } .pricing-billing-note { max-width:none; } }

/* ---------- paket upsell bandi ---------- */
.upsell-bar { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:.85rem 1.1rem; margin-bottom:1.1rem; border:1px solid var(--c-border-primary); border-radius:12px; background:var(--c-background-secondary); }
.upsell-copy { display:flex; align-items:center; gap:.7rem; min-width:0; flex:1; font-size:.85rem; }
.upsell-copy .progress { min-width:120px; max-width:220px; flex:1; }
.free-closed-notice { border-color: var(--nx-amber); background: var(--nx-amber-bg); }
.upsell-bar .button { flex-shrink:0; }
@media (max-width:640px) {
  .upsell-bar { flex-direction:column; align-items:stretch; }
  .upsell-bar .button { width:100%; text-align:center; }
}

/* ---------- ticket lightbox ---------- */
#ticket-lightbox { position:fixed; inset:0; z-index:1200; display:none; align-items:center; justify-content:center;
  background:rgba(10,12,20,.82); padding:1.5rem; cursor:zoom-out; }
#ticket-lightbox.open { display:flex; }
#ticket-lightbox img { max-width:min(1100px,94vw); max-height:90vh; border-radius:10px;
  box-shadow:0 18px 60px rgba(0,0,0,.5); background: var(--c-background-primary); }

/* ---------- public header: flat dark bar (tasarim sistemiyle ayni) ---------- */
.header {
  position: sticky;
  top: 0;
  z-index: 50;
  height: 64px;
  padding: 0;
  border-bottom: 1px solid var(--c-border-primary);
  background: #121214;
}
.header-content {
  min-height: 64px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
.header-logo { margin-right: 1.1rem; }
.header-logo img.brand-img { height: 28px; }
.header-navigation-links { gap: .15rem; padding: 0; border-radius: 0; background: transparent; }
.header-navigation-links a,
.header-navigation-links a + * { margin-left: 0; }
.header-navigation-links a {
  padding: .55rem .7rem;
  border-radius: 9px;
  color: var(--c-text-secondary);
  font-size: .78rem;
  font-weight: 600;
  white-space: nowrap;
}
.header-navigation-links a:hover,
.header-navigation-links a:focus,
.header-navigation-links a.active {
  background: var(--c-background-tertiary);
  color: var(--c-text-primary);
  box-shadow: none;
}
.header-navigation-actions { gap: .35rem; }
.header-navigation-actions > .button + .icon-button,
.header-navigation-actions > .icon-button + .icon-button { margin-left: 0; }
.header-navigation-actions .button { height: 38px; border-radius: 10px; }
.header-navigation-actions .icon-button { width: 36px; height: 36px; }
.header-navigation-actions .avatar { width: 36px; height: 36px; }
.avatar-initial { width: 36px; height: 36px; font-size: .85rem; }
.main { padding-top: 2.4rem; }
.content-header { border-top: 0; padding-top: 1rem; }
.content { border-top: 0; margin-top: 1.5rem; }
.card, .stat-card, .table-card { border: 1px solid var(--c-border-primary); border-radius: 10px; }
.card-header { padding: 1.35rem 1.35rem .9rem; }
.card-body { padding: 1rem 1.35rem; }
.card-footer { padding: 1rem 1.35rem; }

@media (max-width: 1200px) {
  .header { height: 64px; padding: 0; }
  .header-content { min-height: 64px; }
  .header-navigation.open { top: 64px; margin: 0 5%; width: 90%; border: 1px solid var(--c-border-primary); border-radius: 14px; background: #121214; }
  .header-navigation.open .header-navigation-links { background: transparent; padding: 0; }
  .header-navigation.open .header-navigation-links a { padding: .7rem .4rem; }
}
@media (max-width: 600px) {
  .header { height: 60px; padding: 0; }
  .header-content { min-height: 60px; padding: 0; border-radius: 0; }
  .header-logo img.brand-img { height: 24px; }
  .header-navigation.open { top: 60px; margin: 0 1rem; width: calc(100% - 2rem); }
  .main { padding-top: 1.5rem; }
  .card-header { padding: 1.1rem 1rem .7rem; }
  .card-body { padding: .85rem 1rem; }
  .card-footer { padding: .85rem 1rem; }
}

/* ---------- quiet, minimal product shell ---------- */
:root {
  --c-text-primary: #f0efe9;
  --c-text-secondary: #a6a6b0;
  --c-text-action: #cfcfda;
  --c-accent-primary: #5e8fe8;
  --c-border-primary: #3a3a40;
  --c-background-primary: #26262b;
  --c-background-secondary: #1c1c1f;
  --c-background-tertiary: #2e2e34;
  --c-background-quaternary: #35353d;
  --nx-green: #3fb97f;
  --nx-green-bg: rgba(63,185,127,.12);
  --nx-red: #e05f4e;
  --nx-red-bg: rgba(224,95,78,.12);
  --nx-amber: #d9a13b;
  --nx-amber-bg: rgba(217,161,59,.13);
}
body { background: var(--c-background-secondary); }
.header {
  position: sticky;
  top: 0;
  height: 64px;
  padding: 0;
  background: #121214;
  border-bottom: 1px solid var(--c-border-primary);
}
.header-content {
  min-height: 68px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
.header-logo { margin-right: 2.1rem; }
.header-logo img.brand-img { height: 27px; }
.header-navigation-links { gap: 0; padding: 0; border-radius: 0; background: transparent; }
.header-navigation-links a,
.header-navigation-links a + * { margin-left: 0; }
.header-navigation-links a {
  position: relative;
  padding: 1.42rem .72rem 1.2rem;
  border-radius: 0;
  color: var(--c-text-secondary);
  font-size: .79rem;
  font-weight: 500;
}
.header-navigation-links a + a { margin-left: .25rem; }
.header-navigation-links a:hover,
.header-navigation-links a:focus,
.header-navigation-links a.active {
  background: transparent;
  color: var(--c-text-primary);
  box-shadow: none;
}
.header-navigation-links a.active::after {
  content: "";
  position: absolute;
  right: .72rem;
  bottom: -.5px;
  left: .72rem;
  height: 2px;
  border-radius: 2px 2px 0 0;
  background: var(--c-accent-primary);
}
.header-navigation-actions { gap: .25rem; }
.header-navigation-actions .button { height: 36px; border-radius: 7px; }
.header-navigation-actions .button-primary { box-shadow: none; }
.header-navigation-actions .icon-button { width: 34px; height: 34px; }
.header-navigation-actions .avatar { width: 34px; height: 34px; }
.avatar-initial { width: 34px; height: 34px; font-size: .82rem; }
.main { padding-top: 2.8rem; }
.content-header { padding-top: .5rem; }
.content { margin-top: 1.25rem; }
.card, .stat-card, .table-card {
  border: 1px solid var(--c-border-primary);
  border-radius: 10px;
  box-shadow: 0 2px 8px rgba(31,42,68,.035);
}
.card-header { padding: 1.15rem 1.25rem .8rem; }
.card-body { padding: .9rem 1.25rem; }
.card-footer { padding: .85rem 1.25rem; }
.button { border-radius: 7px; }
.button-primary { background: var(--c-accent-primary); border-color: var(--c-accent-primary); color: #fff; }
.button-primary:hover, .button-primary:focus { background: var(--c-accent-hover, #4c7cd3); border-color: var(--c-accent-primary); color: #fff; }
.pricing-popular { background: var(--c-accent-soft); color: var(--c-accent-text); }
.pricing-card.is-featured { border-color: var(--c-accent-primary); }
.code-block { border: 1px solid var(--c-border-primary); box-shadow: none; }

@media (max-width: 1200px) {
  .header { height: 64px; }
  .header-content { min-height: 64px; }
  .header-navigation.open {
    top: 64px;
    margin: 0;
    width: 100%;
    border: 0;
    border-bottom: 1px solid var(--c-border-primary);
    border-radius: 0;
    box-shadow: 0 8px 18px rgba(31,42,68,.08);
  }
  .header-navigation.open .header-navigation-links a { padding: .7rem .4rem; }
}
@media (max-width: 600px) {
  .header { height: 60px; }
  .header-content { min-height: 60px; }
  .header-navigation.open { top: 60px; }
  .main { padding-top: 1.8rem; }
}

/* ---------- documentation layout: quiet, readable sidebar ---------- */
@media (min-width: 800px) {
  .main:has(.docs-sidebar) { padding-top: 1.4rem; }
  .main:has(.docs-sidebar) .content-header { padding-top: 1.2rem; }
  .main:has(.docs-sidebar) .content { align-items: stretch; }
  .main:has(.docs-sidebar) .content-panel { align-self: flex-start; }
  .main:has(.docs-sidebar) .docs-sidebar { max-height: calc(100vh - 7rem); overflow-y: auto; scrollbar-width: thin; }
}
/* ---------- docs: reference layout ---------- */
.main:has(.docs-sidebar) { background: var(--c-background-primary); color: var(--c-text-primary); }
.main:has(.docs-sidebar) .main-header { display: none; }
.main:has(.docs-sidebar) .content-header {
  box-sizing: border-box;
  max-width: 1120px;
  margin: 0 auto;
  padding: 2.35rem 2rem 1.7rem;
}
.main:has(.docs-sidebar) .docs-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 2.25rem;
}
.docs-header-copy { min-width: 0; flex: 1 1 auto; }
.main:has(.docs-sidebar) .docs-header-copy h2 {
  margin: .5rem 0 0;
  color: var(--c-text-primary);
  font-size: clamp(1.7rem, 3vw, 2.25rem);
  font-weight: 650;
  letter-spacing: -.045em;
  line-height: 1.2;
}
.main:has(.docs-sidebar) .docs-header-copy p {
  max-width: 690px;
  margin: .65rem 0 0;
  color: var(--c-text-secondary);
  font-size: .93rem;
  line-height: 1.7;
}
.main:has(.docs-sidebar) .section-kicker { color: var(--c-text-secondary); font-size: .68rem; letter-spacing: .1em; }
.docs-header-tools {
  display: flex;
  flex: 0 1 420px;
  min-width: 0;
  align-items: flex-start;
  justify-content: flex-end;
  gap: .7rem;
}
.docs-topic-header .docs-header-tools,
.docs-agent-header .docs-header-tools { flex: 0 0 auto; }
.docs-endpoint {
  display: grid;
  box-sizing: border-box;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  width: min(100%, 420px);
  min-width: 0;
  gap: .55rem .7rem;
  padding: .65rem .75rem;
  border: 1px solid var(--c-border-primary);
  border-radius: 7px;
  background: var(--c-background-tertiary);
}
.docs-endpoint-label {
  color: var(--c-text-secondary);
  font-size: .65rem;
  font-weight: 700;
  letter-spacing: .07em;
  text-transform: uppercase;
  white-space: nowrap;
}
.docs-endpoint code {
  min-width: 0;
  overflow: hidden;
  color: var(--c-text-primary);
  font-family: var(--nx-mono);
  font-size: .72rem;
  overflow-wrap: anywhere;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.docs-endpoint button {
  border: 0;
  background: transparent;
  color: var(--c-accent-primary);
  cursor: pointer;
  font: inherit;
  font-size: .72rem;
  font-weight: 650;
  white-space: nowrap;
}
.docs-menu-button {
  display: none;
  box-sizing: border-box;
  align-items: center;
  justify-content: center;
  gap: .5rem;
  min-height: 42px;
  padding: .65rem .8rem;
  border: 1px solid var(--c-border-primary);
  border-radius: 7px;
  background: var(--c-background-primary);
  color: var(--c-accent-primary);
  cursor: pointer;
  font: inherit;
  font-size: .82rem;
  font-weight: 650;
}
.docs-menu-button:hover, .docs-menu-button:focus-visible {
  border-color: var(--c-accent-primary);
  background: var(--c-background-tertiary);
  outline: 0;
}
.docs-backdrop { display: none; }
.main:has(.docs-sidebar) .content {
  max-width: 1120px;
  margin: 0 auto;
  gap: 0;
  border-top: 1px solid var(--c-border-primary);
}
.main:has(.docs-sidebar) .content-panel {
  box-sizing: border-box;
  flex: 0 0 232px;
  width: 232px;
  max-width: 232px;
  min-width: 0;
  margin: 0;
  padding: 2rem 1.25rem 5rem 0;
  border-right: 1px solid var(--c-border-primary);
}
.main:has(.docs-sidebar) .vertical-tabs { display: block; }
.main:has(.docs-sidebar) .docs-sidebar {
  box-sizing: border-box;
  position: sticky;
  top: 5.5rem;
  max-height: calc(100vh - 7rem);
  padding: 0 1rem 0 0;
  overflow-y: auto;
  scrollbar-width: thin;
}
.docs-sidebar-heading { display: none; }
.docs-nav-group + .docs-nav-group { margin-top: 1.35rem; }
.main:has(.docs-sidebar) .docs-tree-label {
  margin: 0 0 .4rem;
  padding: 0 .7rem;
  color: var(--c-text-secondary);
  font-size: .63rem;
  font-weight: 750;
  letter-spacing: .1em;
  line-height: 1.3;
}
.main:has(.docs-sidebar) .docs-sidebar a {
  display: flex;
  align-items: flex-start;
  box-sizing: border-box;
  width: 100%;
  min-height: 34px;
  margin: 1px 0;
  padding: .5rem .7rem !important;
  border-left: 2px solid transparent;
  border-radius: 6px !important;
  color: var(--c-text-secondary) !important;
  font-size: .81rem;
  font-weight: 500;
  line-height: 1.35;
  overflow-wrap: anywhere;
  text-decoration: none;
  transition: background .15s ease, border-color .15s ease, color .15s ease;
}
.main:has(.docs-sidebar) .docs-sidebar a:hover,
.main:has(.docs-sidebar) .docs-sidebar a:focus-visible {
  background: var(--c-background-tertiary) !important;
  color: var(--c-text-primary) !important;
  outline: 0;
}
.main:has(.docs-sidebar) .docs-sidebar a.is-current {
  border-left-color: var(--c-accent-primary);
  background: var(--c-accent-soft) !important;
  color: var(--c-text-primary) !important;
  font-weight: 650;
}
.main:has(.docs-sidebar) .docs-sidebar a.is-current::before { display: none; }
.main:has(.docs-sidebar) .content-main {
  box-sizing: border-box;
  flex: 1 1 auto;
  width: auto;
  max-width: none;
  min-width: 0;
  padding: 2.45rem 2rem 7rem 2.75rem;
}
.main:has(.docs-sidebar) .content-main > .doc-section {
  max-width: 760px;
  margin: 0 0 3.5rem;
  scroll-margin-top: 5.5rem;
}
.main:has(.docs-sidebar) .content-main > .doc-section:last-child { margin-bottom: 0; }
.main:has(.docs-sidebar) .doc-section h2 {
  margin-bottom: 1rem;
  color: var(--c-text-primary);
  font-size: 1.4rem;
  font-weight: 650;
  letter-spacing: -.025em;
  line-height: 1.3;
}
.main:has(.docs-sidebar) .doc-section h3 {
  margin: 2rem 0 .65rem;
  color: var(--c-text-primary);
  font-size: 1rem;
  font-weight: 650;
  line-height: 1.4;
}
.main:has(.docs-sidebar) .doc-section p,
.main:has(.docs-sidebar) .docs-list {
  color: var(--c-text-secondary);
  font-size: .91rem;
  line-height: 1.8;
  overflow-wrap: anywhere;
}
.main:has(.docs-sidebar) .doc-section p { margin-bottom: .9rem; }
.main:has(.docs-sidebar) .doc-section a { color: var(--c-accent-primary); }
.main:has(.docs-sidebar) .doc-section a.button-primary,
.main:has(.docs-sidebar) .doc-section a.button-primary:hover,
.main:has(.docs-sidebar) .doc-section a.button-primary:focus { color:#fff; }
.main:has(.docs-sidebar) .doc-section code.inline {
  color: var(--c-text-primary);
  background: var(--c-background-tertiary);
  border-radius: 4px;
  font-size: .78em;
  overflow-wrap: anywhere;
  word-break: break-word;
}
.main:has(.docs-sidebar) .code-block {
  max-width: 100%;
  margin: 1.2rem 0 1.55rem;
  border: 1px solid var(--c-border-primary);
  border-radius: 7px;
  box-shadow: none;
  overflow: hidden;
}
.main:has(.docs-sidebar) .code-head {
  min-height: 36px;
  box-sizing: border-box;
  padding: .55rem .8rem;
  border-bottom: 1px solid var(--c-border-primary);
  background: var(--c-background-tertiary);
  color: var(--c-text-secondary);
  font-size: .68rem;
}
.main:has(.docs-sidebar) .code-head button {
  border-color: var(--c-border-primary);
  border-radius: 5px;
  color: var(--c-accent-primary);
}
.main:has(.docs-sidebar) .code-block pre {
  max-width: 100%;
  box-sizing: border-box;
  padding: 1rem;
  overflow-x: auto;
  background: var(--c-background-primary);
  color: var(--c-text-primary);
  font-size: .75rem;
  line-height: 1.7;
  white-space: pre;
  -webkit-overflow-scrolling: touch;
}
.main:has(.docs-sidebar) .code-block pre code { white-space: inherit; }
.main:has(.docs-sidebar) .docs-callout {
  margin: 0 0 2rem;
  padding: .85rem 1rem;
  border: 1px solid var(--c-border-primary);
  border-left: 3px solid var(--c-accent-primary);
  border-radius: 5px;
  background: var(--c-background-tertiary);
}
.main:has(.docs-sidebar) .docs-callout strong { color: var(--c-text-primary); font-size: .84rem; }
.main:has(.docs-sidebar) .docs-callout span { color: var(--c-text-secondary); font-size: .85rem; line-height: 1.65; }
.main:has(.docs-sidebar) .docs-callout-warn { border-left-color: var(--nx-amber); background: var(--nx-amber-bg); }
.main:has(.docs-sidebar) .table-card {
  box-sizing: border-box;
  max-width: 100%;
  border: 1px solid var(--c-border-primary);
  border-radius: 7px;
  box-shadow: none;
  overflow: hidden;
}
.main:has(.docs-sidebar) .table-card .table-head {
  align-items: flex-start;
  flex-wrap: wrap;
  gap: .5rem 1rem;
  padding: 1rem;
}
.main:has(.docs-sidebar) .docs-table-card .table-scroll { max-width: 100%; overflow-x: auto; }
.main:has(.docs-sidebar) .docs-table-card .badge { white-space: normal; }
.main:has(.docs-sidebar) .nx-table th { background: var(--c-background-tertiary); color: var(--c-text-secondary); font-size: .7rem; }
.main:has(.docs-sidebar) .nx-table td { color: var(--c-text-secondary); font-size: .8rem; }
.main:has(.docs-sidebar) .nx-table td:first-child { color: var(--c-text-primary); }
.main:has(.docs-sidebar) .faq-item { padding: 1.1rem 0; }
.main:has(.docs-sidebar) .faq-q { color: var(--c-text-primary); font-size: .9rem; }
.main:has(.docs-sidebar) .faq-a { color: var(--c-text-secondary); line-height: 1.7; overflow-wrap: anywhere; }
.main:has(.docs-sidebar) .docs-overview-section { margin-bottom: 3.5rem !important; }
.main:has(.docs-sidebar) .docs-overview-section:last-child { margin-bottom: 0 !important; }
.docs-topic-header .section-kicker, .docs-agent-header .section-kicker { display: block; }
.docs-topic-header + .content, .docs-agent-header + .content { margin-top: 0; }
body.docs-nav-open { overflow: hidden; }

@media (min-width: 800px) and (max-width: 980px) {
  .main:has(.docs-sidebar) .content-header { padding-inline: 1.35rem; }
  .main:has(.docs-sidebar) .docs-header { gap: 1.25rem; }
  .main:has(.docs-sidebar) .docs-header-tools { flex-basis: 320px; }
  .main:has(.docs-sidebar) .content-panel { flex-basis: 210px; width: 210px; }
  .main:has(.docs-sidebar) .content-main { padding-inline: 1.7rem 1.35rem; }
}

@media (max-width: 799px) {
  .main:has(.docs-sidebar) { padding-top: 1rem; }
  .main:has(.docs-sidebar) .content-header {
    max-width: none;
    padding: 1.15rem 1rem 1.2rem;
  }
  .main:has(.docs-sidebar) .docs-header { display: block; }
  .main:has(.docs-sidebar) .docs-header-copy h2 { font-size: clamp(1.45rem, 7vw, 1.8rem); }
  .main:has(.docs-sidebar) .docs-header-copy p { font-size: .87rem; line-height: 1.7; }
  .docs-header-tools {
    display: flex;
    width: 100%;
    max-width: none;
    margin-top: 1rem;
    flex-direction: column;
    align-items: stretch;
    gap: .65rem;
  }
  .docs-endpoint {
    width: 100%;
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-areas: "label action" "url url";
    padding: .7rem .75rem;
  }
  .docs-endpoint-label { grid-area: label; }
  .docs-endpoint code {
    grid-area: url;
    overflow: visible;
    font-size: .7rem;
    line-height: 1.5;
    white-space: normal;
  }
  .docs-endpoint button { grid-area: action; }
  .docs-menu-button { display: inline-flex; width: 100%; }
  .main:has(.docs-sidebar) .content {
    display: block;
    width: 100%;
    margin: 0;
    border-top: 1px solid var(--c-border-primary);
  }
  .main:has(.docs-sidebar) .content-panel {
    box-sizing: border-box;
    display: block;
    position: fixed;
    z-index: 90;
    top: 0;
    bottom: 0;
    left: 0;
    width: min(86vw, 340px);
    max-width: none;
    height: 100%;
    margin: 0;
    padding: 0;
    border: 0;
    border-right: 1px solid var(--c-border-primary);
    background: var(--c-background-primary);
    box-shadow: 18px 0 42px rgba(31, 42, 68, .12);
    transform: translate3d(-102%, 0, 0);
    visibility: hidden;
    transition: transform .2s ease, visibility 0s linear .2s;
  }
  .main:has(.docs-sidebar) .content-panel.open {
    transform: translate3d(0, 0, 0);
    visibility: visible;
    transition-delay: 0s;
  }
  .main:has(.docs-sidebar) .vertical-tabs { height: 100%; }
  .main:has(.docs-sidebar) .docs-sidebar {
    box-sizing: border-box;
    position: relative;
    top: auto;
    height: 100%;
    max-height: none;
    padding: 1rem .9rem 2rem;
    overflow-y: auto;
    background: var(--c-background-primary);
  }
  .docs-sidebar-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: .15rem .1rem 1rem;
    border-bottom: 1px solid var(--c-border-primary);
    color: var(--c-text-primary);
    font-size: .9rem;
    font-weight: 700;
  }
  .docs-sidebar-close {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border: 1px solid var(--c-border-primary);
    border-radius: 6px;
    background: var(--c-background-primary);
    color: var(--c-text-secondary);
    cursor: pointer;
    font-size: 1.1rem;
  }
  .docs-sidebar-close:hover, .docs-sidebar-close:focus-visible {
    border-color: var(--c-accent-primary);
    color: var(--c-accent-primary);
    outline: 0;
  }
  .docs-nav-group { margin-top: 1rem; }
  .docs-nav-group + .docs-nav-group { margin-top: 1.15rem; }
  .main:has(.docs-sidebar) .docs-tree-label { padding: 0 .25rem; font-size: .64rem; }
  .main:has(.docs-sidebar) .docs-sidebar a {
    min-height: 44px;
    margin: .15rem 0;
    padding: .65rem .75rem !important;
    border-radius: 6px !important;
    font-size: .87rem;
    line-height: 1.35;
  }
  .docs-backdrop {
    display: block;
    position: fixed;
    z-index: 80;
    inset: 0;
    background: rgba(15, 23, 42, .38);
    opacity: 0;
    pointer-events: none;
    visibility: hidden;
    transition: opacity .2s ease, visibility 0s linear .2s;
  }
  .docs-backdrop.open {
    opacity: 1;
    pointer-events: auto;
    visibility: visible;
    transition-delay: 0s;
  }
  .main:has(.docs-sidebar) .content-main {
    width: 100%;
    max-width: none;
    padding: 1.45rem 1rem 4.5rem;
  }
  .main:has(.docs-sidebar) .content-main > .doc-section {
    max-width: none;
    margin-bottom: 2.8rem;
    scroll-margin-top: 1.5rem;
  }
  .main:has(.docs-sidebar) .doc-section h2 { margin-bottom: .85rem; font-size: 1.3rem; line-height: 1.35; }
  .main:has(.docs-sidebar) .doc-section h3 { margin-top: 1.65rem; font-size: .98rem; }
  .main:has(.docs-sidebar) .doc-section p,
  .main:has(.docs-sidebar) .docs-list { font-size: .89rem; line-height: 1.78; }
  .main:has(.docs-sidebar) .code-block { margin: 1rem 0 1.35rem; }
  .main:has(.docs-sidebar) .code-head { min-height: 35px; padding: .5rem .7rem; }
  .main:has(.docs-sidebar) .code-block pre {
    padding: .8rem;
    font-size: .7rem;
    line-height: 1.65;
  }
  .main:has(.docs-sidebar) .table-card .table-head { padding: .85rem; }
  .main:has(.docs-sidebar) .nx-table th,
  .main:has(.docs-sidebar) .nx-table td { padding: .6rem .7rem; }
  .main:has(.docs-sidebar) .docs-callout { margin-bottom: 1.6rem; padding: .8rem .85rem; }
  .main:has(.docs-sidebar) .docs-overview-section { margin-bottom: 2.8rem !important; }
}

@media (prefers-reduced-motion: reduce) {
  .main:has(.docs-sidebar) .content-panel,
  .main:has(.docs-sidebar) .docs-backdrop { transition: none; }
}

/* ---------- checkout mobil duzeltmeler (2026-09-16) ---------- */
@media (max-width: 640px) {
  /* iframe kalkti; full-bleed kirilma mobilde yatay tasmaya yol aciyordu */
  .shopier-full { width: auto; max-width: 100%; min-height: 0; margin-left: 0; margin-right: 0; }
  /* bar dar ekranda sikismasin: plan satiri ustte, canli durum altta */
  .shopier-bar { flex-wrap: wrap; row-gap: .35rem; }
  .shopier-bar > div:first-child { flex: 1 1 100%; min-width: 0; }
  .shopier-bar strong { overflow: hidden; text-overflow: ellipsis; }
  .pay-live { flex: 1 1 auto; min-width: 0; }
  /* kart kenarlara yapismasin */
  .shopier-full .pay-card { margin-left: .75rem; margin-right: .75rem; }
  /* kupon satiri dar ekranda tasmasin */
  #coupon_code { min-width: 0; flex: 1 1 auto; }
  #couponApply { flex-shrink: 0; white-space: nowrap; }
  /* odeme yontemi + fiyat tasmasi olmasin */
  .checkout-plan strong { white-space: normal; }
  .pay-method span { min-width: 0; }
}
