.panel,
.controls .buttons,
.table-container,
.batch-preview,
.batch-preview-table,
.operation-progress-card,
.app-header,
.column,
.admin-panel,
.shell,
.filter-bar,
.table-wrap,
.time-modal-content,
.batch-modal-content,
.modal-content {
  border: 1px solid var(--bl-line);
  border-radius: var(--bl-radius-xl);
  box-shadow: var(--bl-shadow-md);
  backdrop-filter: blur(14px);
  transition:
    border-color var(--bl-motion-base) var(--bl-ease-standard),
    box-shadow var(--bl-motion-base) var(--bl-ease-standard),
    background var(--bl-motion-base) var(--bl-ease-standard);
}

.panel,
.controls .buttons,
.table-container,
.app-header,
.column,
.shell,
.time-modal-content,
.batch-modal-content,
.modal-content {
  background: var(--bl-bg-panel-strong);
}

.card,
.stat-card,
.tile {
  border: 1px solid var(--bl-line);
  border-radius: var(--bl-radius-lg);
  box-shadow: var(--bl-shadow-sm);
  transition:
    transform var(--bl-motion-base) var(--bl-ease-emphasized),
    border-color var(--bl-motion-base) var(--bl-ease-standard),
    box-shadow var(--bl-motion-base) var(--bl-ease-standard),
    filter var(--bl-motion-base) var(--bl-ease-standard),
    background var(--bl-motion-base) var(--bl-ease-standard);
}

.btn,
.btn-primary,
.btn-secondary,
.btn-admin,
.buttons button,
.time-button,
.batch-primary,
.batch-secondary,
.actions button,
.back-btn,
.home-button {
  min-height: var(--bl-button-height-md);
  border-radius: var(--bl-radius-md);
  border: 1px solid var(--bl-line-strong);
  box-shadow: var(--bl-shadow-sm);
  font-size: var(--bl-text-sm);
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.6rem;
  text-decoration: none;
  transition:
    transform var(--bl-motion-fast) var(--bl-ease-emphasized),
    border-color var(--bl-motion-base) var(--bl-ease-standard),
    box-shadow var(--bl-motion-base) var(--bl-ease-standard),
    filter var(--bl-motion-fast) var(--bl-ease-standard),
    background var(--bl-motion-base) var(--bl-ease-standard),
    color var(--bl-motion-base) var(--bl-ease-standard);
}

.btn,
.btn-primary,
.btn-secondary,
.buttons button,
.time-button,
.batch-secondary,
.actions button,
.back-btn,
.home-button {
  background: linear-gradient(150deg, rgba(255, 255, 255, 0.16), rgba(255, 255, 255, 0.05));
}

.btn--icon,
.btn-primary--icon,
.back-btn,
.home-button {
  width: 44px;
  min-width: 44px;
  height: 44px;
  min-height: 44px;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.badge,
.badge-sm,
.filter-count,
.counters div,
.photos-scale-controls {
  border-radius: var(--bl-radius-md);
  border: 1px solid var(--bl-line);
  background: rgba(255, 255, 255, 0.06);
  box-shadow: 0 10px 22px rgba(0, 0, 0, 0.22);
  transition:
    transform var(--bl-motion-fast) var(--bl-ease-emphasized),
    border-color var(--bl-motion-base) var(--bl-ease-standard),
    box-shadow var(--bl-motion-base) var(--bl-ease-standard),
    background var(--bl-motion-base) var(--bl-ease-standard);
}

.modal-card,
.time-modal-content,
.batch-modal-content,
.modal-content {
  border-radius: var(--bl-radius-xl);
  border: 1px solid var(--bl-line);
  background: var(--bl-bg-panel-strong);
  box-shadow: var(--bl-shadow-md);
}

.form-control,
#product-table .column-opisy textarea,
#product-table .column-isbn textarea,
.batch-textarea,
.form-group input,
.form-group textarea,
.form-group select,
.courier-select,
.filter-bar select {
  border-radius: var(--bl-radius-md);
  border: 1px solid var(--bl-line-strong);
  background: rgba(17, 19, 24, 0.92);
  color: var(--bl-text);
  color-scheme: dark;
  transition:
    border-color var(--bl-motion-base) var(--bl-ease-standard),
    box-shadow var(--bl-motion-base) var(--bl-ease-standard),
    background var(--bl-motion-base) var(--bl-ease-standard),
    transform var(--bl-motion-fast) var(--bl-ease-emphasized);
}

.form-group select option,
.courier-select option,
.filter-bar select option {
  background: #111318;
  color: var(--bl-text);
}

.ui-icon {
  width: 1.25rem;
  height: 1.25rem;
  flex: 0 0 auto;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.9;
  stroke-linecap: round;
  stroke-linejoin: round;
  pointer-events: none;
}

.btn__icon,
.welcome-button__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0;
}

