.card{
  border-radius: var(--r);
  border: 1px solid var(--border);
  background: rgba(16,24,38,.70);
  box-shadow: var(--shadow);
  padding: var(--space-4);
  display: flex;
  flex-direction: column;
}

.card-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 10px;
  margin-bottom: var(--space-2);
}

.card-title{ margin:0; font-size: 18px; }
.card-text{ margin:0 0 var(--space-4); color: var(--muted); line-height:1.7; font-size: 14px; }

.card.is-flex{
  display: flex;
  flex-direction: column;
}

/* .card-actions{ display:flex; gap: 10px; flex-wrap: wrap; } */
.card-actions{
  margin-top: auto;
  display: flex;
  gap: 20px;
}

.appcard {
  display: flex;
  flex-direction: column;
  min-height: 360px;   /* ← ここで「大きさ」を確保 */
  padding: var(--space-5);
}

.appcard .card-actions {
  margin-top: auto;
  display: flex;
  gap: 12px;
}

.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap: 8px;
  padding: 10px 14px;
  border-radius: 12px;
  border: 1px solid transparent;
  font-weight: 500;
  font-size: 14px;
  cursor: pointer;
  transition: all 0.2s;
  user-select:none;
}

.btn-primary{
  background: rgba(43,108,176,.92);
  border-color: rgba(43,108,176,.55);
  color: #ffffff;
}

.btn-green{
  background: rgba(39,83,23,.92);
  border-color: rgba(39,83,23,.55);
  color: #ffffff;
}

.btn-secondary{
  background: rgba(255,255,255,.06);
  border-color: rgba(255,255,255,.10);
}

.btn-ghost{
  background: transparent;
}

/* １．全ボタン共通のhover設定（基本は明るくする）*/
.btn:hover {
  filter: brightness(1.1);
  transform: translateY(-1px);
}

/* ２．特定ボタンのhover設定（挙動を上書きする）*/
.btn-secondary:hover{ background: rgba(255,255,255,.10); }
.btn-ghost:hover{ background: rgba(255,255,255,.06); }

.btn-disabled{
  opacity: .55;
  cursor: not-allowed;
}

.badge{
  display:inline-flex;
  align-items:center;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 12px;
  border: 1px solid var(--border);
  color: var(--text);
}

.badge-live{
  background: rgba(34,197,94,.15);
  border-color: rgba(34,197,94,.35);
}
.badge-soon{
  background: rgba(245,158,11,.16);
  border-color: rgba(245,158,11,.38);
}

.status-list{ display:flex; flex-direction:column; gap: 10px; }
.status-item{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding: 10px 12px;
  border-radius: 12px;
  background: rgba(255,255,255,.04);
  border: 1px solid rgba(255,255,255,.06);
}
.status-name{ font-weight: 650; }

#ytQuery {
  border-radius: 4px; /* 入力欄を少し角丸に */
  font-size: 16px;    /* 入力文字を大きく */
  padding: 8px 12px; /* 上下左右に余白 */
  flex: 1;           /* HTMLから移動 */
  min-width: 260px;  /* HTMLから移動 */
}

#ytBtn {
  color: #ffffff;     /* 文字を白に */
  font-weight: normal;  /* 文字は標準 */
}
