@charset "UTF-8";
/* === ベース === */
.action-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 4px 9px;
  border: 2px solid transparent;
  border-radius: 6px;
  color: white;
  font-size: 14px;
  font-weight: bold;
  cursor: pointer;
  box-shadow: 0 2px 4px rgba(0,0,0,0.3);
  transition: all 0.3s ease;
  background-repeat: no-repeat;
  background-size: 18px auto, cover; /* デフォルト */
  background-position: 8px center, center;
  text-decoration: none;
  margin: 2px 0px;
  font-family: Arai;
}
/* === ホバー共通 === */
.action-button:hover {
  box-shadow: inset 2px 2px 6px rgba(0,0,0,0.2);
}
/* === 読む === */
.action-button.book-icon {
  padding-left: 30px;
  background-image: url("../img/book-icon-white.svg"), linear-gradient(to bottom, #2761A1, #003894);
  background-size: 20px auto, cover;
  background-position: 7px center, center;
  border-color: #003894;
}
.action-button.book-icon:hover {
  color: #003894;
  background-image: url("../img/book-icon-blue.svg");
  background-color: white;
  background-repeat: no-repeat;
  background-size: 20px auto, cover;
  background-position: 7px center, center;
}
/* === 再生 === */
.action-button.play-icon {
  padding-left: 30px;
  background-image: url("../img/play-icon-white.svg"), linear-gradient(to bottom, #DD518D, #9E2E86);
  background-size: 18px auto, cover; /* 再生マークは標準サイズでOK */
  background-position: 8px center, center;
  border-color: #9E2E86;
}
.action-button.play-icon:hover {
  color: #9E2E86;
  background-image: url("../img/play-icon-purple.svg");
  background-color: white;
  background-repeat: no-repeat;
  background-size: 18px auto, cover;
  background-position: 8px center, center;
}
/* === リクエスト === */
.action-button.request {
  padding-left: 30px;
  background-image: url("../img/PP-icon-white.svg"), linear-gradient(to bottom, #6CC9F3, #006FBC);
  background-size: 20px auto, cover;
  background-position: 7px center, center;
  border-color: #006FBC;
}
.action-button.request:hover {
  color: #006FBC;
  background-image: url("../img/PP-icon-sky.svg");
  background-color: white;
  background-repeat: no-repeat;
  background-size: 20px auto, cover;
  background-position: 7px center, center;
}
/* === EPUB === */
.action-button.epub-icon {
  padding-left: 30px;
  background-image: url("../img/epub-icon-white.svg"), linear-gradient(to bottom, #2AAC8A, #23814E);
  background-size: 19px auto, cover;
  background-position: 7px center, center;
  border-color: #23814E;
}
.action-button.epub-icon:hover {
  color: #23814E;
  background-image: url("../img/epub-icon-green.svg");
  background-color: white;
  background-repeat: no-repeat;
  background-size: 19px auto, cover;
  background-position: 7px center, center;
}
/* === 試し読み === */
.action-button.preview {
  padding-left: 30px;
  background-image: url("../img/book-icon-white.svg"), linear-gradient(to bottom, #FFC000, #E97132);
  background-size: 20px auto, cover;
  background-position: 7px center, center;
  border-color: #E97132;
}
.action-button.preview:hover {
  color: #E97132;
  background-image: url("../img/book-icon-orange.svg");
  background-color: white;
  background-repeat: no-repeat;
  background-size: 20px auto, cover;
  background-position: 7px center, center;
}
/* === 詳細画面共有ボタン === */
.share-btn-group {
  display: flex;
  gap: 4px;
}
.share-btn {
  height: 30px;
  line-height: 30px;
  border: none;
  cursor: pointer;
  background-color: #568FCE;
  color: white;
  font-size: 16px;
  transition: background-color 0.3s ease, box-shadow 0.3s ease;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.15);
  text-decoration: none;
  font-family: Arai;
}
.url-copy-btn {
  border-top-left-radius: 50px;
  border-bottom-left-radius: 50px;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  padding-left: 36px;
  padding-right: 20px;
}
.export-btn {
  border-top-right-radius: 50px;
  border-bottom-right-radius: 50px;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  padding-left: 20px;
  padding-right: 40px;
}
.share-btn:hover {
  background-color: #7FA7DD;
  box-shadow: none;
  color: white;
}
@media screen and (max-width: 980px) {
  .url-copy-btn {
    width: 68px;
    padding-left: 8px;
    padding-right: 4px;
    font-size: 11px;
    text-align: center;
  }
  .export-btn {
    width: 62px;
    padding-left: 4px;
    padding-right: 8px;
    font-size: 11px;
    text-align: center;
  }
}
/* === ビューアー共有ボタン === */
.viewer-share-btn-group {
  display: flex;
  gap: 3px;
  float:left;
  margin-left: -10px;
}
.viewer-share-btn {
  height: 30px;
  line-height: 30px;
  border: none;
  cursor: pointer;
  background-color: #F4F4F4;
  color: #504D4B;
  font-size: 14px;
  transition: background-color 0.2s ease, color 0.2s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 15px;
  position: relative;
  text-decoration: none;
  font-family: Arai;
}
.viewer-share-btn-left {
  border-top-left-radius: 50px;
  border-bottom-left-radius: 50px;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  padding-left: 19px;
  padding-right: 15px;
}
.viewer-share-btn-middle {
  border-radius: 0;
}
.viewer-share-btn-right {
  border-top-right-radius: 50px;
  border-bottom-right-radius: 50px;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  padding-left: 15px;
  padding-right: 19px;
}
.viewer-share-btn .icon img {
  width: 16px;
  height: 16px;
  margin-right: 6px;
  vertical-align: middle;
}
.viewer-share-btn:hover {
  background-color: #C7C7C7;
  color: #2E2E2E;
}

