/* NexoraHost V121 — complete dark responsive design system */
:root {
  color-scheme: dark;
  --nx121-bg: #06101c;
  --nx121-bg-soft: #091625;
  --nx121-panel: #0d1b2e;
  --nx121-panel-2: #12243a;
  --nx121-panel-3: #182c45;
  --nx121-line: #20344e;
  --nx121-line-strong: #304968;
  --nx121-text: #edf4ff;
  --nx121-text-soft: #bdcadc;
  --nx121-muted: #8294ac;
  --nx121-violet: #7867ef;
  --nx121-violet-bright: #9c91ff;
  --nx121-cyan: #25c7dc;
  --nx121-green: #30d18a;
  --nx121-red: #ff6b7f;
  --nx121-radius-sm: 9px;
  --nx121-radius: 13px;
  --nx121-radius-lg: 19px;
  --nx121-shadow: 0 20px 55px rgba(0, 0, 0, .25);
}

html { background: var(--nx121-bg); }
body { accent-color: var(--nx121-violet); }
::selection { color: #fff; background: rgba(120, 103, 239, .68); }
* { scrollbar-width: thin; scrollbar-color: #314761 #091522; }
*::-webkit-scrollbar { width: 9px; height: 9px; }
*::-webkit-scrollbar-track { background: #091522; }
*::-webkit-scrollbar-thumb { border: 2px solid #091522; border-radius: 999px; background: #314761; }

a, button, input, select, textarea, summary, [tabindex] { outline: none; }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible,
summary:focus-visible, [tabindex]:focus-visible {
  outline: 3px solid rgba(37, 199, 220, .55) !important;
  outline-offset: 3px !important;
}
button, .btn, [role="button"] { touch-action: manipulation; }
img, svg, video, canvas { max-width: 100%; }

/* Shared form, overlay and feedback surfaces */
.dashboard-body .input, .dashboard-body .select, .dashboard-body .textarea,
.dashboard-body input:not([type="checkbox"]):not([type="radio"]):not([type="color"]):not([type="range"]),
.dashboard-body select, .dashboard-body textarea,
.nexora-v121-auth input:not([type="checkbox"]):not([type="radio"]), .nexora-v121-auth select, .nexora-v121-auth textarea {
  min-height: 44px;
  border: 1px solid var(--nx121-line) !important;
  border-radius: var(--nx121-radius-sm) !important;
  color: var(--nx121-text) !important;
  background: #0a1829 !important;
  transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
}
.dashboard-body textarea, .nexora-v121-auth textarea { min-height: 116px; resize: vertical; }
.dashboard-body input::placeholder, .dashboard-body textarea::placeholder,
.nexora-v121-auth input::placeholder, .nexora-v121-auth textarea::placeholder { color: #667990 !important; }
.dashboard-body input:focus, .dashboard-body select:focus, .dashboard-body textarea:focus,
.nexora-v121-auth input:focus, .nexora-v121-auth select:focus, .nexora-v121-auth textarea:focus {
  border-color: rgba(156, 145, 255, .72) !important;
  box-shadow: 0 0 0 4px rgba(120, 103, 239, .12) !important;
}
.dashboard-body input:disabled, .dashboard-body select:disabled, .dashboard-body textarea:disabled {
  opacity: .62; cursor: not-allowed;
}
.dashboard-body .form-label, .dashboard-body label > span:first-child { color: var(--nx121-text-soft); }
.dashboard-body .help, .dashboard-body .form-help, .dashboard-body .muted { color: var(--nx121-muted) !important; }
.dashboard-body .alert, .dashboard-body .notice, .dashboard-body .toast,
.dashboard-body .modal, .dashboard-body .modal-card, .dashboard-body .modal-content,
.dashboard-body .drawer, .dashboard-body .dropdown, .dashboard-body details {
  border-color: var(--nx121-line) !important;
  color: var(--nx121-text) !important;
  background: var(--nx121-panel) !important;
  box-shadow: var(--nx121-shadow) !important;
}
.dashboard-body dialog { max-width: min(680px, calc(100vw - 32px)); border: 1px solid var(--nx121-line); border-radius: var(--nx121-radius-lg); color: var(--nx121-text); background: var(--nx121-panel); box-shadow: var(--nx121-shadow); }
.dashboard-body dialog::backdrop { background: rgba(1, 7, 15, .76); backdrop-filter: blur(7px); }
.dashboard-body pre, .dashboard-body code { border-color: var(--nx121-line) !important; color: #bceff6 !important; background: #06101c !important; }
.dashboard-body hr { border-color: var(--nx121-line) !important; }

/* Panel foundation */
.dashboard-body { min-width: 0; overflow-x: clip; background: var(--nx121-bg) !important; }
.dashboard-body .main, .dashboard-body .content, .dashboard-body .dashboard { min-width: 0; }
.dashboard-body .content { width: 100%; }
.dashboard-body .card, .dashboard-body .table-card, .dashboard-body .stat-card, .dashboard-body .stat,
.dashboard-body .panel, .dashboard-body .v7-panel, .dashboard-body .v26-metric-card {
  border-color: var(--nx121-line) !important;
  color: var(--nx121-text) !important;
  background: linear-gradient(145deg, var(--nx121-panel), #0a1828) !important;
}
.dashboard-body .card-header, .dashboard-body .card-head, .dashboard-body .table-head,
.dashboard-body .panel-head, .dashboard-body .modal-header, .dashboard-body .modal-footer {
  border-color: var(--nx121-line) !important;
}
.dashboard-body h1, .dashboard-body h2, .dashboard-body h3, .dashboard-body h4,
.dashboard-body strong { color: var(--nx121-text); }
.dashboard-body p, .dashboard-body small { color: var(--nx121-muted); }
.dashboard-body .page-head { gap: 18px; }
.dashboard-body .page-actions, .dashboard-body .actions, .dashboard-body .toolbar,
.dashboard-body .filters, .dashboard-body .filter-bar, .dashboard-body .card-actions {
  display: flex; align-items: center; gap: 9px; flex-wrap: wrap;
}
.dashboard-body .page-actions > *, .dashboard-body .actions > *, .dashboard-body .toolbar > * { max-width: 100%; }
.dashboard-body .btn, .dashboard-body button:not(.v77-admin-trigger):not(.user-chip) {
  min-height: 42px;
}
.dashboard-body .btn-secondary, .dashboard-body .btn-ghost {
  border-color: var(--nx121-line) !important;
  color: var(--nx121-text-soft) !important;
  background: var(--nx121-panel-2) !important;
}
.dashboard-body .btn-secondary:hover, .dashboard-body .btn-ghost:hover {
  border-color: var(--nx121-line-strong) !important;
  color: #fff !important;
  background: var(--nx121-panel-3) !important;
}
.dashboard-body .badge { border: 1px solid rgba(255, 255, 255, .08); }
.dashboard-body .empty {
  min-height: 230px; display: grid; place-items: center; align-content: center; gap: 9px;
  padding: 30px; border: 1px dashed var(--nx121-line-strong); border-radius: var(--nx121-radius);
  color: var(--nx121-muted); background: rgba(255, 255, 255, .018); text-align: center;
}
.dashboard-body .empty .empty-icon { color: var(--nx121-violet-bright); }

/* Tables: desktop polish + JS-powered mobile cards */
.dashboard-body .table-wrap, .dashboard-body .table-responsive {
  max-width: 100%; border-radius: var(--nx121-radius); overflow-x: auto; overscroll-behavior-inline: contain;
}
.dashboard-body table.table { width: 100%; border-collapse: separate; border-spacing: 0; }
.dashboard-body .table th { padding: 13px 14px !important; white-space: nowrap; }
.dashboard-body .table td { padding: 14px !important; vertical-align: middle; }
.dashboard-body .table tbody tr { transition: background .16s ease, transform .16s ease; }
.dashboard-body .table tbody tr:hover td { background: #122239 !important; }
.dashboard-body .table td .actions { justify-content: flex-end; }

/* Navigation and overlays */
.dashboard-body .sidebar { padding-bottom: max(16px, env(safe-area-inset-bottom)) !important; }
.dashboard-body .sidebar-overlay { background: rgba(1, 7, 15, .72) !important; backdrop-filter: blur(5px); }
.dashboard-body .side-link, .dashboard-body .v27-mobile-nav a { min-height: 44px; }
.dashboard-body .user-dropdown a, .dashboard-body .command-list a, .dashboard-body .command-grid a { border-color: var(--nx121-line) !important; color: var(--nx121-text-soft) !important; }
.dashboard-body .user-dropdown a:hover, .dashboard-body .command-list a:hover, .dashboard-body .command-grid a:hover { color: #fff !important; background: var(--nx121-panel-2) !important; }
.dashboard-body .v77-admin-dropdown { border: 1px solid var(--nx121-line) !important; background: var(--nx121-panel) !important; box-shadow: var(--nx121-shadow) !important; }
.dashboard-body .v77-admin-link { color: var(--nx121-text-soft) !important; }
.dashboard-body .v77-admin-link:hover, .dashboard-body .v77-admin-link.active { color: #fff !important; background: var(--nx121-panel-2) !important; }
.dashboard-body .v27-mobile-nav a.active:not(.primary) { color: var(--nx121-violet-bright) !important; }

/* Public and authentication cohesion */
.public-shell input, .public-shell select, .public-shell textarea {
  color: var(--nx121-text); color-scheme: dark;
}
.public-shell .btn, .public-shell button, .public-shell a { touch-action: manipulation; }
.public-shell .v7-main-nav { overscroll-behavior: contain; }
.nexora-v121-auth { color: var(--nx121-text); background: var(--nx121-bg) !important; }
.nexora-v121-auth .auth-card { overflow: hidden; }
.nexora-v121-auth .auth-card:after {
  content: "Güvenli bağlantı"; position: absolute; top: 18px; right: 20px;
  color: #87dec0; font-size: 9px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase;
}
.nexora-v121-auth .btn { min-height: 46px; }

@media (max-width: 1180px) {
  .dashboard-body .dash-top .command-button span, .dashboard-body .dash-top .command-button kbd,
  .dashboard-body .v7-top-health, .dashboard-body .v21-context { display: none !important; }
  .dashboard-body .page-head { align-items: flex-start; }
}

@media (max-width: 980px) {
  .dashboard-body .dashboard { display: block !important; }
  .dashboard-body .sidebar {
    position: fixed !important; inset: 0 auto 0 0 !important; z-index: 130 !important;
    width: min(86vw, 304px) !important; height: 100dvh !important;
    transform: translateX(-105%); transition: transform .24s ease !important;
    box-shadow: 30px 0 75px rgba(0, 0, 0, .42) !important;
  }
  .dashboard-body .sidebar.open { transform: translateX(0); }
  .dashboard-body .main { width: 100% !important; margin: 0 !important; }
  .dashboard-body .mobile-menu { display: inline-grid !important; }
  .dashboard-body .v77-admin-topnav, .dashboard-body .v24-commerce-nav { display: none !important; }
  .dashboard-body .content { padding-bottom: calc(100px + env(safe-area-inset-bottom)) !important; }
  .dashboard-body .v27-mobile-nav {
    position: fixed !important; right: 10px !important; bottom: max(10px, env(safe-area-inset-bottom)) !important; left: 10px !important;
    z-index: 115 !important; height: 70px !important; display: grid !important; grid-template-columns: repeat(5, 1fr) !important;
    padding: 7px !important; border: 1px solid rgba(255, 255, 255, .09) !important; border-radius: 17px !important;
    background: rgba(10, 24, 41, .94) !important; box-shadow: 0 18px 55px rgba(0, 0, 0, .38) !important; backdrop-filter: blur(22px) !important;
  }
  .dashboard-body .v27-mobile-nav a {
    min-width: 0 !important; display: flex !important; align-items: center !important; justify-content: center !important;
    flex-direction: column !important; gap: 4px !important; padding: 4px 2px !important; border-radius: 11px !important;
    color: #8293aa !important; font-size: 9px !important; white-space: nowrap !important;
  }
  .dashboard-body .v27-mobile-nav a svg { width: 18px !important; height: 18px !important; }
  .dashboard-body .v27-mobile-nav a.primary {
    transform: translateY(-15px); color: #fff !important; background: linear-gradient(135deg, var(--nx121-violet), #5745d4) !important;
    box-shadow: 0 10px 28px rgba(84, 66, 209, .38) !important;
  }
}

@media (max-width: 760px) {
  .dashboard-body .dash-top { padding: 0 12px !important; }
  .dashboard-body .breadcrumb, .dashboard-body .user-copy, .dashboard-body .currency-selector,
  .dashboard-body .v21-support-link, .dashboard-body .nx113-store-link, .dashboard-body .nx113-balance-chip { display: none !important; }
  .dashboard-body .top-actions { gap: 7px !important; }
  .dashboard-body .user-chip { min-width: 44px !important; padding: 4px !important; }
  .dashboard-body .user-chip .chevron-icon { display: none !important; }
  .dashboard-body .content { padding: 16px 12px calc(100px + env(safe-area-inset-bottom)) !important; }
  .dashboard-body .page-head { flex-direction: column !important; margin-bottom: 18px !important; }
  .dashboard-body .page-head > *, .dashboard-body .page-actions { width: 100%; }
  .dashboard-body .page-actions .btn { flex: 1 1 150px; }
  .dashboard-body .grid, .dashboard-body .form-grid, .dashboard-body .stats-grid,
  .dashboard-body .metric-grid, .dashboard-body .dashboard-grid { grid-template-columns: 1fr !important; }
  .dashboard-body .filters, .dashboard-body .filter-bar, .dashboard-body .toolbar { align-items: stretch; flex-direction: column; }
  .dashboard-body .filters > *, .dashboard-body .filter-bar > *, .dashboard-body .toolbar > * { width: 100% !important; }
  .dashboard-body input:not([type="checkbox"]):not([type="radio"]):not([type="color"]):not([type="range"]),
  .dashboard-body select, .dashboard-body textarea, .nexora-v121-auth input, .nexora-v121-auth select, .nexora-v121-auth textarea { font-size: 16px !important; }

  .dashboard-body .table-wrap, .dashboard-body .table-responsive, .dashboard-body .table-card { overflow: visible !important; }
  .dashboard-body .nx121-table-ready { display: block; border: 0 !important; background: transparent !important; }
  .dashboard-body .nx121-table-ready thead { position: absolute !important; width: 1px !important; height: 1px !important; overflow: hidden !important; clip: rect(0 0 0 0) !important; white-space: nowrap !important; }
  .dashboard-body .nx121-table-ready tbody { display: grid; gap: 11px; }
  .dashboard-body .nx121-table-ready tbody tr {
    display: grid !important; padding: 6px 13px !important; border: 1px solid var(--nx121-line) !important;
    border-radius: 13px !important; background: linear-gradient(145deg, var(--nx121-panel), #0a1828) !important;
    box-shadow: 0 10px 26px rgba(0, 0, 0, .16) !important;
  }
  .dashboard-body .nx121-table-ready tbody tr:hover { transform: none; }
  .dashboard-body .nx121-table-ready td {
    width: 100% !important; min-height: 43px; display: flex !important; align-items: center !important; justify-content: space-between !important;
    gap: 16px !important; padding: 10px 0 !important; border: 0 !important; border-bottom: 1px solid rgba(255, 255, 255, .065) !important;
    background: transparent !important; text-align: right !important; white-space: normal !important;
  }
  .dashboard-body .nx121-table-ready td:last-child { border-bottom: 0 !important; }
  .dashboard-body .nx121-table-ready td:before {
    content: attr(data-label); flex: 0 0 38%; color: #8294ac; font-size: 9px; font-weight: 800; letter-spacing: .06em; text-align: left; text-transform: uppercase;
  }
  .dashboard-body .nx121-table-ready td.nx121-cell-wide { display: block !important; text-align: left !important; }
  .dashboard-body .nx121-table-ready td.nx121-cell-wide:before { display: block; margin-bottom: 8px; }
  .dashboard-body .nx121-table-ready td .actions { width: 100%; justify-content: flex-end; }
  .dashboard-body .nx121-table-ready td .btn { min-height: 38px !important; }

  .public-shell .v74-hero-panel, .public-shell .v74-domain-panel > .v69-domain-card { box-shadow: 0 20px 55px rgba(0, 0, 0, .28) !important; }
  .public-shell .v8-footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .public-shell .v8-footer-brand { grid-column: 1 / -1; }
}

@media (max-width: 520px) {
  .dashboard-body .admin-ribbon { align-items: flex-start !important; flex-direction: column !important; }
  .dashboard-body .card, .dashboard-body .table-card, .dashboard-body .panel { border-radius: 11px !important; }
  .dashboard-body .actions { align-items: stretch; }
  .dashboard-body .actions > .btn, .dashboard-body .actions > form, .dashboard-body .actions > form .btn { width: 100%; }
  .dashboard-body .v27-mobile-nav { right: 7px !important; bottom: max(7px, env(safe-area-inset-bottom)) !important; left: 7px !important; }
  .dashboard-body .v27-mobile-nav a span { max-width: 60px; overflow: hidden; text-overflow: ellipsis; }
  .public-shell .v8-footer-grid { grid-template-columns: 1fr !important; }
  .public-shell .v8-footer-brand { grid-column: auto; }
  .nexora-v121-auth .auth-wrap { padding: 18px 12px !important; align-items: flex-start !important; }
  .nexora-v121-auth .auth-card { margin-top: 18px; padding: 25px 19px !important; }
  .nexora-v121-auth .auth-card:after { top: 15px; right: 16px; }
}

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

@media print {
  .dashboard-body { color: #111 !important; background: #fff !important; }
  .dashboard-body .sidebar, .dashboard-body .dash-top, .dashboard-body .v77-admin-topnav,
  .dashboard-body .v24-commerce-nav, .dashboard-body .v27-mobile-nav, .dashboard-body .page-actions,
  .dashboard-body .admin-ribbon, .dashboard-body .content-glow { display: none !important; }
  .dashboard-body .main, .dashboard-body .content { width: 100% !important; margin: 0 !important; padding: 0 !important; color: #111 !important; background: #fff !important; }
  .dashboard-body .card, .dashboard-body .table-card, .dashboard-body .table td,
  .dashboard-body .table th { color: #111 !important; background: #fff !important; box-shadow: none !important; }
}
