/* Petit Canard V6.67.1 — stabilisation fiches + responsive liste */

.pc-detail-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin: 0 0 16px;
  padding: 9px 0 12px;
  border-bottom: 1px solid var(--line);
}
.pc-detail-toolbar-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 7px;
  flex-wrap: wrap;
}
.pc-detail-toolbar .btn {
  min-height: 39px;
  padding: 7px 10px;
  font-size: 0.77rem;
}
.pc-detail-toolbar-back {
  font-weight: 850 !important;
}
.pc-public-detail-page .pc-detail-band-row {
  display: block !important;
}
.pc-public-detail-page .pc-detail-back,
.pc-public-detail-page .resource-back-row,
.pc-public-detail-page .personality-detail-backrow {
  display: none !important;
}

/* Webtoons : montrer le visuel complet plutôt que rogner les couvertures. */
#webtoon-grid .book-cover {
  background: #fff !important;
}
#webtoon-grid .book-cover img {
  object-fit: contain !important;
  object-position: center !important;
  background: #fff !important;
}
.pc-public-detail-webtoon .book-structural-cover .book-cover {
  background: #fff !important;
}
.pc-public-detail-webtoon .book-structural-cover .book-cover img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center !important;
  background: #fff !important;
}

/* Vue liste Livres : plus de largeur minimale qui provoque un débordement. */
#books.book-grid-list .book-body {
  grid-template-columns: minmax(0, 1.25fr) minmax(160px, 0.75fr) !important;
}
#books.book-grid-list .book-fixed-tags {
  min-width: 0 !important;
}
#books.book-grid-list .book-fixed-tags .tag {
  max-width: 100%;
  white-space: normal;
}

@media (max-width: 760px) {
  .pc-detail-toolbar {
    align-items: stretch;
    flex-direction: column;
  }
  .pc-detail-toolbar-back {
    width: 100% !important;
    justify-content: center !important;
  }
  .pc-detail-toolbar-actions {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .pc-detail-toolbar-actions .btn {
    width: 100% !important;
    justify-content: center !important;
  }

  #books.book-grid-list .book-card {
    grid-template-columns: 76px minmax(0, 1fr) !important;
    min-height: 112px !important;
  }
  #books.book-grid-list .book-cover {
    width: 76px !important;
    height: 112px !important;
    min-height: 112px !important;
  }
  #books.book-grid-list .book-body {
    display: block !important;
    padding: 10px 11px !important;
  }
  #books.book-grid-list .book-fixed-tags {
    justify-content: flex-start !important;
    margin-top: 8px !important;
    gap: 5px !important;
  }
}
@media (max-width: 460px) {
  .pc-detail-toolbar-actions {
    grid-template-columns: 1fr;
  }
  #books.book-grid-list .book-card {
    grid-template-columns: 68px minmax(0, 1fr) !important;
  }
  #books.book-grid-list .book-cover {
    width: 68px !important;
    height: 102px !important;
    min-height: 102px !important;
  }
  #books.book-grid-list .book-heading h3 {
    font-size: 0.9rem !important;
  }
  #books.book-grid-list .book-author-line,
  #books.book-grid-list .book-illustrator-line {
    font-size: 0.72rem !important;
  }
  #books.book-grid-list .book-fixed-tags .tag {
    font-size: 0.62rem !important;
    padding: 3px 6px !important;
  }
}

/* V6.67.2 — sélection, états vides, accessibilité. */
.selection-availability-warning {
  color: #9a3f51;
}
.selection-series-tag {
  border-color: #d8cff0 !important;
  background: #f6f2ff !important;
  color: #5c499a !important;
}
.btn-selection-copy {
  white-space: nowrap;
}
.pc-empty-actions {
  display: flex;
  justify-content: center;
  gap: 8px;
  flex-wrap: wrap;
  margin-top: 12px;
}
.pc-public-directory-page :focus-visible,
.pc-public-detail-page :focus-visible,
.selection-panel :focus-visible {
  outline: 3px solid rgba(101, 79, 181, 0.42) !important;
  outline-offset: 2px !important;
}
@media (max-width: 760px) {
  .selection-panel-actions {
    width: 100%;
    display: grid !important;
    grid-template-columns: 1fr 1fr;
  }
  .selection-panel-actions .btn {
    width: 100% !important;
    justify-content: center !important;
  }
  .selection-panel-footer {
    align-items: stretch !important;
    flex-direction: column !important;
  }
  .selection-panel-footer > .btn {
    width: 100% !important;
  }
  .pc-public-directory-page button,
  .pc-public-directory-page .btn,
  .pc-public-detail-page button,
  .pc-public-detail-page .btn {
    min-height: 44px;
  }
}
@media (max-width: 480px) {
  .selection-panel-actions {
    grid-template-columns: 1fr;
  }
}
@media (prefers-reduced-motion: reduce) {
  .pc-public-directory-page *,
  .pc-public-detail-page * {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }
}

/* V6.69.2 — Webtoons : respiration sans toucher au cadrage de l’image */
#webtoon-grid .webtoon-card > .book-cover {
  margin-top: 10px !important;
}
.pc-public-detail-webtoon .book-structural-cover .book-cover {
  margin-top: 10px !important;
}

/* V6.69.4 — fiches Médiathèque : barre d’actions et retours unifiés */
.pc-public-detail-ressource main > section > .container {
  width: min(var(--pc-page-max, 1440px), calc(100% - (var(--pc-page-gutter, 22px) * 2))) !important;
  max-width: var(--pc-page-max, 1440px) !important;
}
.pc-detail-toolbar-media {
  margin: 0 0 18px !important;
  padding: 11px 13px !important;
  border: 1px solid #e2dce9 !important;
  border-radius: 14px !important;
  background: #fff !important;
  box-shadow: 0 6px 18px rgba(44, 34, 65, 0.045);
}
.pc-detail-toolbar-media .pc-detail-toolbar-back {
  flex: 0 1 auto;
  min-width: 0;
}
.pc-detail-toolbar-media .pc-detail-toolbar-actions {
  flex: 0 0 auto;
}
.pc-public-detail-ressource .pc-detail-local-nav {
  margin-top: 0 !important;
}
@media (max-width: 760px) {
  .pc-detail-toolbar-media {
    padding: 10px !important;
  }
  .pc-detail-toolbar-media .pc-detail-toolbar-actions {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 480px) {
  .pc-detail-toolbar-media .pc-detail-toolbar-actions {
    grid-template-columns: 1fr !important;
  }
}

/* V6.69.10 — tags de la vue Liste Livres centrés verticalement */
#books.book-grid-list .book-fixed-tags .tag {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 28px !important;
  box-sizing: border-box !important;
  line-height: 1.15 !important;
  text-align: center !important;
}
