/* ================================
   Form Controls Component
   インラインスタイル排除用
   ================================ */

.compare-filter select {
  width: 100%;
  padding: var(--space-sm);
  border: 1px solid var(--color-border);
  border-radius: 4px;
  font-size: var(--font-md);
  font-family: inherit;
  background-color: var(--color-surface);
  color: var(--color-text);
}

.compare-filter select:focus {
  outline: 2px solid var(--color-primary);
  outline-offset: 2px;
}

.player-select-message {
  padding: var(--space-sm);
  color: var(--color-error, #dc3545);
  font-size: var(--font-sm);
  text-align: center;
  background-color: var(--color-bg-error, #f8d7da);
  border: 1px solid var(--color-border-error, #f5c6cb);
  border-radius: 4px;
  margin-top: 0.5rem;
}

/* Glass select (season selector only) */
.season-selector-inline .glass-select {
  position: relative;
  display: inline-flex;
  align-items: center;
  /* シーズン表示用に最適化（4桁 or 7桁 "2026/27" に対応） */
  min-width: 110px;
  max-width: 120px;
}

.season-selector-inline .glass-select select {
  width: 100%;
  padding: 10px 40px 10px 12px;
  border-radius: 14px;
  border: 1px solid rgba(255, 255, 255, 0.28);
  background: rgba(255, 255, 255, 0.18);
  color: var(--color-text, #0a1f44);
  backdrop-filter: blur(10px) saturate(160%);
  -webkit-backdrop-filter: blur(10px) saturate(160%);
  box-shadow: 0 10px 26px rgba(0, 0, 0, 0.08);
  appearance: none;
  -webkit-appearance: none;
  font: inherit;
  line-height: 1.2;
  color-scheme: light;
}

.season-selector-inline .glass-select__icon {
  position: absolute;
  right: 12px;
  width: 18px;
  height: 18px;
  pointer-events: none;
  opacity: 0.72;
  background:
    linear-gradient(45deg, transparent 50%, rgba(10, 31, 68, 0.85) 50%) left/50% 50% no-repeat,
    linear-gradient(-45deg, transparent 50%, rgba(10, 31, 68, 0.85) 50%) right/50% 50% no-repeat;
  transform: translateY(1px);
}

@media (hover: hover) and (pointer: fine) {
  .season-selector-inline .glass-select select:hover {
    border-color: rgba(255, 255, 255, 0.4);
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.1);
  }
}

.season-selector-inline .glass-select select:focus-visible {
  outline: none;
  border-color: rgba(40, 110, 255, 0.55);
  box-shadow: 0 0 0 3px rgba(40, 110, 255, 0.18), 0 12px 30px rgba(0, 0, 0, 0.1);
}

.season-selector-inline .glass-select select:disabled {
  opacity: 0.55;
  cursor: not-allowed;
}

@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  .season-selector-inline .glass-select select {
    background: rgba(255, 255, 255, 0.78);
    border-color: rgba(0, 0, 0, 0.08);
  }
}

@media (max-width: 768px) {
  .season-selector-inline .glass-select select {
    background: rgba(255, 255, 255, 0.26);
    backdrop-filter: blur(8px) saturate(150%);
    -webkit-backdrop-filter: blur(8px) saturate(150%);
  }
}