:root{
  --nc-primary:#0d6efd;
  --nc-radius:.4rem;           /* subtle corners */
}
[data-bs-theme="dark"] .bg-tint { background: rgba(255,255,255,.02); }
[data-bs-theme="light"] .bg-tint { background: rgba(0,0,0,.02); }

.logo{height:28px;width:auto}
.rounded-2xl{border-radius:var(--nc-radius)}
.shadow-soft{box-shadow:0 8px 24px rgba(0,0,0,.06)}
.hero{background:linear-gradient(180deg,rgba(13,110,253,.06),transparent 55%)}
.badge-soft{background:rgba(13,110,253,.1);border:1px solid rgba(13,110,253,.25)}
.feature-icon{width:40px;height:40px;border-radius:.35rem;background:rgba(13,110,253,.12);color:var(--nc-primary);display:flex;align-items:center;justify-content:center}
.card-hover:hover{transform:translateY(-2px);transition:transform .15s ease}
.list-checked li{position:relative;padding-left:1.4rem}
.list-checked li::before{content:"\f00c";font-family:"Font Awesome 6 Free";font-weight:900;position:absolute;left:0;top:.1rem;color:var(--nc-primary)}

/* Book page: framed cover with overlaid stamp */
.cover-frame{position:relative;padding:1rem}
.cover-frame .cover-img{display:block;width:86%;margin:0 auto;border-radius:.35rem;box-shadow:0 6px 18px rgba(0,0,0,.08)}
.cover-frame .stamp{
  position:absolute; right:6%; bottom:8%; width:44%; max-width:260px;
  transform:rotate(-8deg); opacity:.92; mix-blend-mode:multiply;
  pointer-events:none; z-index:2; display:block;
}
@media (max-width: 400.98px){
  .cover-frame .cover-img{width:92%}
  .cover-frame .stamp{width:48%; right:5%; bottom:6%}
}
