/* 全画面ローディング */
.loading {
  position: fixed; inset: 0; z-index: 2147483600;
  display: grid; place-items: center;
  /* 背景をほぼ不透明にして背後を隠す */
  background: rgba(0,0,0,.75);
  backdrop-filter: blur(3px);
  transition: opacity .18s ease, visibility .18s ease;
}
.loading.is-hidden {
  opacity: 0; visibility: hidden; pointer-events: none;
}

.loading-panel {
  display: grid; gap: 14px; place-items: center;
  padding: 20px 24px;
  background: #171a21; color: #e5e7eb;
  border: 1px solid #2a2f3a; border-radius: 14px;
  box-shadow: 0 16px 40px rgba(0,0,0,.55);
  min-width: 220px;
}

/* ギャラリーアイコンをスピナー化 */
.spinner {
  width: 30px;
  height: 30px;
  animation: spin 1s linear infinite;
  filter: drop-shadow(0 2px 6px rgba(0,0,0,.35));
  fill: #FACC15; /* ← これで確実に黄色に */
}


.msg { margin: 0; font-size: .95rem; color: #f3f4f6; }

@keyframes spin {
  to { transform: rotate(360deg); }
}
