
/* ==========================================================================
   library.css — Library section styles (Atelier-compatible)
   ========================================================================== */

.lib-intro{
  font-size:1.06rem;
  line-height:1.74;
  color:var(--at-ink-2, #3a2a18);
  max-width:74ch;
  margin:0 0 1.6rem;
}

.lib-grid{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(280px, 1fr));
  gap:1.1rem;
}
.lib-card{ margin:0; }
.lib-card > a{
  display:block;
  padding:1.25rem 1.35rem 1.35rem;
  background:linear-gradient(180deg,
              var(--at-panel, #f8edd4) 0%,
              var(--at-panel-2, #ecdcb8) 100%);
  border:1px solid rgba(74,14,24,.22);
  border-left:3px solid var(--at-gold-2, #d4af37);
  text-decoration:none;
  color:inherit;
  position:relative;
  transition:border-color .16s ease, transform .14s ease,
             box-shadow .18s ease;
  box-shadow:
    inset 0 0 0 1px rgba(255,240,200,.4),
    0 8px 22px rgba(58,34,10,.10);
}
.lib-card > a:hover{
  border-left-color:var(--at-burgundy, #4a0e18);
  transform:translateY(-2px);
  box-shadow:
    inset 0 0 0 1px rgba(255,240,200,.55),
    0 14px 32px rgba(58,34,10,.18);
}
.lib-num{
  display:inline-block;
  font-family:var(--at-caps, "Copperplate", Georgia, serif);
  font-size:.62rem;
  font-weight:800;
  letter-spacing:.24em;
  color:var(--at-gold, #a8822a);
  text-transform:uppercase;
  margin:0 0 .35rem;
}
.lib-title{
  display:block;
  font-family:var(--at-display, "Didot", Georgia, serif);
  font-size:1.16rem;
  font-weight:400;
  color:var(--at-burgundy, #4a0e18);
  letter-spacing:.012em;
  margin:0 0 .2rem;
  line-height:1.28;
}
.lib-sub{
  display:block;
  font-style:italic;
  color:var(--at-ink-3, #6a5538);
  font-size:.9rem;
  margin:0 0 .65rem;
}
.lib-desc{
  display:block;
  font-size:.94rem;
  line-height:1.6;
  color:var(--at-ink-2, #3a2a18);
}

.lib-list{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(240px, 1fr));
  gap:.45rem .9rem;
}
.lib-list li{ margin:0; }
.lib-list a{
  display:flex;
  align-items:center;
  gap:.55rem;
  padding:.55rem .9rem;
  background:rgba(255,251,240,.6);
  border:1px solid rgba(74,14,24,.18);
  border-left:3px solid var(--at-gold-2, #d4af37);
  text-decoration:none;
  color:var(--at-ink-2, #3a2a18);
  font-family:var(--at-serif, Georgia, serif);
  font-size:.95rem;
  line-height:1.4;
  transition:border-color .14s ease, background .14s ease,
             transform .12s ease, color .14s ease;
}
.lib-list a::before{
  content:"❧";
  color:var(--at-gold, #a8822a);
  flex-shrink:0;
}
.lib-list a:hover{
  background:rgba(255,251,240,.95);
  border-left-color:var(--at-burgundy, #4a0e18);
  color:var(--at-burgundy, #4a0e18);
  transform:translateX(3px);
}
.lib-list li.empty{
  color:var(--at-ink-3, #6a5538);
  font-style:italic;
  padding:.55rem .9rem;
}

.library-breadcrumb{
  max-width:1100px;
  margin:1.2rem auto 0;
  padding:0 1.25rem;
  font-family:var(--at-caps, "Copperplate", Georgia, serif);
  font-size:.68rem;
  letter-spacing:.2em;
  text-transform:uppercase;
  color:var(--at-ink-3, #6a5538);
}
.library-breadcrumb a{
  color:var(--at-burgundy, #4a0e18);
  text-decoration:none;
  border-bottom:1px dotted rgba(74,14,24,.4);
}
.library-breadcrumb a:hover{
  color:var(--at-burgundy-2, #6d1828);
  border-bottom-color:var(--at-gold-2, #d4af37);
}
.library-breadcrumb span[aria-current]{
  color:var(--at-gold, #a8822a);
}


/* ============================================================
   Compact library header
   Replaces the full site-header on library pages below the top.
   Provides: brand, breadcrumb, back-home button.
   ============================================================ */

.library-header{
  background:linear-gradient(180deg,#1a1408 0%,#0e0a04 100%);
  border-bottom:2px solid #d4af37;
  box-shadow:
    0 2px 0 #0e0a04,
    0 4px 0 rgba(212,175,55,.28),
    0 10px 26px rgba(0,0,0,.45);
  position:sticky;
  top:0;
  z-index:60;
  font-family:var(--at-serif, Georgia, serif);
}
.library-header__inner{
  max-width:1440px;
  margin:0 auto;
  padding:.55rem 1.25rem;
  display:flex;
  align-items:center;
  gap:1rem;
  min-height:52px;
  flex-wrap:wrap;
}
.library-header__brand{
  display:inline-flex;
  align-items:center;
  gap:.55rem;
  text-decoration:none;
  color:#d4af37;
  font-family:var(--at-caps, "Copperplate", Georgia, serif);
  font-size:.68rem;
  letter-spacing:.2em;
  text-transform:uppercase;
  font-weight:700;
  flex-shrink:0;
  padding-right:.85rem;
  border-right:1px solid rgba(212,175,55,.28);
}
.library-header__brand img{
  width:26px; height:26px; flex-shrink:0;
  filter:drop-shadow(0 0 6px rgba(212,175,55,.4));
}
.library-header__brand:hover{ color:#f5e0a0; }

.library-header__crumbs{
  display:flex;
  align-items:center;
  gap:.4rem;
  flex:1 1 auto;
  font-family:var(--at-caps, "Copperplate", Georgia, serif);
  font-size:.62rem;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:#b8a67e;
  min-width:0;
  flex-wrap:wrap;
}
.library-header__crumbs a{
  color:#d8c8a2;
  text-decoration:none;
  padding:.25rem 0;
  border-bottom:1px dotted transparent;
  transition:color .15s ease, border-color .15s ease;
}
.library-header__crumbs a:hover{
  color:#f5e0a0;
  border-bottom-color:rgba(212,175,55,.5);
}
.library-header__crumbs [aria-current]{
  color:#d4af37;
  font-weight:700;
}
.library-header__crumbs .sep{
  color:#7a6444;
  font-weight:400;
}

.library-header__actions{
  display:flex;
  gap:.4rem;
  flex-shrink:0;
}
.library-header__home,
.library-header__lib{
  display:inline-flex;
  align-items:center;
  gap:.4rem;
  padding:.42rem .85rem;
  font-family:var(--at-caps, "Copperplate", Georgia, serif);
  font-size:.6rem;
  font-weight:700;
  letter-spacing:.18em;
  text-transform:uppercase;
  text-decoration:none;
  border-radius:3px;
  transition:background .15s ease, border-color .15s ease,
             color .15s ease;
  white-space:nowrap;
}
.library-header__home{
  background:linear-gradient(180deg,#d4af37 0%,#a8822a 100%);
  color:#17130f;
  border:1px solid #8a6a28;
  box-shadow:inset 0 1px 0 rgba(255,220,160,.4),
             0 1px 2px rgba(0,0,0,.3);
}
.library-header__home:hover{
  background:linear-gradient(180deg,#e8c96a 0%,#a8822a 100%);
  color:#100c08;
}
.library-header__lib{
  background:transparent;
  color:#d4af37;
  border:1px solid rgba(212,175,55,.5);
}
.library-header__lib:hover{
  background:rgba(212,175,55,.14);
  color:#f5e0a0;
  border-color:#d4af37;
}

@media (max-width: 720px){
  .library-header__inner{ padding:.5rem .75rem; gap:.5rem; }
  .library-header__brand span{ display:none; }
  .library-header__brand{ padding-right:.55rem; }
  .library-header__crumbs{ font-size:.58rem; letter-spacing:.12em; gap:.3rem; }
  .library-header__home,
  .library-header__lib{
    padding:.38rem .65rem;
    font-size:.56rem;
    letter-spacing:.14em;
  }
}
