/* ============================================================
   經銷商架站系統 - Global Styles
   AlmaLinux 9.4 + Plesk Deployment
   ============================================================ */

* { margin: 0; padding: 0; box-sizing: border-box; }

body {
  font-family: 'Noto Sans TC', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  background: #f5f6fa;
  color: #333;
}

#root { min-height: 100vh; }

/* Scrollbar */
::-webkit-scrollbar { width: 6px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: #ccc; border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: #999; }

/* Selection */
::selection { background: #1a5276; color: #fff; }

/* Focus */
input:focus, select:focus, textarea:focus {
  border-color: #1a5276 !important;
  box-shadow: 0 0 0 3px rgba(26,82,118,.1);
}

/* Animations */
@keyframes fadeIn {
  from { opacity: 0; transform: translateY(-8px); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes slideUp {
  from { opacity: 0; transform: translateY(20px); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes pulse {
  0%, 100% { opacity: 1; }
  50% { opacity: .6; }
}

/* Responsive - Dealer Frontend */
@media (max-width: 768px) {
  .dealer-header-inner { padding: 0 16px !important; height: 60px !important; }
  .dealer-logo-text { font-size: 16px !important; }
  .dealer-logo-icon { font-size: 26px !important; }
  .dealer-nav-desktop { display: none !important; }
  .dealer-hamburger { display: flex !important; }
  .dealer-mobile-nav { display: flex !important; }
  .dealer-hero { padding: 60px 20px !important; }
  .dealer-hero h1 { font-size: 28px !important; }
  .dealer-hero p { font-size: 15px !important; }
  .dealer-hero-btns { flex-direction: column !important; align-items: center !important; }
  .dealer-hero-btns button { width: 100% !important; max-width: 280px !important; }
  .dealer-section { padding: 48px 16px !important; }
  .dealer-section h2 { font-size: 24px !important; }
  .dealer-products-grid { grid-template-columns: 1fr !important; gap: 16px !important; }
  .dealer-product-card { padding: 20px !important; }
  .dealer-product-card h3 { font-size: 17px !important; }
  .dealer-product-price { font-size: 20px !important; }
  .dealer-stats-row { flex-direction: column !important; gap: 20px !important; }
  .dealer-stats-row > div { text-align: center; }
  .dealer-stats-num { font-size: 28px !important; }
  .dealer-contact-grid { grid-template-columns: 1fr !important; }
  .dealer-footer { padding: 32px 16px !important; }
  .dealer-topbar span { display: none !important; }
  .dealer-topbar { padding: 6px 16px !important; }
}

@media (min-width: 769px) {
  .dealer-hamburger { display: none !important; }
  .dealer-mobile-nav { display: none !important; }
}

/* Button hover effects */
button { transition: all 0.2s ease; }
button:hover { opacity: 0.9; }
button:active { transform: scale(0.98); }

/* Table row hover */
tr { transition: background 0.15s ease; }

/* Print styles */
@media print {
  aside, .dealer-topbar, .dealer-hamburger { display: none !important; }
  main { padding: 0 !important; }
}
