/*
  Apple-clean (Ultra-minimal) overrides for Xngine/Sngine
  Scoped to <body class="apple-clean"> to avoid breaking core theme.
*/

.apple-clean {
  --ac-bg: #f5f5f7;
  --ac-surface: #ffffff;
  --ac-surface-2: #fbfbfd;
  --ac-border: #e5e5ea;
  --ac-text: #1d1d1f;
  --ac-muted: #6e6e73;
  --ac-link: #0071e3;
  --ac-link-hover: #0060c8;
  --ac-shadow: 0 1px 2px rgba(0,0,0,.04), 0 8px 24px rgba(0,0,0,.06);
  --ac-radius: 16px;
  --ac-radius-sm: 12px;
  --ac-focus: 0 0 0 4px rgba(0,113,227,.18);
}

/* Base */
.apple-clean, .apple-clean * {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.apple-clean {
  font-family: Inter, system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  background: var(--ac-bg) !important;
  color: var(--ac-text);
}

.apple-clean a {
  color: var(--ac-link);
  text-decoration: none;
}
.apple-clean a:hover {
  color: var(--ac-link-hover);
  text-decoration: none;
}

/* Layout backgrounds */
.apple-clean .main-wrapper,
.apple-clean .container,
.apple-clean .container-fluid {
  background: transparent;
}

/* Cards / panels */
.apple-clean .card,
.apple-clean .panel,
.apple-clean .x-form,
.apple-clean .shadow-sm,
.apple-clean .dropdown-menu,
.apple-clean .modal-content {
  background: var(--ac-surface) !important;
  border: 1px solid var(--ac-border) !important;
  border-radius: var(--ac-radius) !important;
  box-shadow: var(--ac-shadow) !important;
}

.apple-clean .card-header,
.apple-clean .card-footer,
.apple-clean .panel-heading {
  background: var(--ac-surface) !important;
  border-color: var(--ac-border) !important;
}

/* Typography hierarchy */
.apple-clean h1, .apple-clean h2, .apple-clean h3, .apple-clean h4, .apple-clean h5, .apple-clean h6 {
  color: var(--ac-text);
  letter-spacing: -0.02em;
}
.apple-clean .text-muted,
.apple-clean small,
.apple-clean .small {
  color: var(--ac-muted) !important;
}

/* Buttons */
.apple-clean .btn {
  border-radius: 999px !important;
  font-weight: 600;
  letter-spacing: -0.01em;
}
.apple-clean .btn:focus,
.apple-clean .btn:focus-visible {
  box-shadow: var(--ac-focus) !important;
}

.apple-clean .btn-main,
.apple-clean .btn-primary {
  background: #111111 !important;
  border-color: #111111 !important;
  color: #ffffff !important;
}
.apple-clean .btn-main:hover,
.apple-clean .btn-primary:hover {
  background: #000000 !important;
  border-color: #000000 !important;
}

.apple-clean .btn-outline-primary,
.apple-clean .btn-outline-main {
  border-color: var(--ac-border) !important;
  color: var(--ac-text) !important;
  background: transparent !important;
}
.apple-clean .btn-outline-primary:hover,
.apple-clean .btn-outline-main:hover {
  background: rgba(0,0,0,.04) !important;
  border-color: var(--ac-border) !important;
}

/* Inputs */
.apple-clean .form-control,
.apple-clean .form-select,
.apple-clean .input-group-text {
  border-radius: 14px !important;
  border-color: var(--ac-border) !important;
  background: var(--ac-surface) !important;
  color: var(--ac-text) !important;
}
.apple-clean .form-control::placeholder {
  color: rgba(110,110,115,.85);
}
.apple-clean .form-control:focus,
.apple-clean .form-select:focus {
  border-color: rgba(0,113,227,.55) !important;
  box-shadow: var(--ac-focus) !important;
}

/* Header / navbar */
.apple-clean .navbar,
.apple-clean .header,
.apple-clean .top-bar {
  background: rgba(245,245,247,.78) !important;
  -webkit-backdrop-filter: blur(18px);
  backdrop-filter: blur(18px);
  border-bottom: 1px solid var(--ac-border) !important;
}

/* Sidebar */
.apple-clean .x-sidebar,
.apple-clean .x-sidebar-fixed {
  background: transparent !important;
}
.apple-clean .x-sidebar .card,
.apple-clean .x-sidebar .panel {
  background: var(--ac-surface) !important;
}

.apple-clean .x_side_links,
.apple-clean .x_side_links a {
  border-radius: 12px;
}
.apple-clean .x_side_links:hover,
.apple-clean .x_side_links a:hover {
  background: rgba(0,0,0,.035) !important;
}

/* Feed composer */
.apple-clean .x-form {
  overflow: hidden;
}
.apple-clean .x-form textarea,
.apple-clean .x-form input {
  box-shadow: none !important;
}

/* Dropdowns */
.apple-clean .dropdown-menu {
  padding: 10px;
}
.apple-clean .dropdown-item {
  border-radius: 12px;
}
.apple-clean .dropdown-item:hover {
  background: rgba(0,0,0,.04) !important;
}

/* Modals */
.apple-clean .modal-backdrop.show {
  opacity: .35;
}

/* Avatars / media */
.apple-clean img {
  border-radius: 12px;
}

/* Reduce visual noise */
.apple-clean .badge,
.apple-clean .label,
.apple-clean .tag {
  border-radius: 999px;
}

/* Night mode: keep it clean, not neon */
.apple-clean.night-mode {
  --ac-bg: #0b0b0c;
  --ac-surface: #111113;
  --ac-surface-2: #0e0e10;
  --ac-border: #232326;
  --ac-text: #f5f5f7;
  --ac-muted: rgba(245,245,247,.65);
  --ac-shadow: 0 1px 2px rgba(0,0,0,.35), 0 10px 30px rgba(0,0,0,.35);
}

.apple-clean.night-mode .navbar,
.apple-clean.night-mode .header,
.apple-clean.night-mode .top-bar {
  background: rgba(17,17,19,.72) !important;
  border-bottom: 1px solid var(--ac-border) !important;
}

.apple-clean.night-mode .btn-outline-primary,
.apple-clean.night-mode .btn-outline-main {
  color: var(--ac-text) !important;
  border-color: var(--ac-border) !important;
}

