/* ── Miscellaneous / page-specific styles ────────────────────── */

/* Go-to-top button */
#topBtn {
  display:none; position:fixed; bottom:20px; right:20px; z-index:99;
  background:red; color:#fff; border:none; border-radius:4px;
  padding:10px 14px; cursor:pointer; font-size:15px; box-shadow:0 2px 6px rgba(0,0,0,.3);
}
#topBtn:hover { background:#900; }

/* Social share row */
.share-row { display:flex; gap:8px; flex-wrap:wrap; margin:10px 0; }
.share-btn {
  display:inline-flex; align-items:center; gap:5px;
  padding:6px 14px; border-radius:4px; font-size:13px;
  color:#fff; text-decoration:none; cursor:pointer;
}
.share-btn.fb { background:#3b5998; }
.share-btn.tw { background:#1da1f2; }
.share-btn.wa { background:#25d366; }
.share-btn.tg { background:#0088cc; }
.share-btn:hover { opacity:.9; }

/* Audio player block */
.player-block {
  background:#f8f8f8; border:1px solid #ddd; border-radius:6px;
  padding:12px; margin:10px 0;
}
.player-block audio { width:100%; margin-top:6px; }

/* Download button (large) */
.btn-download-lg {
  display:block; width:100%; background:#009900; color:#fff;
  text-align:center; padding:12px; border-radius:6px;
  font-size:16px; font-weight:bold; text-decoration:none;
  margin:10px 0; transition:background .15s;
}
.btn-download-lg:hover { background:#007700; text-decoration:none; }

/* Tags / keywords */
.tag-list { display:flex; flex-wrap:wrap; gap:6px; margin:8px 0; }
.tag {
  display:inline-block; padding:3px 10px; background:#eee;
  border-radius:12px; font-size:12px; color:#555; text-decoration:none;
}
.tag:hover { background:#009900; color:#fff; }

/* Notice / alert boxes */
.notice-box {
  background:#fffbdd; border:1px solid #ffe57f;
  border-radius:4px; padding:10px 14px; font-size:14px; margin:10px 0;
}
.notice-box.success { background:#e8f5e9; border-color:#a5d6a7; }
.notice-box.error   { background:#ffebee; border-color:#ef9a9a; }

/* Table */
.data-table { width:100%; border-collapse:collapse; font-size:14px; margin:10px 0; }
.data-table th,
.data-table td { padding:8px 10px; border-bottom:1px solid #eee; text-align:left; }
.data-table th { background:#f4f4f4; font-weight:bold; }
.data-table tr:hover td { background:#f9f9f9; }

/* Ad placeholder */
.ad-slot { text-align:center; margin:10px 0; overflow:hidden; }
