
.seat-position-tag.aisle {
  background-color: color-mix(in srgb, var(--color-info) 15%, transparent);
  color: var(--color-info);
}

/* 静音车厢标签 */
.quiet-car-checkbox {
  display: flex;
  align-items: center;
  gap: 6px;
  cursor: pointer;
  padding: 6px 12px;
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
  font-size: 13px;
  color: var(--text-secondary);
  transition: all 0.2s;
  white-space: nowrap;
}

.quiet-car-checkbox:hover {
  border-color: var(--primary);
  color: var(--primary);
}

.quiet-car-checkbox input[type="checkbox"] {
  width: 14px;
  height: 14px;
  cursor: pointer;
}

.quiet-car-checkbox:has(input:checked) {
  background-color: var(--color-primary-light);
  border-color: var(--primary);
  color: var(--primary);
}

/* ==================== 娣辫壊妯″紡瑕嗙�?? ==================== */
[data-theme="dark"] body {
  background-color: var(--background);
  color: var(--text-primary);
}

[data-theme="dark"] .auth-form {
  background-color: var(--card-background);
  box-shadow: 0 2px 16px rgba(0, 0, 0, 0.5);
}

[data-theme="dark"] .header {
  background-color: var(--color-bg-surface);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-bottom: 1px solid var(--color-border-light);
  box-shadow: 0 2px 16px rgba(0, 0, 0, 0.6);
}

[data-theme="dark"] .search-input,
[data-theme="dark"] .search-input-container,
[data-theme="dark"] .stat-card,
[data-theme="dark"] .chart-placeholder,
[data-theme="dark"] .station-stats,
[data-theme="dark"] .ranking-stats,
[data-theme="dark"] .import-instructions,
[data-theme="dark"] .file-drop-area,
[data-theme="dark"] .file-info,
[data-theme="dark"] .user-details {
  background-color: var(--card-background);
}

[data-theme="dark"] .search-bar {
  background-color: var(--color-bg-surface);
  border-bottom-color: var(--color-border-light);
}

[data-theme="dark"] .stats-page,
[data-theme="dark"] .stats-container {
  background-color: var(--background);
}

[data-theme="dark"] .ticket-card {
  background-color: var(--color-bg-surface);
  border-color: rgba(255, 255, 255, 0.06);
  box-shadow: var(--shadow-sm);
}

[data-theme="dark"] .ticket-card.refunded {
  border-left-color: #555;
}

[data-theme="dark"] .ticket-card.refunded .time,
[data-theme="dark"] .ticket-card.refunded .station,
[data-theme="dark"] .ticket-card.refunded .date,
[data-theme="dark"] .ticket-card.refunded .detail-value,
[data-theme="dark"] .ticket-card.refunded .detail-label,
[data-theme="dark"] .ticket-card.refunded .ticket-note,
[data-theme="dark"] .ticket-card.refunded .duration {
  color: #666;
}

[data-theme="dark"] .ticket-card.refunded .train-number {
  background-color: #555 !important;
  color: #999 !important;
}

[data-theme="dark"] .ticket-card.refunded .train-type {
  background-color: #3a3a3a !important;
  color: #666 !important;
}

[data-theme="dark"] .ticket-card.refunded .duration {
  background-color: #2a2a2a;
}

[data-theme="dark"] .ticket-card.refunded .arrow-line {
  background-color: #444;
}

[data-theme="dark"] .ticket-card.refunded .arrow-line::after {
  border-left-color: #444;
}

[data-theme="dark"] .modal-content {
  background-color: var(--color-bg-surface);
  box-shadow: var(--shadow-lg);
}

[data-theme="dark"] .modal-overlay {
  background-color: rgba(0, 0, 0, 0.5);
}

[data-theme="dark"] .form-group input,
[data-theme="dark"] .form-group select,
[data-theme="dark"] .form-group textarea {
  background-color: var(--color-bg-muted);
  border-color: var(--border);
  color: var(--text-primary);
}

[data-theme="dark"] .form-group input:focus,
[data-theme="dark"] .form-group select:focus,
[data-theme="dark"] .form-group textarea:focus {
  border-color: var(--primary);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--primary) 15%, transparent);
}

[data-theme="dark"] .connecting-details {
  background-color: var(--background-light);
  border-color: var(--border);
}

[data-theme="dark"] .connecting-item {
  border-bottom-color: var(--border);
}

[data-theme="dark"] .connecting-details h4 {
  color: var(--text-primary);
}

[data-theme="dark"] .connecting-time {
  color: var(--text-primary);
}

[data-theme="dark"] .year-navigator {
  background-color: var(--card-background);
  box-shadow: 0 2px 16px rgba(0, 0, 0, 0.5);
}

[data-theme="dark"] .ticket-menu {
  background-color: var(--color-bg-surface);
  border-color: var(--border);
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.6);
}

[data-theme="dark"] .suggestions {
  background: var(--card-background);
  border-color: var(--border);
}

[data-theme="dark"] .expand-button {
  background: var(--background-light);
  color: var(--text-primary);
}

[data-theme="dark"] .expand-button:hover {
  background: var(--border);
}

