.stack-library-intro{max-width:680px;margin-top:1.5rem;color:#aaa;line-height:1.7}
.stack-entry{transition:background-color .3s,border-color .3s}
.stack-entry:hover,.stack-entry:focus-within{background:#ffffff025;border-color:#a86d4755}
.stack-entry__trigger{appearance:none;width:100%;padding:0;border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}
.stack-entry__trigger>p:not(.eyebrow){max-width:420px;color:#aaa;line-height:1.7}
.stack-entry__trigger h3{transition:color .25s,transform .25s}
.stack-entry__trigger:hover h3,.stack-entry__trigger:focus-visible h3{color:#f0d8c5;transform:translateX(4px)}
.stack-entry__cue{display:inline-block;margin-top:1.25rem;padding-bottom:.35rem;border-bottom:1px solid #a86d47;color:#c58a60;font-size:.62rem;font-weight:600;letter-spacing:.13em;text-transform:uppercase}
.stack-entry__cue--mobile{display:none}
.protocol-card-line{margin:.8rem 0 0!important;color:#c8c0b9!important;font-size:.86rem;line-height:1.55!important}
.protocol-card-line strong{display:block;margin-bottom:.28rem;color:#c58a60;font-size:.62rem;letter-spacing:.14em;text-transform:uppercase}
.stack-entry__body{min-width:0;animation:stack-open .35s cubic-bezier(.2,.7,.2,1)}
.stack-entry__body[hidden]{display:none}
@keyframes stack-open{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.stack-tiers{border-top:1px solid #ffffff22}
.protocol-overview{padding:0 0 2rem}
.protocol-overview h4{max-width:760px;margin:.35rem 0 .8rem;font:400 clamp(1.5rem,2.5vw,2.15rem)/1.25 "Italiana",serif}
.protocol-overview>p:last-child{max-width:680px;color:#aaa;line-height:1.7}
.stack-tier{padding:2rem 0;border-bottom:1px solid #ffffff22}
.stack-tier__heading{margin-bottom:1.4rem}
.stack-tier__heading h4{margin:.2rem 0;font:400 clamp(1.6rem,3vw,2.4rem)/1.1 "Italiana",serif}
.stack-tier__heading>p:last-child{max-width:620px;color:#999;line-height:1.65}
.stack-ingredient{height:auto;min-height:190px;cursor:default;transition:transform .3s}
.stack-ingredient .flip-card__inner{height:100%;min-height:inherit;transform:none!important}
.stack-ingredient .flip-card__front{position:relative;min-height:inherit;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:.7rem;padding:1.3rem 1.35rem;backface-visibility:visible;overflow:visible}
.stack-ingredient:hover{transform:translateY(-2px)}
.stack-ingredient:hover .flip-card__front{border-color:#a86d4788;box-shadow:0 14px 32px rgba(0,0,0,.3)}
.stack-ingredient .flip-card__front strong{display:block;color:#f1ece7;font-size:.9rem;font-weight:600;line-height:1.35;letter-spacing:.06em}
.ingredient-type{display:inline-block;width:max-content;padding:.3rem .5rem;border:1px solid #a86d4766;border-radius:999px;color:#c58a60;font-size:.52rem;line-height:1;letter-spacing:.13em;text-transform:uppercase}
.ingredient-note{display:block;margin-top:.2rem;color:#c8c0b9;font-size:.74rem;line-height:1.6;letter-spacing:0;text-align:left;text-transform:none}
.stack-research-notes{margin-top:2rem;padding:1.5rem;border-left:1px solid #a86d47;background:#ffffff05}
.stack-research-notes>p:last-child{margin-bottom:0;color:#aaa;line-height:1.7}
.stack-related-protocols{margin-top:1.25rem;padding:1.5rem;border-top:1px solid #ffffff18}
.stack-related-protocols>div{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1rem}
.stack-related-protocols span{padding:.55rem .75rem;border:1px solid #a86d4745;border-radius:999px;color:#c9b8ab;font-size:.72rem;line-height:1.35}
.stack-empty .eyebrow{margin-top:1.5rem;color:#c58a60}

@media(max-width:700px){
  .stack-library-intro{font-size:1rem;line-height:1.7}
  .stack-entry__trigger>p:not(.eyebrow){max-width:none}
  .stack-entry__trigger>p:not(.eyebrow){font-size:1rem;line-height:1.7}
  .stack-entry__cue,.protocol-card-line strong{font-size:.72rem;line-height:1.4}
  .protocol-card-line{font-size:.95rem!important;line-height:1.55!important}
  .stack-entry__cue--desktop{display:none}
  .stack-entry__cue--mobile{display:inline-block}
  .stack-tier{padding:1.6rem 0}
  .protocol-overview h4{font-size:1.55rem}
  .protocol-overview>p:last-child{font-size:1rem;line-height:1.7}
  .stack-tier__heading h4{font-size:1.75rem}
  .stack-tier__heading>p:last-child{font-size:1rem;line-height:1.7}
  .stack-ingredients{grid-template-columns:1fr!important}
  .stack-ingredient{min-height:0}
  .stack-ingredient .flip-card__front{min-height:168px;padding:1.25rem 1.3rem}
  .stack-ingredient .flip-card__front strong{font-size:1.05rem;line-height:1.4}
  .ingredient-type{font-size:.65rem;line-height:1.1}
  .ingredient-note{font-size:.92rem;line-height:1.65}
  .stack-research-notes{padding:1.2rem}
  .stack-research-notes>p:last-child{font-size:1rem;line-height:1.7}
  .stack-related-protocols{padding:1.2rem}
  .stack-related-protocols span{font-size:.82rem}
}

/* Larger research cards with clearer hierarchy */
.stack-ingredient{min-height:220px}
.stack-ingredient .flip-card__front{gap:.85rem;padding:1.55rem 1.6rem}
.stack-ingredient .flip-card__front strong{font-size:1.08rem;line-height:1.4}
.ingredient-type{padding:.38rem .6rem;font-size:.75rem;line-height:1.1}
.ingredient-note{font-size:.9rem;line-height:1.7}
.stack-research-notes{padding:1.75rem 1.9rem}
.stack-research-notes>p:last-child{font-size:1rem;line-height:1.75}
@media(max-width:700px){
  .stack-ingredient{min-height:196px}
  .stack-ingredient .flip-card__front{min-height:196px;gap:.85rem;padding:1.45rem 1.5rem}
  .stack-ingredient .flip-card__front strong{font-size:1.15rem}
  .ingredient-type{font-size:.75rem}
  .ingredient-note{font-size:1rem;line-height:1.7}
  .stack-research-notes{padding:1.45rem 1.5rem}
}
