/* =====================================================================
   style.css — ファビコン生成 ツール固有の微調整のみ。
   共通スタイルは /_shared/shirugear.css に任せる。
   ===================================================================== */

/* ドラッグ＆ドロップ枠 */
.fg-drop {
  border: 2px dashed var(--sg-border, #d1d5db);
  border-radius: var(--sg-radius, 8px);
  padding: 28px 16px;
  text-align: center;
  transition: border-color 0.15s, background 0.15s;
}
.fg-drop.is-dragover {
  border-color: var(--sg-primary, #3b5bdb);
  background: rgba(59, 91, 219, 0.06);
}
.fg-drop__text {
  margin: 0 0 12px;
  color: var(--sg-muted, #6b7280);
  font-size: 0.92rem;
  line-height: 1.6;
}
.fg-file-label {
  cursor: pointer;
}
.fg-drop__hint {
  margin-top: 12px;
}

.fg-privacy {
  margin-top: var(--sg-space-4);
}
.fg-msg {
  margin-top: var(--sg-space-2);
  color: var(--sg-danger, #b91c1c);
}

/* 設定：ラジオ群 */
.fg-modes,
.fg-bg {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 18px;
  margin-top: var(--sg-space-2);
}
.fg-modes label,
.fg-bg label {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  cursor: pointer;
  font-size: 0.95rem;
}
.fg-bg__custom {
  gap: 8px;
}
.fg-color {
  width: 34px;
  height: 24px;
  padding: 0;
  border: 1px solid var(--sg-border, #d1d5db);
  border-radius: 4px;
  background: none;
  cursor: pointer;
}

.fg-run {
  margin-top: var(--sg-space-4);
  width: 100%;
}

/* 結果 */
.fg-result-note {
  margin-bottom: var(--sg-space-4);
}

.fg-dl-all-wrap {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: var(--sg-space-4);
}

.fg-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
  gap: 14px;
}
.fg-item {
  border: 1px solid var(--sg-border, #e5e7eb);
  border-radius: var(--sg-radius, 8px);
  padding: 14px 12px;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
}
.fg-item__preview {
  min-height: 72px;
  display: flex;
  align-items: center;
  justify-content: center;
  /* 透過が見やすいチェッカー風の下地 */
  background-color: #fff;
  background-image:
    linear-gradient(45deg, #eee 25%, transparent 25%),
    linear-gradient(-45deg, #eee 25%, transparent 25%),
    linear-gradient(45deg, transparent 75%, #eee 75%),
    linear-gradient(-45deg, transparent 75%, #eee 75%);
  background-size: 16px 16px;
  background-position: 0 0, 0 8px, 8px -8px, -8px 0;
  border-radius: 6px;
  padding: 8px;
  width: 100%;
  box-sizing: border-box;
}
/* プレビューは実ピクセルで表示。大きいサイズだけ枠内に収める。 */
.fg-item__img {
  max-width: 96px;
  max-height: 96px;
  height: auto;
  display: block;
  image-rendering: -moz-crisp-edges;
  image-rendering: pixelated;
}
.fg-item__label {
  font-weight: 600;
  font-size: 0.9rem;
  font-variant-numeric: tabular-nums;
}
.fg-item__use {
  font-size: 0.78rem;
  color: var(--sg-muted, #6b7280);
  line-height: 1.4;
  min-height: 2.4em;
}
.fg-item__dl {
  width: 100%;
  text-decoration: none;
  font-size: 0.82rem;
  padding: 6px 10px;
}

.sg-btn--sub {
  font-size: 0.85rem;
  padding: 6px 12px;
}

.fg-warn {
  margin-top: var(--sg-space-4);
  color: var(--sg-danger, #b91c1c);
}

/* スニペット */
.fg-snippet {
  margin-top: var(--sg-space-4);
}
.fg-snippet__text {
  width: 100%;
  box-sizing: border-box;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 0.82rem;
  line-height: 1.5;
  white-space: pre;
  overflow-x: auto;
  resize: vertical;
}
.fg-copy {
  margin-top: var(--sg-space-2);
}
.fg-copy-msg {
  margin-left: 10px;
  font-size: 0.85rem;
  color: var(--sg-primary, #3b5bdb);
}
