:root{
  --brand:#f7c948;  /* warm yellow like your UI */
  --brand2:#ffe08a;
  --ink:#111827;
  --muted:#6b7280;
  --bg:#f6f7fb;
}

.app-bg{ background: var(--bg); color: var(--ink); }

.topbar{
  background: linear-gradient(135deg,var(--brand),var(--brand2));
  border-bottom: 1px solid rgba(0,0,0,.05);
}

.soft-card{
  background:#fff;
  border:1px solid rgba(17,24,39,.10);
  border-radius:18px;
  box-shadow:0 10px 25px rgba(17,24,39,.05);
}

.brand-btn{
  background: linear-gradient(135deg,var(--brand),var(--brand2));
  border:0;
  color:#111827;
  font-weight:700;
}

.form-soft{
  background:#ffffff;                 /* ✅ pure white */
  border: 1px solid rgba(17,24,39,.12);
  border-radius: 14px;
  padding: 12px 14px;
}

.form-soft:focus{
  border-color: rgba(17,24,39,.25);
  box-shadow: 0 0 0 .2rem rgba(247,201,72,.25);  /* brand glow */
  outline: 0;
}

.book-card{
  border-radius:16px;
  border:1px solid rgba(17,24,39,.10);
  background:#fff;
  transition: transform .12s ease, box-shadow .12s ease;
}
.book-card:hover{ transform:translateY(-2px); box-shadow:0 14px 30px rgba(17,24,39,.08); }

.page-pad{ padding-bottom: 82px; }

.bottom-nav{
  position: fixed; left:0; right:0; bottom:0;
  background:#fff; border-top:1px solid rgba(17,24,39,.10);
  padding: 10px 14px; z-index:1050;
}
.bottom-nav a{
  text-decoration:none;
  color: var(--muted);
  font-weight:700;
  font-size:12px;
}
.bottom-nav a.active{ color: var(--ink); }
.bottom-nav .icon{ font-size:18px; display:block; margin-bottom:2px; }

.auth-bg{
  min-height:100vh;
  background: linear-gradient(0deg, rgba(0,0,0,.45), rgba(0,0,0,.15)),
              url('/assets/img/bg-library.jpg') center/cover no-repeat;
}
.auth-card{
  backdrop-filter: blur(10px);
  background: rgba(255,255,255,.92);
  border-radius: 20px;
  border: 1px solid rgba(255,255,255,.5);
}
