/* HPT V3.5 public UX — additive. Do not edit style.css. */

.hpt-skip-link{
  position:absolute;left:-9999px;top:0;background:#0d3b66;color:#fff;
  padding:.5rem .8rem;z-index:1000
}
.hpt-skip-link:focus{left:.5rem;top:.5rem}

.hpt-topbar-inner{
  display:flex;align-items:center;gap:.5rem;flex-wrap:nowrap;
}
.hpt-brand{
  flex:1 1 auto;min-width:0;font-weight:700;color:#fff;text-decoration:none;
  font-size:.95rem;line-height:1.2;white-space:nowrap;overflow:hidden
}
.hpt-brand span{color:#60a5fa}
.hpt-brand-full{display:none}
.hpt-brand-short{display:inline}
@media(min-width:720px){
  .hpt-brand-short{display:none}
  .hpt-brand-full{display:inline}
  .hpt-brand{overflow:visible}
}

.hpt-top-actions{margin-left:0;display:flex;gap:.4rem;flex-shrink:0}
.hpt-icon-btn,.hpt-menu-toggle{
  min-width:44px;min-height:44px;width:44px;height:44px
}

@media(max-width:760px){
  .hpt-topbar-inner{flex-wrap:wrap}
  .hpt-mode-switch{order:5;width:100%;display:flex}
  .hpt-mode-switch a{flex:1;text-align:center;min-height:40px;display:inline-flex;align-items:center;justify-content:center}
  .hpt-nav-secondary.is-open{
    display:flex;flex-direction:column;padding:.75rem 1rem 1rem;gap:.15rem
  }
  .hpt-nav-secondary.is-open a{
    padding:.7rem .4rem;min-height:44px;border-bottom:1px solid rgba(255,255,255,.08)
  }
}

/* Cards: readable titles, no orphan overflow */
.hpt-c h3,.hpt-deck-card h3{
  display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden
}
.hpt-c-img img,.hpt-c-paper img{
  object-fit:cover;object-position:top center
}
/* Edition page-by-page reader stays contain — lock */
.hpt-page-row img,.hpt-flip-page img{object-fit:contain!important}

.hpt-footer nav a{display:block;padding:.35rem 0;min-height:36px}
.hpt-footer-inner{display:grid;gap:1.25rem}
@media(min-width:720px){
  .hpt-footer-inner{grid-template-columns:1.4fr 1fr 1fr}
}

img{max-width:100%;height:auto}
:focus-visible{outline:2px solid #2563eb;outline-offset:2px}
