/* FS-Fileshare (QNAP) – shared styling, based on the Foursys Manager look. */

body {
  min-height: 100svh;
  background: #0d1117;
  padding-left: env(safe-area-inset-left);
  padding-right: env(safe-area-inset-right);
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

.navbar {
  padding-top: calc(0.5rem + env(safe-area-inset-top));
}

.brand-logo {
  height: 28px;
  width: auto;
  border-radius: 4px;
  background: #fff;
  padding: 2px 4px;
}

.brand-logo-frontx {
  height: 22px;
  width: auto;
}

.footer-logo {
  height: 24px;
  width: auto;
  opacity: 0.85;
}

.login-bg {
  background:
    radial-gradient(ellipse at 20% 0%, rgba(13, 110, 253, 0.35) 0%, transparent 55%),
    radial-gradient(ellipse at 80% 100%, rgba(25, 135, 84, 0.2) 0%, transparent 50%),
    #0d1117;
}

.login-logo {
  display: block;
  max-height: 56px;
  width: auto;
  margin-left: auto;
  margin-right: auto;
  border-radius: 6px;
  background: #fff;
  padding: 6px 10px;
}

.login-logo-frontx {
  display: block;
  max-height: 28px;
  width: auto;
  margin-left: auto;
  margin-right: auto;
  opacity: 0.9;
}

.login-brand-stack {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
  text-align: center;
  gap: 1.5rem;
  margin-top: 1.5rem;
  padding-top: 1.25rem;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
}

/* Upload drop zone */
.drop-zone {
  border: 2px dashed rgba(13, 110, 253, 0.4);
  border-radius: 0.5rem;
  padding: 2rem;
  text-align: center;
  transition: background .2s, border-color .2s;
}

.drop-zone.dragover {
  background: rgba(13, 110, 253, 0.12);
  border-color: #0d6efd;
}

footer {
  padding-bottom: calc(1.5rem + env(safe-area-inset-bottom)) !important;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
}

/* Touch ergonomics on mobile */
@media (max-width: 767.98px) {
  .form-control, .form-select, input, textarea { font-size: 16px; }
  .btn { min-height: 44px; }
  .btn-sm { min-height: 38px; }
  .table { font-size: 0.9rem; }
}

.btn, .nav-link, button, a[role="button"] { touch-action: manipulation; }
.table-responsive { -webkit-overflow-scrolling: touch; }
