/* books_store_style.css
   Books store page-specific layout and catalog styles.
   Important: this file must contain BOTH the original base styles and the moved inline styles.
*/

/* Page shell */
.book-shell {
  background:
    radial-gradient(circle at 12% 10%, rgba(198,161,91,.18), transparent 34%),
    radial-gradient(circle at 85% 0%, rgba(122,30,44,.18), transparent 35%),
    linear-gradient(135deg, #0B1F33 0%, #0E3B2E 54%, #071826 100%);
  border: 1px solid rgba(198, 161, 91, .24);
  box-shadow: 0 24px 70px rgba(11, 31, 51, .20);
}

.soft-pattern {
  background-image:
    linear-gradient(135deg, rgba(255,255,255,.06) 25%, transparent 25%),
    linear-gradient(225deg, rgba(255,255,255,.04) 25%, transparent 25%),
    linear-gradient(45deg, rgba(198,161,91,.06) 25%, transparent 25%),
    linear-gradient(315deg, rgba(198,161,91,.04) 25%, transparent 25%);
  background-position: 14px 0, 14px 0, 0 0, 0 0;
  background-size: 28px 28px;
  pointer-events: none;
}

/* Cards and panels */
.dark-card {
  background: linear-gradient(145deg, rgba(255,255,255,.08), rgba(255,255,255,.035));
  border: 1px solid rgba(198, 161, 91, .26);
  box-shadow: 0 18px 45px rgba(0,0,0,.22);
  backdrop-filter: blur(12px);
}

.glass-panel {
  background: rgba(255, 252, 245, .78);
  border: 1px solid rgba(198, 161, 91, .35);
  box-shadow: 0 20px 55px rgba(11,31,51,.11);
  backdrop-filter: blur(18px);
}

.book-card {
  transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease;
}

.book-card:hover {
  transform: translateY(-4px);
  border-color: rgba(198,161,91,.60);
  box-shadow: 0 24px 62px rgba(0,0,0,.26);
}

.book-cover {
  position: relative;
  overflow: hidden;
  background: rgba(11,31,51,.45);
  aspect-ratio: 2 / 3;
}

.book-cover img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  transition: transform .35s ease;
}

.book-card:hover .book-cover img {
  transform: scale(1.025);
}

/* Form controls */
.input-field,
.select-field {
  width: 100%;
  border-radius: 1rem;
  border: 1px solid rgba(198, 161, 91, .42);
  background: rgba(255, 252, 245, .94);
  color: #0B1F33;
  font-weight: 700;
  padding: .95rem 1rem;
  outline: none;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.75), 0 10px 22px rgba(11,31,51,.06);
}

.input-field:focus,
.select-field:focus {
  border-color: rgba(198, 161, 91, .9);
  box-shadow: 0 0 0 4px rgba(198, 161, 91, .18), 0 12px 25px rgba(11,31,51,.08);
}

.badge {
  border: 1px solid rgba(198, 161, 91, .42);
  background: linear-gradient(135deg, rgba(255,252,245,.95), rgba(248,223,159,.75));
  color: #0B1F33;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.75), 0 10px 22px rgba(11,31,51,.08);
}

/* Moved inline styles */
.store-title {
  letter-spacing: normal;
  max-width: 52rem;
}

@media (max-width: 767px) {
  .store-title {
    word-break: normal;
    overflow-wrap: anywhere;
  }
}

.store-lead-copy {
  max-width: 45rem;
  text-align: justify;
  text-justify: inter-word;
  hyphens: auto;
  -webkit-hyphens: auto;
  overflow-wrap: break-word;
}

.store-hero-cover-card {
  cursor: default;
  min-height: 100%;
}

.catalog-card {
  min-height: 100%;
  cursor: default;
}

.catalog-card:hover {
  transform: translateY(-4px);
  border-color: rgba(198, 161, 91, 0.66);
  box-shadow: 0 22px 55px rgba(0,0,0,.22);
}

.catalog-title-box {
  min-height: 88px;
  height: 88px;
  display: flex;
  align-items: center;
  padding: 0.9rem 1rem;
  border-radius: 1rem;
  border: 1px solid rgba(198, 161, 91, 0.34);
  background: linear-gradient(135deg, rgba(255,252,245,0.08), rgba(198,161,91,0.13));
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.08), 0 8px 18px rgba(0,0,0,0.12);
  overflow: hidden;
}

.catalog-title-box h3 {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin: 0;
  width: 100%;
}

.catalog-category-pill {
  min-height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  padding: 0.42rem 0.85rem;
  border: 1px solid rgba(198, 161, 91, 0.34);
  background: rgba(11,31,51,0.36);
  color: #C6A15B;
  font-weight: 900;
  font-size: 0.68rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.catalog-price-bar {
  min-height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  border-radius: 1rem;
  border: 1px solid rgba(198, 161, 91, 0.42);
  background: linear-gradient(135deg, rgba(255,252,245,0.12), rgba(198,161,91,0.18));
  color: #f8df9f;
  font-weight: 900;
  letter-spacing: 0.04em;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.08), 0 10px 20px rgba(0,0,0,0.12);
}

.catalog-subtitle {
  min-height: 50px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
