/* Apple90 Modern UI v2 — refined palettes, loaders, components and responsive behavior */
:root {
  --ui-bg:#f3f6fb; --ui-panel:#ffffff; --ui-panel-2:#f8faff; --ui-text:#182338;
  --ui-muted:#6c7890; --ui-border:#e4eaf3; --ui-primary:#4567e8; --ui-primary-2:#3153d5;
  --ui-accent:#16a6a0; --ui-shadow:0 12px 34px rgba(28,43,78,.075);
  --ui-radius:18px;
}
html[data-theme="light"] {
  color-scheme:light;
  --ui-bg:#f3f6fb; --ui-panel:#fff; --ui-panel-2:#f8faff; --ui-text:#182338;
  --ui-muted:#6c7890; --ui-border:#e4eaf3; --ui-primary:#4567e8; --ui-primary-2:#3153d5;
  --ui-accent:#159b91; --ui-shadow:0 12px 34px rgba(28,43,78,.075);
}
html[data-theme="dark"] {
  color-scheme:dark;
  --ui-bg:#0d1422; --ui-panel:#151f31; --ui-panel-2:#1b2940; --ui-text:#edf2ff;
  --ui-muted:#9ba9c1; --ui-border:#2a3951; --ui-primary:#8298ff; --ui-primary-2:#647cf0;
  --ui-accent:#45c8bd; --ui-shadow:0 16px 40px rgba(0,0,0,.25);
}
html[data-theme="mint"] {
  color-scheme:light;
  --ui-bg:#eff8f4; --ui-panel:#ffffff; --ui-panel-2:#f4fbf7; --ui-text:#17372f;
  --ui-muted:#668078; --ui-border:#d9ebe3; --ui-primary:#398d72; --ui-primary-2:#28765d;
  --ui-accent:#79bda1; --ui-shadow:0 12px 34px rgba(35,91,69,.085);
}
body { background-color:var(--ui-bg); color:var(--ui-text); }
.card,.glass-card,.stat-card,.stat-industrial,.content-card,.admin-card,
.notifications-panel,.notification-item,.modal-content,.modal-dialog {
  border-color:var(--ui-border);
}
html[data-theme="light"] .card,html[data-theme="light"] .glass-card,
html[data-theme="light"] .stat-card,html[data-theme="light"] .stat-industrial,
html[data-theme="mint"] .card,html[data-theme="mint"] .glass-card,
html[data-theme="mint"] .stat-card,html[data-theme="mint"] .stat-industrial {
  background:var(--ui-panel); color:var(--ui-text); box-shadow:var(--ui-shadow);
}
html[data-theme="dark"] .card,html[data-theme="dark"] .glass-card,
html[data-theme="dark"] .stat-card,html[data-theme="dark"] .stat-industrial {
  background:var(--ui-panel); color:var(--ui-text); border-color:var(--ui-border);
}
input:not([type=checkbox]):not([type=radio]),select,textarea {
  background:var(--ui-panel-2); color:var(--ui-text); border-color:var(--ui-border);
}
input::placeholder,textarea::placeholder { color:var(--ui-muted); opacity:.8; }
button,.btn { border-radius:12px; }
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible {
  outline:3px solid color-mix(in srgb,var(--ui-primary) 32%,transparent) !important; outline-offset:2px;
}
i[data-lucide],svg.lucide {
  width:1.15em; height:1.15em; stroke-width:1.8; vertical-align:-.16em;
  flex-shrink:0;
}
.floating-btn,.theme-toggle-fab,.theme-toggle-btn {
  border:1px solid var(--ui-border); box-shadow:var(--ui-shadow); backdrop-filter:blur(16px);
}
#themeToggleBtn,#themeToggleFab { cursor:pointer; transition:transform .2s,box-shadow .2s; }
#themeToggleBtn:hover,#themeToggleFab:hover { transform:translateY(-3px); box-shadow:0 12px 28px rgba(49,83,213,.2); }

/* Elegant loading overlays */
#industrial-preloader,#loading-overlay,#loadingOverlay,#loaderOverlay {
  background:rgba(10,18,34,.72) !important; backdrop-filter:blur(14px) saturate(140%);
}
#industrial-preloader .preloader-ring,#loading-overlay .loading-spinner,
#loadingOverlay .loading-spinner,#loaderOverlay .loader-spinner {
  width:54px; height:54px; border-radius:50%;
  border:3px solid rgba(255,255,255,.16); border-top-color:#8fa4ff;
  border-right-color:#55c9bd; box-shadow:0 0 34px rgba(92,126,255,.24);
  animation:apple90-spin .85s linear infinite;
}
#loadingOverlay .loading-card,#loading-overlay .loading-card,#loaderOverlay .loader-card {
  border:1px solid rgba(255,255,255,.16); border-radius:24px;
  background:linear-gradient(145deg,rgba(27,40,65,.96),rgba(15,24,42,.94));
  box-shadow:0 28px 90px rgba(0,0,0,.32); padding:30px 36px;
}
#loadingOverlay .loading-text,#loaderOverlay .loading-text {
  color:#eaf0ff !important; font-weight:600; letter-spacing:-.2px;
}
@keyframes apple90-spin { to { transform:rotate(360deg); } }
@keyframes apple90-pulse { 0%,100%{opacity:.55;transform:scale(.98)} 50%{opacity:1;transform:scale(1)} }
.skeleton,[class*="skeleton"] { animation:apple90-pulse 1.4s ease-in-out infinite; }

/* More polished surfaces and icon containers */
.stat-icon,.icon-box,.feature-icon,.menu-icon {
  border-radius:14px !important; box-shadow:inset 0 1px 0 rgba(255,255,255,.22);
}
table thead th { color:var(--ui-muted); background:var(--ui-panel-2); }
table tbody tr:hover { background:color-mix(in srgb,var(--ui-primary) 5%,transparent); }
hr { border-color:var(--ui-border); }

/* Responsive layout safeguards */
img,video,canvas,svg { max-width:100%; }
@media(max-width:1024px) {
  .admin-sidebar,#admin-sidebar { z-index:1001; }
  .main-content,.content-wrapper { min-width:0; }
}
@media(max-width:768px) {
  body { overflow-x:hidden; }
  .container,.main-container { max-width:100%; padding-inline:14px; }
  .grid { min-width:0; }
  table { display:block; max-width:100%; overflow-x:auto; white-space:nowrap; }
  .modal,.modal-content { max-width:calc(100vw - 24px); }
  .floating-actions { bottom:calc(16px + env(safe-area-inset-bottom)); }
  input,select,textarea { max-width:100%; }
}
@media(max-width:420px) {
  .stat-card,.stat-industrial { padding:14px !important; }
  h1 { font-size:1.35rem; } h2 { font-size:1.12rem; }
}
@media(prefers-reduced-motion:reduce) {
  *,*::before,*::after { animation-duration:.01ms !important; transition-duration:.01ms !important; scroll-behavior:auto !important; }
}
