/* mobile-audit.css — veysalov.online mobil optimizasiya qatı */

html, body { overflow-x: hidden; max-width: 100vw; }

a, button, [role="button"] {
  -webkit-tap-highlight-color: transparent;
  touch-action: manipulation;
}

.project-card a[class*="text-label-caps"] {
  min-height: 48px;
  display: inline-flex;
  align-items: center;
  padding: 8px 4px;
}

@media (max-width: 640px) {
  .project-card > div.h-64 {
    height: auto;
    min-height: 220px;
    aspect-ratio: 4 / 3;
  }
}

@keyframes mobileNavIn {
  from { opacity: 0; transform: scale(0.97) translateY(10px); }
  to   { opacity: 1; transform: scale(1) translateY(0); }
}
#mobileMenuPanel.flex { animation: mobileNavIn 0.32s cubic-bezier(0.16,1,0.3,1) both; }
#mobileMenuPanel.flex > a { animation: mobileNavIn 0.32s cubic-bezier(0.16,1,0.3,1) both; }
#mobileMenuPanel.flex > a:nth-of-type(1) { animation-delay: .05s }
#mobileMenuPanel.flex > a:nth-of-type(2) { animation-delay: .10s }
#mobileMenuPanel.flex > a:nth-of-type(3) { animation-delay: .15s }
#mobileMenuPanel.flex > a:nth-of-type(4) { animation-delay: .20s }
#mobileMenuPanel.flex > a:nth-of-type(5) { animation-delay: .25s }

@media (max-width: 768px) {
  [class*="blur-[120px]"] { filter: blur(48px); }
  [class*="animate-blob"] { animation: none !important; }
  nav[class*="backdrop-blur-2xl"] { backdrop-filter: blur(14px); }
}

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

@media (max-width: 480px) {
  .text-headline-lg-mobile { font-size: clamp(1.5rem, 7vw, 2rem) !important; line-height: 1.18 !important; }
  .text-display-lg, .font-display-lg { font-size: clamp(1.875rem, 9vw, 2.5rem) !important; line-height: 1.1 !important; }
}

@media screen and (max-width: 767px) {
  input, select, textarea { font-size: 16px !important; }
}

.mobile-cta-bar {
  position: fixed; left: 12px; right: 12px;
  bottom: calc(env(safe-area-inset-bottom, 0px) + 12px);
  z-index: 90; display: flex; align-items: center; gap: 8px;
  padding: 8px; border-radius: 20px;
  border: 1px solid #464554;
  background: rgba(15, 19, 28, 0.75);
  backdrop-filter: blur(16px);
  box-shadow: 0 8px 32px rgba(0,0,0,0.45);
  transform: translateY(120%); opacity: 0;
  transition: transform 0.35s cubic-bezier(0.16,1,0.3,1), opacity 0.3s ease;
}
.mobile-cta-bar.is-visible { transform: translateY(0); opacity: 1; }
.mobile-cta-bar.is-hidden-scroll { transform: translateY(120%); opacity: 0; }
.mobile-cta-bar__top {
  flex-shrink: 0; width: 48px; height: 48px;
  display: flex; align-items: center; justify-content: center;
  border-radius: 14px; color: #dfe2ee; background: transparent; border: none;
}
.mobile-cta-bar__top:active { background: rgba(255,255,255,0.08); transform: scale(0.95); }
.mobile-cta-bar__divider { width: 1px; height: 24px; background: rgba(255,255,255,0.1); flex-shrink: 0; }
.mobile-cta-bar__cta {
  flex: 1; height: 48px; display: flex; align-items: center; justify-content: center;
  gap: 8px; border-radius: 14px;
  background: linear-gradient(90deg, #8083ff, #c0c1ff);
  color: #1000a9; font-weight: 600; font-size: 15px; letter-spacing: -0.01em;
  text-decoration: none; transition: transform 0.15s ease;
}
.mobile-cta-bar__cta:active { transform: scale(0.98); }
@media (min-width: 768px) { .mobile-cta-bar { display: none; } }