[data-theme="dark"] .expanded-content {
  border-top-color: var(--border);
}

[data-theme="dark"] .quiet-car-badge {
  background: color-mix(in srgb, var(--color-warning) 15%, transparent);
  color: var(--color-warning);
  border-color: color-mix(in srgb, var(--color-warning) 25%, transparent);
}

[data-theme="dark"] .weather-card {
  filter: brightness(0.85);
}

[data-theme="dark"] input[type="checkbox"] {
  background-color: var(--color-bg-muted);
  accent-color: var(--primary);
}

[data-theme="dark"] .check-gate-row {
  background: linear-gradient(135deg, color-mix(in srgb, var(--primary) 10%, transparent) 0%, color-mix(in srgb, var(--primary) 6%, transparent) 100%);
}

[data-theme="dark"] .add-button-container .add-button {
  background-color: var(--card-background);
  border-color: color-mix(in srgb, var(--primary) 25%, transparent);
  color: var(--primary);
  box-shadow: 0 4px 20px color-mix(in srgb, var(--primary) 20%, transparent);
}

[data-theme="dark"] ::-webkit-scrollbar-track {
  background: var(--background);
}

[data-theme="dark"] ::-webkit-scrollbar-thumb {
  background-color: var(--color-bg-muted);
  border-radius: var(--radius-xs);
}

[data-theme="dark"] ::-webkit-scrollbar-thumb:hover {
  background-color: var(--color-border);
}

[data-theme="dark"] .loading-spinner {
  border-color: rgba(255, 255, 255, 0.08);
  border-top-color: var(--primary);
}

[data-theme="dark"] a {
  color: var(--primary);
}

[data-theme="dark"] a:hover {
  color: var(--primary);
}

[data-theme="dark"] .button-primary {
  background: linear-gradient(135deg, var(--primary) 0%, var(--primary-dark) 100%);
  border: none;
  box-shadow: 0 4px 16px color-mix(in srgb, var(--primary) 25%, transparent);
}

[data-theme="dark"] .button-primary:hover {
  background: linear-gradient(135deg, var(--color-primary-hover) 0%, var(--primary) 100%);
}

[data-theme="dark"] .button-secondary {
  background-color: var(--background-light);
  border-color: var(--border);
  color: var(--text-primary);
}

[data-theme="dark"] .button-secondary:hover {
  background-color: var(--border);
}

[data-theme="dark"] .button-danger {
  background: linear-gradient(135deg, var(--color-error) 0%, var(--color-error) 100%);
  border: none;
}

[data-theme="dark"] ::placeholder {
  color: var(--text-secondary);
}

[data-theme="dark"] .form-group label {
  color: var(--text-primary);
}

[data-theme="dark"] .tabs .tab {
  color: var(--text-secondary);
  border-bottom-color: transparent;
}

[data-theme="dark"] .tabs .tab.active {
  color: var(--primary);
  border-bottom-color: var(--primary);
}

[data-theme="dark"] table {
  border-color: var(--border);
}

[data-theme="dark"] th,
[data-theme="dark"] td {
  border-color: var(--border);
}

[data-theme="dark"] th {
  background-color: var(--background-light);
}

[data-theme="dark"] tr:hover {
  background-color: rgba(255, 255, 255, 0.03);
}

[data-theme="dark"] hr {
  border-color: var(--border);
}

[data-theme="dark"] .ticket-card:hover,
[data-theme="dark"] .stat-card:hover {
  box-shadow: var(--shadow-md);
  transform: translateY(-2px);
}

[data-theme="dark"] .alert-warning {
  background-color: color-mix(in srgb, var(--color-warning) 12%, transparent);
  border-color: color-mix(in srgb, var(--color-warning) 25%, transparent);
  color: var(--warning);
}

[data-theme="dark"] .alert-error {
  background-color: rgba(255, 82, 82, 0.1);
  border-color: rgba(255, 82, 82, 0.2);
  color: var(--error);
}

[data-theme="dark"] .alert-success {
  background-color: rgba(76, 175, 80, 0.1);
  border-color: rgba(76, 175, 80, 0.2);
  color: var(--success);
}

[data-theme="dark"] .quiet-car-checkbox {
  border-color: var(--border);
  color: var(--text-secondary);
}

[data-theme="dark"] .quiet-car-checkbox:has(input:checked) {
  background-color: color-mix(in srgb, var(--primary) 15%, transparent);
}

[data-theme="dark"] .seat-position-tag.window {
  background-color: color-mix(in srgb, var(--primary) 15%, transparent);
  color: var(--primary);
}

[data-theme="dark"] .seat-position-tag.aisle {
  background-color: color-mix(in srgb, var(--color-info) 15%, transparent);
  color: var(--color-info);
}

[data-theme="dark"] .code-button {
  background-color: var(--primary);
}

[data-theme="dark"] .code-button:disabled {
  background-color: var(--border);
}

[data-theme="dark"] .exit-confirm-text {
  color: var(--text-primary);
}

[data-theme="dark"] .verified-badge {
  background-color: var(--success);
}

[data-theme="dark"] .close-button:hover {
  background-color: rgba(255, 255, 255, 0.08);
}

