html {
  -webkit-tap-highlight-color: transparent;
  text-rendering: optimizeLegibility;
}

body {
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont,
    "Segoe UI", sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

button,
.btn,
input,
select,
textarea {
  font: inherit;
}

button,
.btn {
  border-radius: 12px !important;
  font-weight: 700 !important;
  line-height: 1.2;
  letter-spacing: -0.01em;
  transition: transform 120ms ease, opacity 160ms ease;
}

button:active:not(:disabled),
.btn:active:not(:disabled) {
  transform: translateY(1px) scale(0.99);
}

button:disabled,
.btn:disabled {
  cursor: not-allowed;
}

.btn-login,
.btn-next,
.btn-clear,
.action-btn,
.modal-btn,
.kot-btn,
.header-btn,
.refresh-btn,
.back-btn {
  min-height: 46px !important;
  border-radius: 12px !important;
  font-weight: 750 !important;
}

.back-link {
  font-weight: 700 !important;
  text-decoration: none;
}

.mobile-cart,
.header-btn,
.refresh-btn,
.back-btn {
  min-width: 44px !important;
  min-height: 44px !important;
}

.brand-title,
.store-title,
.cart-title,
.section-title,
.section-heading,
.kot-section-title,
.screen-header h1,
.modal-title,
.notes-title,
.cart-sheet-title,
.panel-title {
  font-weight: 800;
  letter-spacing: -0.025em;
  line-height: 1.2;
}

.brand-subtitle,
.section-help,
.form-label,
.notes-label,
.cart-sheet-subtitle,
.order-time-display {
  line-height: 1.5;
}

.product-name,
.cart-item-name,
.order-card-title,
.branch-name,
.category-item,
.filter-btn,
.table-item,
.kot-table-btn {
  font-weight: 700;
  line-height: 1.3;
}

.product-price,
.cart-total,
.order-total,
.price,
.discount-cart-summary,
.order-id-display {
  font-weight: 800;
  font-variant-numeric: tabular-nums;
}

input:not([type="radio"]):not([type="checkbox"]),
select,
textarea,
.form-control {
  min-height: 46px !important;
  border-radius: 10px !important;
  line-height: 1.4;
}

input::placeholder,
textarea::placeholder,
.form-control::placeholder {
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont,
    "Segoe UI", sans-serif !important;
  font-size: 0.92em !important;
  font-weight: 500 !important;
  letter-spacing: 0.01em;
}

#serverModal button,
#login-btn,
#next-btn,
.btn-footer .btn,
.notes-modal button,
.modal button {
  min-height: 46px !important;
  border-radius: 12px !important;
  font-weight: 750 !important;
}

.dine-option,
.discount-type-option {
  min-height: 44px;
  font-weight: 700;
}

@media (max-width: 767px) {
  button,
  .btn {
    min-height: 46px;
  }
}

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