.btn__icon + span,
.welcome-button__icon + span {
  display: inline-flex;
}

.floating-add-btn .ui-icon {
  width: 2rem;
  height: 2rem;
}

.btn:disabled,
.btn-primary:disabled,
.btn-secondary:disabled,
.btn-admin:disabled,
.buttons button:disabled,
.time-button:disabled,
.batch-primary:disabled,
.batch-secondary:disabled,
.actions button:disabled,
.back-btn:disabled,
.home-button:disabled {
  opacity: 0.52;
  cursor: not-allowed;
  transform: none;
  filter: none;
  box-shadow: none;
}

.form-control:hover,
#product-table .column-opisy textarea:hover,
#product-table .column-isbn textarea:hover,
.batch-textarea:hover,
.form-group input:hover,
.form-group textarea:hover,
.form-group select:hover,
.courier-select:hover,
.filter-bar select:hover {
  border-color: rgba(255, 255, 255, 0.18);
}

.form-control:focus,
.form-control:focus-visible,
#product-table .column-opisy textarea:focus,
#product-table .column-opisy textarea:focus-visible,
#product-table .column-isbn textarea:focus,
#product-table .column-isbn textarea:focus-visible,
.batch-textarea:focus,
.batch-textarea:focus-visible,
.form-group input:focus,
.form-group input:focus-visible,
.form-group textarea:focus,
.form-group textarea:focus-visible,
.form-group select:focus,
.form-group select:focus-visible,
.courier-select:focus,
.courier-select:focus-visible,
.filter-bar select:focus,
.filter-bar select:focus-visible {
  outline: none;
  border-color: rgba(255, 214, 102, 0.4);
  box-shadow: 0 0 0 4px rgba(255, 214, 102, 0.08);
  background: rgba(20, 23, 31, 0.96);
}

@media (hover: hover) and (pointer: fine) {
  .btn:hover,
  .btn-primary:hover,
  .btn-secondary:hover,
  .btn-admin:hover,
  .buttons button:hover,
  .time-button:hover,
  .batch-primary:hover,
  .batch-secondary:hover,
  .actions button:hover,
  .back-btn:hover,
  .home-button:hover {
    transform: var(--bl-hover-lift-md);
    filter: brightness(var(--bl-hover-brightness));
    border-color: rgba(255, 255, 255, 0.2);
    box-shadow: var(--bl-shadow-hover-sm);
  }

  .card:hover,
  .stat-card:hover,
  .tile:hover {
    transform: var(--bl-hover-lift-sm);
    border-color: rgba(255, 255, 255, 0.14);
    box-shadow: var(--bl-shadow-hover-sm);
  }

  .badge:hover,
  .badge-sm:hover,
  .filter-count:hover,
  .counters div:hover,
  .photos-scale-controls:hover {
    border-color: rgba(255, 255, 255, 0.14);
    box-shadow: 0 14px 26px rgba(0, 0, 0, 0.28);
    background: rgba(255, 255, 255, 0.075);
  }
}

.btn:active,
.btn-primary:active,
.btn-secondary:active,
.btn-admin:active,
.buttons button:active,
.time-button:active,
.batch-primary:active,
.batch-secondary:active,
.actions button:active,
.back-btn:active,
.home-button:active {
  transform: var(--bl-hover-press);
}

@media (prefers-reduced-motion: reduce) {
  .panel,
  .controls .buttons,
  .table-container,
  .batch-preview,
  .batch-preview-table,
  .operation-progress-card,
  .app-header,
  .column,
  .admin-panel,
  .shell,
  .filter-bar,
  .table-wrap,
  .time-modal-content,
  .batch-modal-content,
  .modal-content,
  .card,
  .stat-card,
  .tile,
  .btn,
  .btn-primary,
  .btn-secondary,
  .btn-admin,
  .buttons button,
  .time-button,
  .batch-primary,
  .batch-secondary,
  .actions button,
  .back-btn,
  .home-button,
  .badge,
  .badge-sm,
  .filter-count,
  .counters div,
  .photos-scale-controls,
  .form-control,
  #product-table .column-opisy textarea,
  #product-table .column-isbn textarea,
  .batch-textarea,
  .form-group input,
  .form-group textarea,
  .form-group select,
  .courier-select,
  .filter-bar select {
    transition: none !important;
  }
}
