/* 依頼（クエスト）ボード — ブヒ日記タブの上部に表示 */
#quest-board.quest-section { margin-bottom: 14px; }
.quest-list { display: flex; flex-direction: column; gap: 10px; }

.quest-card {
  position: relative;
  display: flex; align-items: flex-start; gap: 10px;
  padding: 12px 14px;
  border-radius: 16px;
  background: linear-gradient(135deg, #fff7e9, #fff1f4);
  border: 2px dashed #e6b980;
  box-shadow: 0 3px 10px rgba(120, 90, 40, .12);
  overflow: hidden;
}
.quest-card.status-success { background: linear-gradient(135deg, #eefaef, #f3fff2); border-color: #9dd39a; }
.quest-card.status-failed  { background: linear-gradient(135deg, #f4f4f6, #fafafb); border-color: #cfcfd6; opacity: .82; }

.quest-giver { flex: 0 0 auto; width: 46px; height: 46px; }
.quest-giver svg { width: 100%; height: 100%; display: block; filter: drop-shadow(0 1px 2px rgba(70,50,90,.3)); }

.quest-body { flex: 1 1 auto; min-width: 0; }
.quest-head { display: flex; align-items: center; gap: 8px; margin-bottom: 3px; }
.quest-tag {
  font-size: 11px; font-weight: 700; color: #fff; background: #e08a3c;
  border-radius: 999px; padding: 1px 9px; letter-spacing: .04em;
}
.status-success .quest-tag { background: #5bb45b; }
.status-failed  .quest-tag { background: #9aa0ab; }
.quest-deadline { font-size: 11px; color: #b07a3a; font-weight: 600; }
.quest-deadline.done { color: #7a8089; }

.quest-title { font-size: 13px; font-weight: 700; color: #5a4630; margin-bottom: 5px; }
.status-failed .quest-title { color: #7a7680; }

.quest-objs { list-style: none; margin: 0 0 6px; padding: 0; }
.quest-obj { font-size: 12.5px; color: #6a5a44; line-height: 1.55; }
.quest-obj b { color: #c8712a; font-variant-numeric: tabular-nums; }
.quest-obj.done { color: #4f9a4f; }
.quest-obj.done b { color: #4f9a4f; }

.quest-reward { font-size: 12px; color: #8a6a3a; background: rgba(255,255,255,.55); border-radius: 8px; padding: 4px 8px; display: inline-block; }
.quest-reward b { color: #d0791f; }
.status-success .quest-reward { color: #4c8a4c; }
.status-success .quest-reward b { color: #3f8a3f; }

/* 成功／失敗のハンコ */
.quest-stamp {
  position: absolute; top: 50%; right: 12px; transform: translateY(-50%) rotate(-14deg);
  font-size: 15px; font-weight: 800; letter-spacing: .06em;
  width: 52px; height: 52px; border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  pointer-events: none; opacity: .92;
}
.stamp-success { color: #d83b3b; border: 3px solid #d83b3b; box-shadow: 0 0 0 2px rgba(216,59,59,.15) inset; }
.stamp-failed  { color: #8a8f99; border: 3px solid #8a8f99; box-shadow: 0 0 0 2px rgba(138,143,153,.15) inset; }

@media (prefers-color-scheme: dark) {
  .quest-card { background: linear-gradient(135deg, #3a3326, #392c30); border-color: #7a5e3a; box-shadow: 0 3px 10px rgba(0,0,0,.3); }
  .quest-card.status-success { background: linear-gradient(135deg, #263a27, #24352a); border-color: #4f7a4f; }
  .quest-card.status-failed  { background: linear-gradient(135deg, #303038, #33333a); border-color: #55555f; }
  .quest-title { color: #f0e2cf; }
  .quest-obj { color: #d8c8ae; }
  .quest-reward { background: rgba(0,0,0,.25); color: #e0c79a; }
}
