:root{--green:#0F5A43;--moss:#8A9A47;--off:#F6F1E7;--sand:#D8CEBE;--text:#1d1d1b}
*{box-sizing:border-box}body{margin:0;font-family:Arial,sans-serif;background:var(--off);color:var(--text)}
.wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}
.card{width:100%;max-width:420px;background:#fff;border-radius:22px;padding:26px;box-shadow:0 10px 35px #0001}
.logo{font-size:30px;font-weight:800;color:var(--green);margin:0 0 6px}
.sub{margin:0 0 22px;color:#666}
.input{width:100%;height:46px;border:1px solid #ddd;border-radius:14px;padding:0 14px;margin:7px 0;font-size:15px}
.btn{width:100%;height:46px;border:0;border-radius:14px;background:var(--green);color:#fff;font-weight:700;font-size:15px;margin-top:12px;cursor:pointer}
.btn.alt{background:var(--moss)}
.link{color:var(--green);font-weight:700;cursor:pointer;text-align:center;margin-top:16px}
.msg{font-size:14px;margin-top:8px}.ok{color:green}.err{color:#b00020}
.bar{height:10px;background:#eee;border-radius:20px;overflow:hidden;margin:8px 0 6px}.bar span{display:block;height:100%;width:20%;background:var(--moss);transition:.2s}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}
.chip{border:1px solid #ddd;background:#fff;border-radius:999px;padding:10px 13px;cursor:pointer}
.chip.sel{background:var(--green);color:#fff;border-color:var(--green)}
.suggest{padding:10px;border:1px solid #eee;border-radius:12px;margin:6px 0;background:#fff;cursor:pointer}
.top{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}
.page{min-height:100vh;padding:18px;background:var(--off)}
.box{background:#fff;border-radius:18px;padding:14px;margin-bottom:14px;box-shadow:0 6px 20px #0000000d}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.stat{text-align:center;background:var(--off);border-radius:14px;padding:10px;font-size:12px}.stat b{display:block;font-size:18px;color:var(--green)}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.book{font-size:12px}.cover{aspect-ratio:2/3;border-radius:12px;background:linear-gradient(135deg,var(--green),var(--moss));margin-bottom:6px}
.modal{position:fixed;inset:0;background:#0008;display:flex;align-items:flex-end;justify-content:center;padding:12px}
.modal .card{max-width:520px}
.smallbtn{border:0;background:var(--green);color:#fff;border-radius:999px;padding:10px 14px;font-weight:700}
.fab{position:fixed;right:18px;bottom:76px;width:58px;height:58px;border-radius:50%;border:0;background:var(--green);color:#fff;font-size:30px;box-shadow:0 10px 25px #0003;z-index:5}
.nav{position:fixed;left:0;right:0;bottom:0;background:#fff;border-top:1px solid #eee;display:grid;grid-template-columns:repeat(5,1fr);padding:8px 4px;z-index:4}
.nav button{border:0;background:transparent;font-size:11px;color:#333}.nav b{display:block;font-size:19px;margin-bottom:2px}
.page{padding-bottom:86px}.cover img{width:100%;height:100%;object-fit:cover;border-radius:12px}.book b{font-size:12px}.book span{color:#666;font-size:11px}.modal{z-index:10}.suggest small{display:block;color:#666}
.fab{position:fixed;right:18px;bottom:76px;width:58px;height:58px;border-radius:50%;border:0;background:var(--green);color:#fff;font-size:30px;box-shadow:0 10px 25px #0003;z-index:5}
.nav{position:fixed;left:0;right:0;bottom:0;background:#fff;border-top:1px solid #eee;display:grid;grid-template-columns:repeat(5,1fr);padding:8px 4px;z-index:4}
.nav button{border:0;background:transparent;font-size:11px;color:#333}.nav b{display:block;font-size:19px;margin-bottom:2px}
.page{padding-bottom:86px}.cover img{width:100%;height:100%;object-fit:cover;border-radius:12px}.book b{font-size:12px}.book span{color:#666;font-size:11px}.modal{z-index:10}.suggest small{display:block;color:#666}
.profileHead{text-align:center}.avatar{width:88px;height:88px;border-radius:50%;background:var(--green);color:#fff;display:flex;align-items:center;justify-content:center;font-size:36px;margin:0 auto 10px;overflow:hidden}.avatar img{width:100%;height:100%;object-fit:cover}.stars{font-size:20px;color:#b88a00;margin:6px 0}.pstats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px}.pstat{text-align:center;background:var(--off);border-radius:14px;padding:10px;font-size:12px}.pstat b{display:block;color:var(--green);font-size:18px}.pill{display:inline-block;background:var(--off);border-radius:999px;padding:8px 12px;margin:4px;font-size:12px}
.userCard{display:flex;align-items:center;gap:12px;padding:12px;border-bottom:1px solid #eee}
.userCard:last-child{border-bottom:0}
.miniAvatar{width:48px;height:48px;border-radius:50%;background:var(--green);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;overflow:hidden}
.miniAvatar img{width:100%;height:100%;object-fit:cover}
.userCard .info{flex:1}.userCard .info b{display:block}.userCard .info span{font-size:12px;color:#666}
.userCard .actions{display:flex;gap:6px}
.miniBtn{border:0;border-radius:999px;background:var(--green);color:#fff;padding:8px 10px;font-size:12px;font-weight:700}
.miniBtn.alt{background:var(--moss)}
.bookHero{position:relative;border-radius:26px;padding:22px 16px 18px;text-align:center;overflow:hidden;background:linear-gradient(160deg,#d8cebe,#f6f1e7);margin-bottom:14px}
.bookHero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at center,#ffffff55,transparent 55%);backdrop-filter:blur(8px)}
.bookHero>*{position:relative;z-index:1}
.bigCover{width:150px;height:225px;margin:0 auto 16px;border-radius:16px;background:#eee;display:flex;align-items:center;justify-content:center;box-shadow:0 22px 45px #0005;overflow:hidden}
.bigCover img{width:100%;height:100%;object-fit:contain}
.tags{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin:12px 0}.tag{background:#fff8;border-radius:999px;padding:8px 12px;font-size:12px}
.ownerRow{display:flex;align-items:center;gap:10px;padding:10px;border-bottom:1px solid #eee}.ownerRow:last-child{border-bottom:0}.ownerRow .info{flex:1}
.bookHero{margin:-18px -18px 18px!important;border-radius:0!important;padding:34px 18px 58px!important;background:linear-gradient(180deg,#d8cebe 0%,#eee5d8 58%,var(--off) 92%)!important}
.bookHero:before{display:none!important}
.bigCover{width:138px!important;height:207px!important;margin-bottom:12px!important;box-shadow:0 24px 45px #0004!important}
.bookHero .logo{font-size:24px!important;line-height:1.15!important;margin:8px auto 4px!important;max-width:92%}
.bookHero .sub{font-size:14px!important;margin:0 0 8px!important}
.page:has(.bookHero){padding-top:0!important}
.page:has(.bookHero)>.smallbtn{position:fixed;top:14px;left:14px;z-index:50;box-shadow:0 8px 20px #0002}
.bookHero{margin:-18px -18px 18px!important;padding-top:64px!important}
.tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:12px}
.tab{border:0;border-radius:999px;padding:10px;background:#fff;color:#333;font-weight:700}
.tab.active{background:var(--green);color:#fff}

.nav{
 grid-template-columns:repeat(5,1fr)!important;
}
.nav button{
 font-size:11px!important;
}
.nav button b{
 display:block;
 font-size:20px;
 margin-bottom:2px;
}

.coverInterest{
 position:relative;
}
.saveStar{
 position:absolute;
 top:7px;
 right:7px;
 width:30px;
 height:30px;
 border:0;
 border-radius:50%;
 background:#ffffffdd;
 color:#999;
 font-size:18px;
 display:flex;
 align-items:center;
 justify-content:center;
 box-shadow:0 6px 14px #0002;
 z-index:5;
}
.saveStar.active{
 color:#f9a825;
}

.premiumRing{
 border-color:#b7ff2a!important;
 box-shadow:0 0 0 4px #b7ff2a55,0 10px 25px #0002!important;
}

:root{
 --premium-lilac:#8F63FF;
 --premium-lilac-light:#C8A7FF;
}

.premiumBanner{
 background:linear-gradient(135deg,#8F63FF,#C8A7FF)!important;
 color:#fff!important;
}

.premiumHero{
 background:linear-gradient(135deg,#8F63FF,#C8A7FF)!important;
 color:#fff!important;
}

.priceCard b{
 color:#8F63FF!important;
}

.waitBtn.on{
 background:#8F63FF!important;
}

.premiumRing{
 border-color:inherit!important;
 box-shadow:0 10px 25px #0002!important;
}

.profileAvatar,
.pavatar,
.avatar,
.miniAvatar{
 position:relative;
}

.premiumDot{
 position:absolute;
 right:2px;
 bottom:2px;
 width:24px;
 height:24px;
 border-radius:50%;
 background:#8F63FF;
 color:#fff;
 border:2px solid #fff;
 display:flex;
 align-items:center;
 justify-content:center;
 font-size:13px;
 font-weight:900;
 line-height:1;
 box-shadow:0 5px 12px #0003;
 z-index:5;
}

.navAvatarSlot{
 width:23px;
 height:23px;
 border-radius:50%;
 background:#eee;
 margin:0 auto 2px;
 display:flex!important;
 align-items:center;
 justify-content:center;
 overflow:visible;
 position:relative;
 font-size:13px!important;
 line-height:1;
}

.navAvatarSlot img{
 width:100%;
 height:100%;
 object-fit:cover;
 border-radius:50%;
 display:block;
}

.navAvatarSlot .premiumDot{
 width:13px;
 height:13px;
 font-size:8px;
 right:-4px;
 bottom:-3px;
 border-width:1.5px;
}

:root{
 --premium-lilac:#8F63FF;
 --premium-lilac-light:#C8A7FF;
}

.premiumBanner{
 background:linear-gradient(135deg,#8F63FF,#C8A7FF)!important;
 color:#fff!important;
}

.premiumHero{
 background:linear-gradient(135deg,#8F63FF,#C8A7FF)!important;
 color:#fff!important;
}

.priceCard b{
 color:#8F63FF!important;
}

.waitBtn.on{
 background:#8F63FF!important;
}

.premiumRing{
 border-color:inherit!important;
 box-shadow:0 10px 25px #0002!important;
}

.profileAvatar,
.pavatar,
.avatar,
.miniAvatar{
 position:relative;
}

.premiumDot{
 position:absolute;
 right:2px;
 bottom:2px;
 width:24px;
 height:24px;
 border-radius:50%;
 background:#8F63FF;
 color:#fff;
 border:2px solid #fff;
 display:flex;
 align-items:center;
 justify-content:center;
 font-size:13px;
 font-weight:900;
 line-height:1;
 box-shadow:0 5px 12px #0003;
 z-index:5;
}

.navAvatarSlot{
 width:23px;
 height:23px;
 border-radius:50%;
 background:#eee;
 margin:0 auto 2px;
 display:flex!important;
 align-items:center;
 justify-content:center;
 overflow:visible;
 position:relative;
 font-size:13px!important;
 line-height:1;
}

.navAvatarSlot img{
 width:100%;
 height:100%;
 object-fit:cover;
 border-radius:50%;
 display:block;
}

.navAvatarSlot .premiumDot{
 width:13px;
 height:13px;
 font-size:8px;
 right:-4px;
 bottom:-3px;
 border-width:1.5px;
}

/* Premium: estrela deve ficar acima da borda do avatar, sem corte */
.profileAvatar,
.pavatar,
.avatar,
.miniAvatar,
.navAvatarSlot{
 overflow:visible!important;
}

.profileAvatar img,
.pavatar img,
.avatar img,
.miniAvatar img,
.navAvatarSlot img{
 border-radius:50%;
}

.profileAvatar .premiumDot,
.pavatar .premiumDot,
.avatar .premiumDot,
.miniAvatar .premiumDot{
 right:-5px!important;
 bottom:-4px!important;
 z-index:20!important;
}

.navAvatarSlot .premiumDot{
 right:-6px!important;
 bottom:-5px!important;
 z-index:20!important;
}

.exploreSection{
 margin:18px 0;
}
.exploreSectionHead{
 display:flex;
 align-items:center;
 justify-content:space-between;
 margin-bottom:10px;
}
.exploreSectionHead h3{
 margin:0;
 color:#1f2b24;
}
.exploreBooksGrid{
 display:grid;
 grid-template-columns:repeat(3,1fr);
 gap:12px;
}
.exploreBook{
 cursor:pointer;
}
.exploreBook .cover{
 position:relative;
 height:138px;
 border-radius:14px;
 background:#eee;
 overflow:visible!important;
 display:flex;
 align-items:center;
 justify-content:center;
}
.exploreBook .cover img{
 width:100%;
 height:100%;
 object-fit:contain;
 border-radius:14px;
}
.exploreBook b{
 display:block;
 font-size:13px;
 margin-top:8px;
 color:#1f2b24;
 line-height:1.2;
}
.exploreBook span{
 display:block;
 font-size:11px;
 color:#777;
 margin-top:3px;
}
.sponsoredTag{
 display:inline-block;
 background:#8F63FF;
 color:#fff;
 border-radius:999px;
 padding:4px 8px;
 font-size:10px;
 font-weight:800;
 margin-top:5px;
}

/* Explorar - layout inspirado na referência */
.exploreSection{
 margin:18px 0 22px;
}

.exploreSectionHead{
 display:flex;
 align-items:center;
 justify-content:space-between;
 margin-bottom:12px;
}

.exploreSectionHead h3{
 margin:0;
 color:#1f2b24;
 font-size:18px;
}

.exploreSectionHead button{
 border:0;
 background:none;
 color:var(--green);
 font-weight:800;
 font-size:13px;
}

.exploreRecommendedRow{
 display:flex;
 gap:14px;
 overflow-x:auto;
 padding:2px 2px 8px;
 scroll-snap-type:x mandatory;
 scrollbar-width:none;
 -ms-overflow-style:none;
}

.exploreRecommendedRow::-webkit-scrollbar{
 display:none;
}

.exploreRecommendedCard{
 min-width:116px;
 max-width:116px;
 cursor:pointer;
 scroll-snap-align:start;
}

.exploreRecommendedCard .cover{
 position:relative;
 height:166px;
 border-radius:16px;
 background:#eee;
 overflow:visible!important;
 display:flex;
 align-items:center;
 justify-content:center;
 box-shadow:0 8px 22px #00000014;
}

.exploreRecommendedCard .cover img{
 width:100%;
 height:100%;
 object-fit:contain;
 border-radius:16px;
}

.exploreRecommendedCard b{
 display:block;
 font-size:13px;
 margin-top:8px;
 color:#1f2b24;
 line-height:1.18;
}

.exploreRecommendedCard span{
 display:block;
 font-size:11px;
 color:#777;
 margin-top:3px;
 line-height:1.2;
}

.exploreRating{
 display:flex!important;
 align-items:center;
 gap:4px;
 color:#111!important;
 font-size:11px!important;
 margin-top:5px!important;
}

.exploreRating strong{
 color:#f9a825;
 font-size:13px;
}

.explorePopularList{
 display:grid;
 gap:12px;
}

.explorePopularItem{
 display:flex;
 gap:12px;
 align-items:center;
 cursor:pointer;
 padding-bottom:10px;
 border-bottom:1px solid #eee2;
}

.explorePopularItem:last-child{
 border-bottom:0;
}

.explorePopularCover{
 width:56px;
 height:82px;
 border-radius:10px;
 background:#eee;
 overflow:visible;
 display:flex;
 align-items:center;
 justify-content:center;
 flex:none;
 position:relative;
 box-shadow:0 6px 16px #00000012;
}

.explorePopularCover img{
 width:100%;
 height:100%;
 object-fit:contain;
 border-radius:10px;
}

.explorePopularInfo{
 flex:1;
 min-width:0;
}

.explorePopularInfo b{
 display:block;
 font-size:14px;
 color:#1f2b24;
 line-height:1.2;
 white-space:nowrap;
 overflow:hidden;
 text-overflow:ellipsis;
}

.explorePopularInfo span{
 display:block;
 font-size:12px;
 color:#777;
 margin-top:3px;
}

.exploreEmpty{
 border-radius:18px;
 background:#fff;
 padding:16px;
 box-shadow:0 8px 22px #0000000d;
}

.sponsoredTag{
 display:inline-block;
 background:#8F63FF;
 color:#fff;
 border-radius:999px;
 padding:4px 8px;
 font-size:10px;
 font-weight:800;
 margin-top:6px;
}

.exploreCardPanel{
 background:#fffaf2;
 border-radius:24px;
 padding:16px;
 box-shadow:0 10px 28px #0000000d;
 margin-bottom:82px;
}

.reviewModal{
 position:fixed;
 inset:0;
 background:#0009;
 z-index:9999;
 display:flex;
 align-items:center;
 justify-content:center;
 padding:18px;
 box-sizing:border-box;
}
.reviewCard{
 background:var(--off);
 border-radius:24px;
 width:min(440px,100%);
 max-height:92vh;
 overflow:auto;
 padding:18px;
 box-shadow:0 25px 70px #0006;
}
.reviewBookHead{
 display:flex;
 gap:12px;
 align-items:center;
 margin-bottom:14px;
}
.reviewBookCover{
 width:58px;
 height:86px;
 border-radius:10px;
 background:#eee;
 overflow:hidden;
 display:flex;
 align-items:center;
 justify-content:center;
 flex:none;
}
.reviewBookCover img{
 width:100%;
 height:100%;
 object-fit:contain;
}
.starRow{
 display:flex;
 gap:6px;
 margin:8px 0 12px;
}
.starBtn{
 border:0;
 background:none;
 font-size:32px;
 color:#d8cebe;
 padding:0;
 line-height:1;
}
.starBtn.active{
 color:#f9a825;
}
.reviewField{
 margin:14px 0;
}
.reviewField label{
 display:block;
 font-weight:800;
 margin-bottom:6px;
 color:#1f2b24;
}
.reviewField textarea{
 width:100%;
 box-sizing:border-box;
 min-height:92px;
 border:1px solid #ddd;
 border-radius:14px;
 padding:12px;
 resize:vertical;
 background:#fff;
}
.reviewActions{
 display:grid;
 grid-template-columns:1fr 1fr;
 gap:10px;
 margin-top:12px;
}

.editBookTextarea{
 width:100%;
 min-height:120px;
 padding:12px;
 border-radius:14px;
 border:1px solid #ddd;
 box-sizing:border-box;
 resize:vertical;
 background:#fff;
}
.editBookGrid{
 display:grid;
 gap:10px;
}
.editBookLabel{
 font-weight:800;
 color:#1f2b24;
 margin:8px 0 4px;
 display:block;
}

/* Página de Notificações */
.notificationsPage{
 padding-bottom:86px;
}

.notificationsTitle{
 text-align:center;
 font-size:22px;
 margin:4px 0 24px;
 color:#1f2b24;
 font-weight:900;
}

.notificationList{
 display:grid;
 gap:18px;
}

.notificationItem{
 display:grid;
 grid-template-columns:54px 1fr auto;
 gap:12px;
 align-items:center;
 cursor:pointer;
 padding:4px 0;
}

.notificationItem.unread .notificationMain{
 font-weight:800;
}

.notificationAvatar{
 width:50px;
 height:50px;
 border-radius:50%;
 background:#efe8da;
 display:flex;
 align-items:center;
 justify-content:center;
 overflow:hidden;
 color:var(--green);
 font-size:22px;
 flex:none;
 position:relative;
}

.notificationAvatar img{
 width:100%;
 height:100%;
 object-fit:cover;
 border-radius:50%;
}

.notificationMain{
 color:#1f2b24;
 font-size:15px;
 line-height:1.35;
}

.notificationMain b{
 font-weight:900;
}

.notificationMessage{
 color:#1f2b24;
}

.notificationTime{
 color:#999;
 font-size:14px;
 white-space:nowrap;
 align-self:start;
 padding-top:6px;
}

.notificationEmpty{
 text-align:center;
 padding:28px 12px;
 color:#777;
}

.bookOwnerActions{
 display:flex;
 gap:8px;
 justify-content:center;
 flex-wrap:wrap;
 margin-top:12px;
}

/* ===== PORÃO V2 - visual sombrio ===== */

.poraoPage{
 position:relative;
 min-height:100vh;
 overflow:hidden;
 background:
  radial-gradient(circle at 18% 12%, rgba(255,255,255,.05) 0 2px, transparent 3px),
  radial-gradient(circle at 80% 25%, rgba(255,255,255,.03) 0 2px, transparent 3px),
  radial-gradient(circle at 60% 84%, rgba(255,255,255,.025) 0 2px, transparent 3px),
  linear-gradient(180deg,#2f2f31 0%,#252527 24%,#1b1b1d 55%,#121214 100%);
 color:#efe7da;
 padding-bottom:96px;
}

.poraoPage:before,
.poraoPage:after{
 content:"";
 position:absolute;
 inset:auto;
 pointer-events:none;
 z-index:0;
 opacity:.28;
 background-repeat:no-repeat;
}

.poraoPage:before{
 top:0;
 left:0;
 width:180px;
 height:180px;
 background-image:
  linear-gradient(135deg,transparent 48%,rgba(220,220,220,.15) 49%,rgba(220,220,220,.15) 51%,transparent 52%),
  linear-gradient(160deg,transparent 48%,rgba(220,220,220,.10) 49%,rgba(220,220,220,.10) 51%,transparent 52%),
  linear-gradient(115deg,transparent 48%,rgba(220,220,220,.10) 49%,rgba(220,220,220,.10) 51%,transparent 52%),
  radial-gradient(circle at 0 0, rgba(255,255,255,.08) 0 1px, transparent 2px);
 background-size:100% 100%,100% 100%,100% 100%,24px 24px;
}

.poraoPage:after{
 top:0;
 right:0;
 width:220px;
 height:220px;
 background-image:
  linear-gradient(225deg,transparent 48%,rgba(220,220,220,.15) 49%,rgba(220,220,220,.15) 51%,transparent 52%),
  linear-gradient(200deg,transparent 48%,rgba(220,220,220,.10) 49%,rgba(220,220,220,.10) 51%,transparent 52%),
  linear-gradient(245deg,transparent 48%,rgba(220,220,220,.10) 49%,rgba(220,220,220,.10) 51%,transparent 52%),
  radial-gradient(circle at 100% 0, rgba(255,255,255,.08) 0 1px, transparent 2px);
 background-size:100% 100%,100% 100%,100% 100%,24px 24px;
}

.poraoPage > *{
 position:relative;
 z-index:1;
}

.poraoHero{
 margin:-18px -18px 18px;
 padding:32px 18px 26px;
 background:
  radial-gradient(circle at 50% 0%, rgba(255,255,255,.06), transparent 42%),
  linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.02));
 border-bottom:1px solid rgba(255,255,255,.06);
 box-shadow:inset 0 -20px 40px rgba(0,0,0,.18);
}

.poraoHeroTop{
 display:flex;
 align-items:center;
 justify-content:space-between;
 gap:12px;
}

.poraoTitleWrap{
 display:flex;
 flex-direction:column;
 gap:6px;
}

.poraoEyebrow{
 color:#bfa784;
 font-size:12px;
 text-transform:uppercase;
 letter-spacing:1.5px;
 font-weight:800;
 opacity:.95;
}

.poraoTitle{
 margin:0;
 font-size:30px;
 line-height:1;
 color:#f3ede2;
 text-shadow:0 2px 14px rgba(0,0,0,.35);
}

.poraoSubtitle{
 margin:10px 0 0;
 color:#d3cabc;
 font-size:14px;
 line-height:1.5;
 max-width:560px;
}

.poraoGlow{
 display:inline-flex;
 align-items:center;
 justify-content:center;
 width:56px;
 height:56px;
 border-radius:18px;
 background:linear-gradient(180deg,#66503a,#3f3429);
 box-shadow:
  0 0 0 1px rgba(255,255,255,.06),
  0 10px 25px rgba(0,0,0,.35),
  inset 0 0 18px rgba(255,210,140,.14);
 font-size:26px;
}

.poraoDust{
 margin:10px 0 18px;
 padding:16px 18px;
 border-radius:20px;
 background:
  linear-gradient(180deg,rgba(205,182,150,.10),rgba(255,255,255,.03));
 border:1px solid rgba(210,190,165,.12);
 box-shadow:0 10px 30px rgba(0,0,0,.18);
 color:#ddd1bf;
}

.poraoDust b{
 color:#efe4d4!important;
}

.poraoPage .box{
 background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.045));
 border:1px solid rgba(255,255,255,.06);
 box-shadow:
  0 16px 34px rgba(0,0,0,.22),
  inset 0 1px 0 rgba(255,255,255,.04);
 backdrop-filter:blur(2px);
}

.poraoPage .stats .stat{
 background:linear-gradient(180deg,rgba(255,255,255,.085),rgba(255,255,255,.045));
 color:#f3ede2;
 border:1px solid rgba(255,255,255,.04);
}

.poraoPage .book{
 background:rgba(255,255,255,.02);
 border-radius:18px;
 padding:8px;
 transition:.2s ease;
}

.poraoPage .book:hover{
 transform:translateY(-2px);
 background:rgba(255,255,255,.04);
}

.poraoPage .book .cover{
 background:
  linear-gradient(180deg,#4e4d4e,#353536);
 box-shadow:
  inset 0 0 22px rgba(0,0,0,.22),
  0 10px 24px rgba(0,0,0,.18);
}

.poraoPage .book b{
 color:#f3ede2;
}

.poraoPage .book span{
 color:#d2c7b8;
}

.poraoBadge{
 display:inline-block;
 padding:7px 12px;
 border-radius:999px;
 background:linear-gradient(180deg,rgba(214,201,181,.18),rgba(214,201,181,.08));
 color:#eadfce;
 font-size:11px;
 font-weight:900;
 letter-spacing:.4px;
 margin-top:8px;
 border:1px solid rgba(255,255,255,.06);
}

.poraoPage .miniBtn{
 background:#8a9a47;
 color:#fff;
 box-shadow:0 8px 18px rgba(0,0,0,.20);
}

.poraoPage .miniBtn.alt{
 background:#4a4a4d;
 color:#f2eadb;
 border:1px solid rgba(255,255,255,.08);
}

.poraoPage .smallbtn{
 background:#0f5a43;
 color:#fff;
}

.poraoPage .nav{
 background:rgba(18,18,20,.95);
 border-top:1px solid rgba(255,255,255,.06);
 backdrop-filter:blur(6px);
}

.poraoPage .nav button,
.poraoPage .nav b{
 color:#e8dfd1;
}

.poraoEmpty{
 text-align:center;
 padding:38px 18px;
 border-radius:22px;
 background:
  linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.02));
 border:1px dashed rgba(214,201,181,.18);
}

.poraoEmptyIcon{
 font-size:42px;
 margin-bottom:10px;
 filter:drop-shadow(0 6px 12px rgba(0,0,0,.25));
}

.poraoEmpty b{
 display:block;
 margin-bottom:6px;
 color:#f0e6d7;
}

.poraoHint{
 margin-top:14px;
 font-size:12px;
 color:#bfae97;
}


/* Destaque de origem da notificação */
.notificationOriginHighlight{
 animation:notificationOriginPulse 2.6s ease-in-out 1;
 outline:3px solid #8F63FF!important;
 box-shadow:0 0 0 6px rgba(143,99,255,.18),0 12px 32px rgba(143,99,255,.22)!important;
 border-radius:18px!important;
}

.notificationOriginBanner{
 margin:10px 0 16px;
 padding:13px 14px;
 border-radius:18px;
 background:#efe9ff;
 color:#4d318c;
 font-weight:800;
 box-shadow:0 8px 22px rgba(143,99,255,.16);
}

@keyframes notificationOriginPulse{
 0%{transform:scale(1);filter:brightness(1)}
 35%{transform:scale(1.015);filter:brightness(1.05)}
 100%{transform:scale(1);filter:brightness(1)}
}

/* Campo de senha com visualizar e força */
.passwordInputWrap{
 position:relative;
 width:100%;
 margin:8px 0;
}

.passwordInputWrap input{
 width:100%!important;
 padding-right:48px!important;
 box-sizing:border-box!important;
}

.passwordToggleBtn{
 position:absolute;
 right:10px;
 top:50%;
 transform:translateY(-50%);
 border:0;
 background:transparent;
 cursor:pointer;
 font-size:17px;
 width:34px;
 height:34px;
 border-radius:10px;
 display:flex;
 align-items:center;
 justify-content:center;
 color:#0F5A43;
}

.passwordToggleBtn:active{
 background:#0000000c;
}

.passwordStrengthBox{
 margin:-2px 0 12px;
}

.passwordStrengthTrack{
 width:100%;
 height:7px;
 border-radius:999px;
 background:#d8d8d8;
 overflow:hidden;
}

.passwordStrengthFill{
 height:100%;
 width:0%;
 border-radius:999px;
 background:#b8b8b8;
 transition:.2s ease;
}

.passwordStrengthFill.weak{
 width:33%;
 background:#b8b8b8;
}

.passwordStrengthFill.medium{
 width:66%;
 background:#f1c94d;
}

.passwordStrengthFill.strong{
 width:100%;
 background:#0F5A43;
}

.passwordStrengthText{
 display:block;
 margin-top:6px;
 font-size:12px;
 color:#777;
 line-height:1.35;
}

.passwordStrengthText.error{
 color:#b54040;
 font-weight:700;
}

.passwordStrengthText.ok{
 color:#0F5A43;
 font-weight:800;
}

/* Popup Termos e Política - implementação segura */
.legalModal{
 position:fixed;
 inset:0;
 background:#0009;
 z-index:99999;
 display:flex;
 align-items:center;
 justify-content:center;
 padding:18px;
 box-sizing:border-box;
}

.legalCard{
 width:min(560px,100%);
 max-height:92vh;
 background:#F6F1E7;
 border-radius:26px;
 box-shadow:0 28px 80px #0007;
 overflow:hidden;
 display:flex;
 flex-direction:column;
}

.legalHead{
 padding:18px 18px 10px;
 border-bottom:1px solid #e1d7c7;
}

.legalHead h2{
 margin:0;
 color:#0F5A43;
 font-size:22px;
}

.legalHead p{
 margin:6px 0 0;
 color:#6f665b;
 font-size:13px;
 line-height:1.4;
}

.legalScroll{
 padding:16px 18px;
 overflow:auto;
 max-height:48vh;
 color:#1f2b24;
 line-height:1.45;
 font-size:13px;
 background:#fffaf2;
 white-space:pre-wrap;
}

.legalDivider{
 margin:18px 0;
 height:1px;
 background:#e1d7c7;
}

.legalAcceptArea{
 padding:14px 18px 18px;
 display:grid;
 gap:12px;
}

.legalCheck{
 display:flex;
 gap:10px;
 align-items:flex-start;
 font-size:13px;
 color:#1f2b24;
 line-height:1.35;
}

.legalCheck input{
 width:18px;
 height:18px;
 margin-top:1px;
 flex:none;
}

.legalActions{
 display:grid;
 grid-template-columns:1fr 1fr;
 gap:10px;
}

.legalBtn{
 border:0;
 border-radius:14px;
 padding:13px;
 font-weight:900;
 cursor:pointer;
 background:#0F5A43;
 color:#fff;
}

.legalBtn:disabled{
 opacity:.45;
 cursor:not-allowed;
}

.legalBtn.alt{
 background:#e4d8c8;
 color:#2d2b27;
}


/* BOOK_COVER_PLACEHOLDER_START */
.cover,
.bookCover,
.book-cover,
.bookHeroCover,
.bookCoverDetail{
 position:relative;
 overflow:hidden;
}

.cover.bookNoCover,
.bookCover.bookNoCover,
.book-cover.bookNoCover,
.bookHeroCover.bookNoCover,
.bookCoverDetail.bookNoCover{
 background:
  radial-gradient(circle at 20% 16%, rgba(246,241,231,.20), transparent 34%),
  linear-gradient(145deg, #0F5A43 0%, #1F7258 52%, #8A9A47 100%) !important;
 color:#F6F1E7;
 display:flex!important;
 align-items:center!important;
 justify-content:center!important;
 text-align:center!important;
 box-shadow:inset 0 0 0 1px rgba(246,241,231,.18);
}

.bookNoCoverTitle{
 width:100%;
 max-width:100%;
 height:100%;
 max-height:100%;
 padding:10px 8px;
 box-sizing:border-box;
 color:#F6F1E7;
 font-weight:900;
 font-size:clamp(10px, 2.8vw, 15px);
 line-height:1.08;
 letter-spacing:-.03em;
 text-align:center;
 text-shadow:0 2px 10px rgba(0,0,0,.28);
 display:flex;
 align-items:center;
 justify-content:center;
 overflow:hidden;
 word-break:normal;
 overflow-wrap:break-word;
 hyphens:auto;
}

.bookNoCoverTitle span{
 display:-webkit-box;
 -webkit-line-clamp:6;
 -webkit-box-orient:vertical;
 overflow:hidden;
 max-width:100%;
}

.bookHeroCover .bookNoCoverTitle,
.bookCoverDetail .bookNoCoverTitle{
 font-size:clamp(13px, 3.8vw, 22px);
 padding:16px 12px;
}

.cover.bookNoCover::after,
.bookCover.bookNoCover::after,
.book-cover.bookNoCover::after,
.bookHeroCover.bookNoCover::after,
.bookCoverDetail.bookNoCover::after{
 content:"";
 position:absolute;
 inset:8px;
 border:1px solid rgba(246,241,231,.22);
 border-radius:inherit;
 pointer-events:none;
}

.cover.bookNoCover img,
.bookCover.bookNoCover img,
.book-cover.bookNoCover img,
.bookHeroCover.bookNoCover img,
.bookCoverDetail.bookNoCover img{
 display:none!important;
}
/* BOOK_COVER_PLACEHOLDER_END */


/* BOOK_COVER_TITLE_WHITE_FIX_START */
.bookNoCoverTitle,
.bookNoCoverTitle span,
.cover.bookNoCover .bookNoCoverTitle,
.bookCover.bookNoCover .bookNoCoverTitle,
.book-cover.bookNoCover .bookNoCoverTitle,
.bookHeroCover.bookNoCover .bookNoCoverTitle,
.bookCoverDetail.bookNoCover .bookNoCoverTitle{
 color:#FFFFFF!important;
}

.bookNoCoverTitle{
 text-shadow:
  0 2px 8px rgba(0,0,0,.45),
  0 1px 2px rgba(0,0,0,.35)!important;
}
/* BOOK_COVER_TITLE_WHITE_FIX_END */

/* FOLLOW_BUTTON_TOGGLE_FIX_START */
.followBtn,
.follow-button,
button[data-follow-user],
button[data-user-follow],
button[onclick*="follow"]{
 transition:.18s ease;
}

.followBtn:not(.following),
.follow-button:not(.following),
button[data-follow-user]:not(.following),
button[data-user-follow]:not(.following){
 background:#8A9A47!important;
 color:#fff!important;
}

.followBtn.following,
.follow-button.following,
button[data-follow-user].following,
button[data-user-follow].following{
 background:#0F5A43!important;
 color:#fff!important;
}

.followBtn.pending,
.follow-button.pending,
button[data-follow-user].pending,
button[data-user-follow].pending{
 background:#D8CEBE!important;
 color:#0F5A43!important;
}
/* FOLLOW_BUTTON_TOGGLE_FIX_END */

/* EXPLORE_MUTUAL_FRIENDS_START */
.exploreUserAvatar,
.userSearchAvatar{
 width:52px;
 height:52px;
 border-radius:50%;
 overflow:hidden;
 background:linear-gradient(145deg,#0F5A43,#8A9A47);
 color:#fff;
 display:flex;
 align-items:center;
 justify-content:center;
 font-weight:900;
 font-size:18px;
 flex:0 0 52px;
}

.exploreUserAvatar img,
.userSearchAvatar img{
 width:100%;
 height:100%;
 object-fit:cover;
 display:block;
}

.mutualFriends{
 display:flex;
 align-items:center;
 gap:8px;
 margin-top:7px;
}

.mutualAvatars{
 display:flex;
 align-items:center;
 min-width:58px;
}

.mutualAvatar{
 width:24px;
 height:24px;
 border-radius:50%;
 overflow:hidden;
 border:2px solid #F6F1E7;
 background:#0F5A43;
 color:#fff;
 font-size:11px;
 font-weight:900;
 display:flex;
 align-items:center;
 justify-content:center;
 margin-left:-8px;
 box-shadow:0 2px 6px rgba(0,0,0,.16);
}

.mutualAvatar:first-child{
 margin-left:0;
}

.mutualAvatar img{
 width:100%;
 height:100%;
 object-fit:cover;
 display:block;
}

.mutualText{
 font-size:12px;
 color:#766b5f;
 line-height:1.25;
}

.followBtn,
.miniBtn.following{
 transition:.18s ease;
}

.miniBtn:not(.following){
 background:#8A9A47!important;
 color:#fff!important;
}

.miniBtn.following{
 background:#0F5A43!important;
 color:#fff!important;
}
/* EXPLORE_MUTUAL_FRIENDS_END */

/* NOTIFICATION_BELL_BADGE_START */
.notificationBellBadge{
 position:absolute;
 top:-6px;
 right:-7px;
 min-width:18px;
 height:18px;
 padding:0 5px;
 border-radius:999px;
 background:#E53935;
 color:#fff;
 font-size:10px;
 font-weight:900;
 line-height:18px;
 display:none;
 align-items:center;
 justify-content:center;
 box-sizing:border-box;
 box-shadow:0 2px 8px rgba(0,0,0,.22);
 z-index:30;
 border:2px solid #fffaf2;
 pointer-events:none;
}

.nav .notificationBellBadge{
 top:-7px;
 right:2px;
}

.notificationsButton,
.notificationButton,
.bellButton{
 position:relative;
}
/* NOTIFICATION_BELL_BADGE_END */

/* FOLLOW_REQUEST_NOTIFICATION_ACTIONS_START */
.notificationActions{
 display:flex;
 gap:8px;
 margin-top:10px;
 flex-wrap:wrap;
}

.notificationActionBtn{
 border:0;
 border-radius:12px;
 padding:9px 12px;
 font-size:12px;
 font-weight:900;
 cursor:pointer;
 transition:.18s ease;
}

.notificationActionBtn.accept{
 background:#0F5A43;
 color:#fff;
}

.notificationActionBtn.reject{
 background:#D8CEBE;
 color:#0F5A43;
}

.notificationActionBtn:disabled{
 opacity:.55;
 cursor:not-allowed;
}

.notificationActionStatus{
 display:inline-flex;
 align-items:center;
 gap:6px;
 margin-top:10px;
 padding:8px 10px;
 border-radius:999px;
 font-size:12px;
 font-weight:900;
 background:#F6F1E7;
 color:#0F5A43;
}
/* FOLLOW_REQUEST_NOTIFICATION_ACTIONS_END */

/* FOLLOW_REQUEST_ACTIONS_FINAL_CSS_START */
.notificationActions{
 display:flex;
 gap:8px;
 margin-top:10px;
 flex-wrap:wrap;
}

.notificationActionBtn{
 border:0;
 border-radius:12px;
 padding:9px 12px;
 font-size:12px;
 font-weight:900;
 cursor:pointer;
 transition:.18s ease;
}

.notificationActionBtn.accept{
 background:#0F5A43;
 color:#fff;
}

.notificationActionBtn.reject{
 background:#D8CEBE;
 color:#0F5A43;
}

.notificationActionBtn:disabled{
 opacity:.55;
 cursor:not-allowed;
}

.notificationActionStatus{
 display:inline-flex;
 align-items:center;
 gap:6px;
 margin-top:10px;
 padding:8px 10px;
 border-radius:999px;
 font-size:12px;
 font-weight:900;
 background:#F6F1E7;
 color:#0F5A43;
}
/* FOLLOW_REQUEST_ACTIONS_FINAL_CSS_END */

/* FRIEND_SUGGESTIONS_CARD_START */
.friendSuggestionsCard{
 background:linear-gradient(145deg,#0F5A43,#8A9A47);
 color:#fff;
 border-radius:24px;
 padding:18px;
 margin:12px 0 16px;
 box-shadow:0 14px 34px rgba(15,90,67,.22);
 position:relative;
 overflow:hidden;
}

.friendSuggestionsCard:after{
 content:"";
 position:absolute;
 right:-34px;
 top:-34px;
 width:110px;
 height:110px;
 border-radius:50%;
 background:rgba(255,255,255,.12);
}

.friendSuggestionsCard h3{
 margin:0 0 6px;
 color:#fff;
 font-size:20px;
}

.friendSuggestionsCard p{
 margin:0 0 14px;
 color:rgba(255,255,255,.88);
 line-height:1.35;
 font-size:14px;
 max-width:330px;
}

.friendSuggestionsCard button{
 border:0;
 background:#F6F1E7;
 color:#0F5A43;
 border-radius:999px;
 padding:10px 14px;
 font-weight:900;
 box-shadow:0 8px 18px rgba(0,0,0,.16);
}

.friendSuggestionsMini{
 display:flex;
 align-items:center;
 gap:10px;
 margin-top:12px;
}

.friendSuggestionsMiniAvatars{
 display:flex;
 align-items:center;
}

.friendSuggestionsMiniAvatar{
 width:28px;
 height:28px;
 border-radius:50%;
 border:2px solid rgba(255,255,255,.85);
 background:#F6F1E7;
 color:#0F5A43;
 display:flex;
 align-items:center;
 justify-content:center;
 font-size:12px;
 font-weight:900;
 margin-left:-8px;
 overflow:hidden;
}

.friendSuggestionsMiniAvatar:first-child{
 margin-left:0;
}

.friendSuggestionsMiniAvatar img{
 width:100%;
 height:100%;
 object-fit:cover;
 display:block;
}

.friendSuggestionsMini span{
 color:rgba(255,255,255,.9);
 font-size:12px;
 font-weight:800;
}
/* FRIEND_SUGGESTIONS_CARD_END */

/* BOOK_FORM_POPUP_FIX_START */
.modal,
.popup,
.dialog,
.bookModal,
.bookPopup,
#bookModal,
#addBookModal,
#bookFormModal{
 background:rgba(15,90,67,.28)!important;
 backdrop-filter:blur(4px);
}

.modalContent,
.popupContent,
.dialogContent,
.bookModalContent,
.bookPopupContent,
#bookModal .modalContent,
#addBookModal .modalContent,
#bookFormModal .modalContent,
.formPopup,
.bookFormBox{
 background:#fffaf2!important;
 color:#0F5A43!important;
 border-radius:26px!important;
 padding:20px!important;
 box-shadow:0 18px 48px rgba(0,0,0,.22)!important;
 border:1px solid rgba(216,206,190,.65)!important;
 width:min(94vw,520px)!important;
 max-width:520px!important;
 box-sizing:border-box!important;
}

.modalContent h2,
.popupContent h2,
.dialogContent h2,
.bookModalContent h2,
.bookPopupContent h2,
.formPopup h2,
.bookFormBox h2{
 margin:0 0 14px!important;
 color:#0F5A43!important;
 font-size:24px!important;
 line-height:1.1!important;
}

.modalContent label,
.popupContent label,
.dialogContent label,
.bookModalContent label,
.bookPopupContent label,
.formPopup label,
.bookFormBox label{
 display:block!important;
 color:#0F5A43!important;
 font-weight:800!important;
 font-size:13px!important;
 margin:12px 0 6px!important;
}

.modalContent input,
.modalContent select,
.modalContent textarea,
.popupContent input,
.popupContent select,
.popupContent textarea,
.dialogContent input,
.dialogContent select,
.dialogContent textarea,
.bookModalContent input,
.bookModalContent select,
.bookModalContent textarea,
.bookPopupContent input,
.bookPopupContent select,
.bookPopupContent textarea,
.formPopup input,
.formPopup select,
.formPopup textarea,
.bookFormBox input,
.bookFormBox select,
.bookFormBox textarea,
#bookModal input,
#bookModal select,
#bookModal textarea,
#addBookModal input,
#addBookModal select,
#addBookModal textarea,
#bookFormModal input,
#bookFormModal select,
#bookFormModal textarea{
 width:100%!important;
 min-width:0!important;
 max-width:100%!important;
 height:auto!important;
 min-height:46px!important;
 box-sizing:border-box!important;
 background:#F6F1E7!important;
 color:#0F5A43!important;
 border:1px solid #D8CEBE!important;
 border-radius:14px!important;
 padding:12px 13px!important;
 font-size:15px!important;
 line-height:1.35!important;
 outline:none!important;
 box-shadow:none!important;
 display:block!important;
}

.modalContent textarea,
.popupContent textarea,
.dialogContent textarea,
.bookModalContent textarea,
.bookPopupContent textarea,
.formPopup textarea,
.bookFormBox textarea,
#bookModal textarea,
#addBookModal textarea,
#bookFormModal textarea{
 min-height:92px!important;
 resize:vertical!important;
}

.modalContent input:focus,
.modalContent select:focus,
.modalContent textarea:focus,
.popupContent input:focus,
.popupContent select:focus,
.popupContent textarea:focus,
.dialogContent input:focus,
.dialogContent select:focus,
.dialogContent textarea:focus,
.bookModalContent input:focus,
.bookModalContent select:focus,
.bookModalContent textarea:focus,
.bookPopupContent input:focus,
.bookPopupContent select:focus,
.bookPopupContent textarea:focus,
.formPopup input:focus,
.formPopup select:focus,
.formPopup textarea:focus,
.bookFormBox input:focus,
.bookFormBox select:focus,
.bookFormBox textarea:focus{
 border-color:#8A9A47!important;
 box-shadow:0 0 0 3px rgba(138,154,71,.16)!important;
 background:#fffaf2!important;
}

.modalContent .row,
.popupContent .row,
.dialogContent .row,
.bookModalContent .row,
.bookPopupContent .row,
.formPopup .row,
.bookFormBox .row,
.bookFormGrid,
.bookFormRow{
 display:grid!important;
 grid-template-columns:1fr!important;
 gap:10px!important;
 width:100%!important;
}

.modalContent .actions,
.popupContent .actions,
.dialogContent .actions,
.bookModalContent .actions,
.bookPopupContent .actions,
.formPopup .actions,
.bookFormBox .actions,
.bookFormActions{
 display:flex!important;
 gap:10px!important;
 flex-wrap:wrap!important;
 margin-top:16px!important;
 width:100%!important;
}

.modalContent button,
.popupContent button,
.dialogContent button,
.bookModalContent button,
.bookPopupContent button,
.formPopup button,
.bookFormBox button,
#bookModal button,
#addBookModal button,
#bookFormModal button{
 min-height:44px!important;
 border:0!important;
 border-radius:14px!important;
 padding:11px 14px!important;
 font-weight:900!important;
 cursor:pointer!important;
 box-sizing:border-box!important;
}

.modalContent button[type="submit"],
.popupContent button[type="submit"],
.dialogContent button[type="submit"],
.bookModalContent button[type="submit"],
.bookPopupContent button[type="submit"],
.formPopup button[type="submit"],
.bookFormBox button[type="submit"]{
 background:#0F5A43!important;
 color:#fff!important;
}

.modalContent .cancel,
.modalContent .secondary,
.popupContent .cancel,
.popupContent .secondary,
.dialogContent .cancel,
.dialogContent .secondary,
.bookModalContent .cancel,
.bookModalContent .secondary,
.bookPopupContent .cancel,
.bookPopupContent .secondary,
.formPopup .cancel,
.formPopup .secondary,
.bookFormBox .cancel,
.bookFormBox .secondary{
 background:#D8CEBE!important;
 color:#0F5A43!important;
}

#addBookForm,
#bookForm,
.bookForm{
 width:100%!important;
 display:block!important;
 box-sizing:border-box!important;
}

#addBookForm *,
#bookForm *,
.bookForm *{
 box-sizing:border-box!important;
}

@media(max-width:560px){
 .modalContent,
 .popupContent,
 .dialogContent,
 .bookModalContent,
 .bookPopupContent,
 #bookModal .modalContent,
 #addBookModal .modalContent,
 #bookFormModal .modalContent,
 .formPopup,
 .bookFormBox{
  width:calc(100vw - 24px)!important;
  max-width:calc(100vw - 24px)!important;
  padding:16px!important;
  border-radius:22px!important;
 }

 .modalContent .actions,
 .popupContent .actions,
 .dialogContent .actions,
 .bookModalContent .actions,
 .bookPopupContent .actions,
 .formPopup .actions,
 .bookFormBox .actions,
 .bookFormActions{
  flex-direction:column!important;
 }

 .modalContent .actions button,
 .popupContent .actions button,
 .dialogContent .actions button,
 .bookModalContent .actions button,
 .bookPopupContent .actions button,
 .formPopup .actions button,
 .bookFormBox .actions button,
 .bookFormActions button{
  width:100%!important;
 }
}
/* BOOK_FORM_POPUP_FIX_END */

/* ADD_BOOK_MODAL_SPECIFIC_FIX_START */
#bookFormOverlay,
#addBookOverlay,
.bookFormOverlay{
 position:fixed!important;
 inset:0!important;
 z-index:9999!important;
 background:rgba(15,90,67,.32)!important;
 display:flex!important;
 align-items:center!important;
 justify-content:center!important;
 padding:14px!important;
 box-sizing:border-box!important;
}

#bookFormOverlay form,
#addBookOverlay form,
.bookFormOverlay form,
#bookModal form,
#addBookModal form{
 width:100%!important;
 max-width:520px!important;
 background:#fffaf2!important;
 border-radius:24px!important;
 padding:18px!important;
 box-sizing:border-box!important;
}

#bookFormOverlay input,
#bookFormOverlay select,
#bookFormOverlay textarea,
#addBookOverlay input,
#addBookOverlay select,
#addBookOverlay textarea,
.bookFormOverlay input,
.bookFormOverlay select,
.bookFormOverlay textarea{
 width:100%!important;
 background:#F6F1E7!important;
 border:1px solid #D8CEBE!important;
 color:#0F5A43!important;
 border-radius:14px!important;
 padding:12px!important;
 font-size:15px!important;
 min-height:46px!important;
 box-sizing:border-box!important;
}
/* ADD_BOOK_MODAL_SPECIFIC_FIX_END */

/* BOOK_MODALCARD_FINAL_FIX_START */
#modal.modal{
 position:fixed!important;
 inset:0!important;
 z-index:99999!important;
 background:rgba(15,90,67,.30)!important;
 backdrop-filter:blur(5px)!important;
 display:flex!important;
 align-items:flex-start!important;
 justify-content:center!important;
 padding:18px 12px!important;
 overflow-y:auto!important;
 box-sizing:border-box!important;
}

#modal .modalCard{
 width:min(94vw,560px)!important;
 max-width:560px!important;
 margin:0 auto 24px!important;
 background:#fffaf2!important;
 color:#0F5A43!important;
 border-radius:28px!important;
 padding:18px!important;
 box-sizing:border-box!important;
 box-shadow:0 22px 60px rgba(0,0,0,.28)!important;
 border:1px solid rgba(216,206,190,.75)!important;
}

#modal .modalCard h2{
 margin:0 0 16px!important;
 color:#0F5A43!important;
 font-size:26px!important;
 line-height:1.1!important;
 font-weight:900!important;
}

#modal .modalCard input,
#modal .modalCard select,
#modal .modalCard textarea{
 width:100%!important;
 max-width:100%!important;
 min-width:0!important;
 min-height:48px!important;
 background:#F6F1E7!important;
 color:#0F5A43!important;
 border:1px solid #D8CEBE!important;
 border-radius:15px!important;
 padding:12px 13px!important;
 font-size:15px!important;
 line-height:1.35!important;
 box-sizing:border-box!important;
 display:block!important;
 outline:none!important;
 margin:0!important;
 box-shadow:none!important;
}

#modal .modalCard input::placeholder,
#modal .modalCard textarea::placeholder{
 color:#766b5f!important;
 opacity:.85!important;
}

#modal .modalCard input:focus,
#modal .modalCard select:focus,
#modal .modalCard textarea:focus{
 border-color:#8A9A47!important;
 background:#fffaf2!important;
 box-shadow:0 0 0 3px rgba(138,154,71,.16)!important;
}

#modal .modalCard > input{
 margin-bottom:10px!important;
}

#modal .modalCard > select{
 margin-bottom:10px!important;
}

#modal .modalCard .box{
 width:100%!important;
 background:#fff!important;
 border-radius:22px!important;
 padding:16px!important;
 box-sizing:border-box!important;
 margin:12px 0!important;
 box-shadow:0 8px 22px rgba(0,0,0,.06)!important;
 border:1px solid rgba(216,206,190,.55)!important;
}

#modal .modalCard .box b{
 color:#0F5A43!important;
 font-size:17px!important;
}

#modal .modalCard .box .sub{
 color:#766b5f!important;
 margin:4px 0 12px!important;
 line-height:1.35!important;
}

#modal #coverPreview{
 width:112px!important;
 height:164px!important;
 border-radius:16px!important;
 background:#F6F1E7!important;
 border:1px solid #D8CEBE!important;
 margin:12px 0!important;
}

#modal #coverPreview img{
 width:100%!important;
 height:100%!important;
 object-fit:cover!important;
 display:block!important;
}

#modal #coverResults{
 display:grid!important;
 grid-template-columns:repeat(3,1fr)!important;
 gap:10px!important;
 margin-top:12px!important;
}

#modal .miniBtn{
 min-height:42px!important;
 border:0!important;
 border-radius:999px!important;
 padding:10px 14px!important;
 font-size:14px!important;
 font-weight:900!important;
 background:#8A9A47!important;
 color:#fff!important;
 margin:4px 4px 4px 0!important;
 box-sizing:border-box!important;
}

#modal .btn{
 width:100%!important;
 min-height:56px!important;
 border:0!important;
 border-radius:18px!important;
 padding:14px!important;
 font-size:17px!important;
 font-weight:900!important;
 background:#0F5A43!important;
 color:#fff!important;
 margin:12px 0 0!important;
 box-sizing:border-box!important;
 display:flex!important;
 align-items:center!important;
 justify-content:center!important;
}

#modal .btn.alt{
 background:#8A9A47!important;
 color:#fff!important;
}

#modal #bmsg{
 color:#0F5A43!important;
 font-weight:800!important;
 margin:10px 0 0!important;
}

@media(min-width:561px){
 #modal .modalCard{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:10px!important;
 }

 #modal .modalCard h2,
 #modal .modalCard .box,
 #modal .modalCard #cat,
 #modal .modalCard #bs,
 #modal .modalCard .btn,
 #modal .modalCard #bmsg{
  grid-column:1 / -1!important;
 }

 #modal .modalCard #bt{
  grid-column:1 / 2!important;
 }

 #modal .modalCard #ba{
  grid-column:2 / 3!important;
 }

 #modal .modalCard #bi{
  grid-column:1 / -1!important;
 }
}

@media(max-width:560px){
 #modal.modal{
  padding:12px!important;
 }

 #modal .modalCard{
  width:calc(100vw - 24px)!important;
  max-width:calc(100vw - 24px)!important;
  border-radius:24px!important;
  padding:16px!important;
 }

 #modal .modalCard h2{
  font-size:24px!important;
 }

 #modal #coverResults{
  grid-template-columns:repeat(2,1fr)!important;
 }

 #modal .miniBtn{
  width:100%!important;
  margin:6px 0!important;
 }

 #modal #coverPreview{
  width:104px!important;
  height:154px!important;
 }
}
/* BOOK_MODALCARD_FINAL_FIX_END */

/* BOOK_FORM_VALIDATION_START */
#modal .bookFieldError{
 border-color:#C62828!important;
 background:#fff5f3!important;
}

#modal .bookFormMessage{
 margin-top:12px!important;
 padding:12px 14px!important;
 border-radius:14px!important;
 background:#F6F1E7!important;
 color:#0F5A43!important;
 font-weight:800!important;
 line-height:1.35!important;
}

#modal .bookFormMessage.error{
 background:#fff0ed!important;
 color:#A32116!important;
 border:1px solid rgba(163,33,22,.22)!important;
}

#modal .bookFormMessage.success{
 background:#edf7ef!important;
 color:#0F5A43!important;
 border:1px solid rgba(15,90,67,.18)!important;
}

#modal .btn:disabled{
 opacity:.65!important;
 cursor:not-allowed!important;
}
/* BOOK_FORM_VALIDATION_END */

/* BOOK_FORM_VALIDATION_START */
#modal .bookFieldError{
 border-color:#C62828!important;
 background:#fff5f3!important;
}

#modal .bookFormMessage{
 margin-top:12px!important;
 padding:12px 14px!important;
 border-radius:14px!important;
 background:#F6F1E7!important;
 color:#0F5A43!important;
 font-weight:800!important;
 line-height:1.35!important;
}

#modal .bookFormMessage.error{
 background:#fff0ed!important;
 color:#A32116!important;
 border:1px solid rgba(163,33,22,.22)!important;
}

#modal .bookFormMessage.success{
 background:#edf7ef!important;
 color:#0F5A43!important;
 border:1px solid rgba(15,90,67,.18)!important;
}

#modal .btn:disabled{
 opacity:.65!important;
 cursor:not-allowed!important;
}
/* BOOK_FORM_VALIDATION_END */

/* CREATE_BOOK_SYNOPSIS_FIELD_START */
#modal .bookSynopsisField{
 min-height:110px!important;
 resize:vertical!important;
 grid-column:1 / -1!important;
}
/* CREATE_BOOK_SYNOPSIS_FIELD_END */

/* CREATE_BOOK_VISIBILITY_FIELD_START */
#modal .bookVisibilityField{
 grid-column:1 / -1!important;
 margin-bottom:10px!important;
}
/* CREATE_BOOK_VISIBILITY_FIELD_END */

/* CREATE_BOOK_CONDITION_FIELD_START */
#modal .bookConditionField{
 grid-column:1 / -1!important;
 margin-bottom:10px!important;
}
/* CREATE_BOOK_CONDITION_FIELD_END */

/* BOOK_PAGE_ONLY_EXTRA_INFO_START */
.bookPageMetaGrid{
 display:grid;
 grid-template-columns:1fr 1fr;
 gap:10px;
 margin:14px 0;
}

.bookPageMetaItem{
 background:#fffaf2;
 border:1px solid rgba(216,206,190,.75);
 border-radius:16px;
 padding:12px;
 color:#0F5A43;
 box-shadow:0 8px 20px rgba(0,0,0,.04);
}

.bookPageMetaItem b{
 display:block;
 font-size:12px;
 color:#0F5A43;
 margin-bottom:4px;
}

.bookPageMetaItem span{
 color:#766b5f;
 font-size:14px;
 line-height:1.35;
}

.bookPageSynopsis{
 background:#fffaf2;
 border:1px solid rgba(216,206,190,.75);
 border-radius:18px;
 padding:14px;
 margin-top:14px;
 color:#0F5A43;
}

.bookPageSynopsis b{
 display:block;
 margin-bottom:6px;
 color:#0F5A43;
}

.bookPageSynopsis p{
 color:#766b5f;
 line-height:1.5;
 margin:0;
}

@media(max-width:560px){
 .bookPageMetaGrid{
  grid-template-columns:1fr;
 }
}
/* BOOK_PAGE_ONLY_EXTRA_INFO_END */

/* BOOK_LOAN_REQUEST_IMPROVE_START */
.loanRequestBtn{
 background:#0F5A43!important;
 color:#fff!important;
 border:0!important;
 border-radius:999px!important;
 padding:10px 14px!important;
 font-weight:900!important;
 min-height:40px!important;
 box-shadow:0 8px 18px rgba(15,90,67,.18)!important;
}

.loanRequestBtn:disabled{
 opacity:.65!important;
 cursor:not-allowed!important;
}

.loanRequestBtn.requested{
 background:#D8CEBE!important;
 color:#0F5A43!important;
}

.bookLoanToast{
 position:fixed;
 left:14px;
 right:14px;
 bottom:92px;
 z-index:99999;
 background:#0F5A43;
 color:#fff;
 border-radius:18px;
 padding:13px 14px;
 box-shadow:0 14px 34px rgba(0,0,0,.24);
 font-weight:800;
 text-align:center;
 animation:bookLoanToastIn .18s ease;
}

.bookLoanToast.error{
 background:#A32116;
}

@keyframes bookLoanToastIn{
 from{transform:translateY(12px);opacity:0}
 to{transform:translateY(0);opacity:1}
}
/* BOOK_LOAN_REQUEST_IMPROVE_END */

/* HOME_SOCIAL_FEED_V1_START */
.homeFeedShell{
 margin:14px 0 18px;
}

.homeFeedTabs{
 display:flex;
 gap:8px;
 background:#F6F1E7;
 border:1px solid rgba(216,206,190,.75);
 padding:6px;
 border-radius:999px;
 margin:12px 0 14px;
 position:sticky;
 top:8px;
 z-index:20;
 backdrop-filter:blur(10px);
}

.homeFeedTab{
 flex:1;
 border:0;
 border-radius:999px;
 padding:10px 8px;
 background:transparent;
 color:#0F5A43;
 font-weight:900;
 cursor:pointer;
}

.homeFeedTab.active{
 background:#0F5A43;
 color:#fff;
 box-shadow:0 8px 20px rgba(15,90,67,.18);
}

.homeFeedList{
 display:grid;
 gap:12px;
}

.homeFeedCard{
 background:#fffaf2;
 border:1px solid rgba(216,206,190,.75);
 border-radius:22px;
 padding:14px;
 box-shadow:0 10px 26px rgba(0,0,0,.05);
 color:#0F5A43;
}

.homeFeedHead{
 display:flex;
 align-items:center;
 gap:10px;
 margin-bottom:10px;
}

.homeFeedAvatar{
 width:42px;
 height:42px;
 border-radius:50%;
 background:#0F5A43;
 color:#fff;
 display:flex;
 align-items:center;
 justify-content:center;
 overflow:hidden;
 flex:none;
 font-weight:900;
}

.homeFeedAvatar img{
 width:100%;
 height:100%;
 object-fit:cover;
}

.homeFeedUser{
 flex:1;
 min-width:0;
}

.homeFeedUser b{
 display:block;
 color:#0F5A43;
 font-size:14px;
}

.homeFeedUser span{
 color:#766b5f;
 font-size:12px;
}

.homeFeedType{
 display:inline-flex;
 align-items:center;
 border-radius:999px;
 background:#F6F1E7;
 color:#0F5A43;
 padding:6px 9px;
 font-size:11px;
 font-weight:900;
 white-space:nowrap;
}

.homeFeedText{
 color:#423a33;
 line-height:1.45;
 font-size:14px;
 margin:8px 0 0;
}

.homeFeedBook{
 display:flex;
 gap:10px;
 align-items:center;
 margin-top:12px;
 background:#F6F1E7;
 border-radius:16px;
 padding:10px;
}

.homeFeedBookCover{
 width:42px;
 height:62px;
 border-radius:9px;
 background:linear-gradient(145deg,#0F5A43,#8A9A47);
 color:#fff;
 display:flex;
 align-items:center;
 justify-content:center;
 overflow:hidden;
 flex:none;
 font-size:20px;
}

.homeFeedBookCover img{
 width:100%;
 height:100%;
 object-fit:cover;
}

.homeFeedBookInfo b{
 display:block;
 color:#0F5A43;
 font-size:13px;
}

.homeFeedBookInfo span{
 display:block;
 color:#766b5f;
 font-size:12px;
 margin-top:2px;
}

.homeFeedActions{
 display:flex;
 gap:8px;
 margin-top:12px;
}

.homeFeedActions button{
 border:0;
 background:#F6F1E7;
 color:#0F5A43;
 border-radius:999px;
 padding:8px 11px;
 font-weight:900;
 font-size:12px;
 cursor:pointer;
}

.homeFeedEmpty{
 background:#fffaf2;
 border:1px dashed rgba(15,90,67,.25);
 border-radius:20px;
 padding:18px;
 color:#766b5f;
 text-align:center;
}

.homeSectionTitle{
 display:flex;
 justify-content:space-between;
 align-items:center;
 margin:20px 2px 10px;
}

.homeSectionTitle h2{
 margin:0;
 color:#0F5A43;
 font-size:18px;
}

.homeSectionTitle span{
 color:#766b5f;
 font-size:12px;
}
/* HOME_SOCIAL_FEED_V1_END */

/* HOME_SOCIAL_FEED_V1_START */
.homeFeedShell{
 margin:14px 0 18px;
}

.homeFeedTabs{
 display:flex;
 gap:8px;
 background:#F6F1E7;
 border:1px solid rgba(216,206,190,.75);
 padding:6px;
 border-radius:999px;
 margin:12px 0 14px;
 position:sticky;
 top:8px;
 z-index:20;
 backdrop-filter:blur(10px);
}

.homeFeedTab{
 flex:1;
 border:0;
 border-radius:999px;
 padding:10px 8px;
 background:transparent;
 color:#0F5A43;
 font-weight:900;
 cursor:pointer;
}

.homeFeedTab.active{
 background:#0F5A43;
 color:#fff;
 box-shadow:0 8px 20px rgba(15,90,67,.18);
}

.homeFeedList{
 display:grid;
 gap:12px;
}

.homeFeedCard{
 background:#fffaf2;
 border:1px solid rgba(216,206,190,.75);
 border-radius:22px;
 padding:14px;
 box-shadow:0 10px 26px rgba(0,0,0,.05);
 color:#0F5A43;
}

.homeFeedHead{
 display:flex;
 align-items:center;
 gap:10px;
 margin-bottom:10px;
}

.homeFeedAvatar{
 width:42px;
 height:42px;
 border-radius:50%;
 background:#0F5A43;
 color:#fff;
 display:flex;
 align-items:center;
 justify-content:center;
 overflow:hidden;
 flex:none;
 font-weight:900;
}

.homeFeedAvatar img{
 width:100%;
 height:100%;
 object-fit:cover;
}

.homeFeedUser{
 flex:1;
 min-width:0;
}

.homeFeedUser b{
 display:block;
 color:#0F5A43;
 font-size:14px;
}

.homeFeedUser span{
 color:#766b5f;
 font-size:12px;
}

.homeFeedType{
 display:inline-flex;
 align-items:center;
 border-radius:999px;
 background:#F6F1E7;
 color:#0F5A43;
 padding:6px 9px;
 font-size:11px;
 font-weight:900;
 white-space:nowrap;
}

.homeFeedText{
 color:#423a33;
 line-height:1.45;
 font-size:14px;
 margin:8px 0 0;
}

.homeFeedBook{
 display:flex;
 gap:10px;
 align-items:center;
 margin-top:12px;
 background:#F6F1E7;
 border-radius:16px;
 padding:10px;
}

.homeFeedBookCover{
 width:42px;
 height:62px;
 border-radius:9px;
 background:linear-gradient(145deg,#0F5A43,#8A9A47);
 color:#fff;
 display:flex;
 align-items:center;
 justify-content:center;
 overflow:hidden;
 flex:none;
 font-size:20px;
}

.homeFeedBookCover img{
 width:100%;
 height:100%;
 object-fit:cover;
}

.homeFeedBookInfo b{
 display:block;
 color:#0F5A43;
 font-size:13px;
}

.homeFeedBookInfo span{
 display:block;
 color:#766b5f;
 font-size:12px;
 margin-top:2px;
}

.homeFeedActions{
 display:flex;
 gap:8px;
 margin-top:12px;
}

.homeFeedActions button{
 border:0;
 background:#F6F1E7;
 color:#0F5A43;
 border-radius:999px;
 padding:8px 11px;
 font-weight:900;
 font-size:12px;
 cursor:pointer;
}

.homeFeedEmpty{
 background:#fffaf2;
 border:1px dashed rgba(15,90,67,.25);
 border-radius:20px;
 padding:18px;
 color:#766b5f;
 text-align:center;
}

.homeSectionTitle{
 display:flex;
 justify-content:space-between;
 align-items:center;
 margin:20px 2px 10px;
}

.homeSectionTitle h2{
 margin:0;
 color:#0F5A43;
 font-size:18px;
}

.homeSectionTitle span{
 color:#766b5f;
 font-size:12px;
}
/* HOME_SOCIAL_FEED_V1_END */

/* PODELIVRO_CLEAN_WHITE_LAYOUT_START */
html,
body{
 background:#ffffff!important;
}

.page,
.wrap,
main,
#app{
 background:#ffffff!important;
}

.card,
.box{
 background:#ffffff;
}
/* PODELIVRO_CLEAN_WHITE_LAYOUT_END */


/* HOME_SOCIAL_FEED_CLEAN_V2_START */
.homeFeedShell{
 margin:12px 0 22px!important;
 background:#ffffff!important;
}

.homeFeedTabs{
 display:flex!important;
 gap:18px!important;
 background:#ffffff!important;
 border:0!important;
 border-bottom:1px solid rgba(15,90,67,.12)!important;
 padding:0!important;
 border-radius:0!important;
 margin:8px 0 8px!important;
 position:static!important;
 box-shadow:none!important;
 backdrop-filter:none!important;
}

.homeFeedTab{
 flex:initial!important;
 border:0!important;
 border-radius:0!important;
 padding:12px 0 10px!important;
 background:transparent!important;
 color:#766b5f!important;
 font-weight:800!important;
 cursor:pointer!important;
 font-size:14px!important;
 position:relative!important;
}

.homeFeedTab.active{
 background:transparent!important;
 color:#0F5A43!important;
 box-shadow:none!important;
}

.homeFeedTab.active::after{
 content:"";
 position:absolute;
 left:0;
 right:0;
 bottom:-1px;
 height:2px;
 background:#0F5A43;
 border-radius:999px;
}

.homeFeedList{
 display:block!important;
}

.homeFeedCard{
 background:#ffffff!important;
 border:0!important;
 border-bottom:1px solid rgba(15,90,67,.10)!important;
 border-radius:0!important;
 padding:16px 2px!important;
 box-shadow:none!important;
 color:#0F5A43!important;
}

.homeFeedHead{
 display:flex!important;
 align-items:center!important;
 gap:10px!important;
 margin-bottom:8px!important;
}

.homeFeedAvatar{
 width:34px!important;
 height:34px!important;
 border-radius:50%!important;
 background:#F6F1E7!important;
 color:#0F5A43!important;
 box-shadow:none!important;
 font-size:13px!important;
}

.homeFeedUser b{
 color:#0F5A43!important;
 font-size:14px!important;
 font-weight:900!important;
}

.homeFeedUser span{
 color:#8a8177!important;
 font-size:12px!important;
}

.homeFeedType{
 background:transparent!important;
 color:#8A9A47!important;
 padding:0!important;
 font-size:11px!important;
 font-weight:900!important;
}

.homeFeedText{
 color:#423a33!important;
 line-height:1.45!important;
 font-size:14px!important;
 margin:7px 0 0!important;
}

.homeFeedBook{
 display:flex!important;
 gap:10px!important;
 align-items:center!important;
 margin-top:10px!important;
 background:#ffffff!important;
 border:1px solid rgba(216,206,190,.55)!important;
 border-radius:12px!important;
 padding:9px!important;
 box-shadow:none!important;
}

.homeFeedBookCover{
 width:34px!important;
 height:50px!important;
 border-radius:7px!important;
 background:linear-gradient(145deg,#0F5A43,#8A9A47)!important;
 color:#fff!important;
 font-size:16px!important;
}

.homeFeedBookInfo b{
 color:#0F5A43!important;
 font-size:13px!important;
}

.homeFeedBookInfo span{
 color:#766b5f!important;
 font-size:12px!important;
}

.homeFeedActions{
 display:flex!important;
 gap:18px!important;
 margin-top:10px!important;
}

.homeFeedActions button{
 border:0!important;
 background:transparent!important;
 color:#8A9A47!important;
 border-radius:0!important;
 padding:0!important;
 font-weight:800!important;
 font-size:12px!important;
 cursor:pointer!important;
}

.homeFeedEmpty{
 background:#ffffff!important;
 border:0!important;
 border-bottom:1px solid rgba(15,90,67,.10)!important;
 border-radius:0!important;
 padding:18px 0!important;
 color:#766b5f!important;
 text-align:left!important;
}

.homeSectionTitle{
 margin:22px 0 10px!important;
}

.homeSectionTitle h2{
 color:#0F5A43!important;
 font-size:18px!important;
}
/* HOME_SOCIAL_FEED_CLEAN_V2_END */

/* PODELIVRO_HOME_2_LAYOUT_START */

:root{
 --pl-green:#0F5A43;
 --pl-moss:#8A9A47;
 --pl-off:#F6F1E7;
 --pl-sand:#D8CEBE;
 --pl-white:#ffffff;
 --pl-text:#1f2a24;
 --pl-muted:#7b766e;
 --pl-soft:#f8f5ee;
}

html,
body{
 background:#ffffff!important;
}

body{
 margin:0;
 color:var(--pl-text);
}

#app{
 background:#ffffff!important;
 min-height:100vh;
}

.home2Page{
 min-height:100vh;
 background:#ffffff;
 padding-bottom:106px;
 font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.home2Top{
 background:linear-gradient(180deg,var(--pl-green) 0%,#134f40 100%);
 color:#fff;
 min-height:31vh;
 border-bottom-left-radius:0;
 border-bottom-right-radius:0;
 padding:18px 18px 18px;
 position:relative;
 overflow:hidden;
 transition:min-height .24s ease, padding .24s ease;
}

.home2Top::before{
 content:"";
 position:absolute;
 inset:auto -70px -110px auto;
 width:220px;
 height:220px;
 background:rgba(255,255,255,.08);
 border-radius:50%;
}

.home2Top::after{
 content:"";
 position:absolute;
 left:-80px;
 top:-90px;
 width:220px;
 height:220px;
 background:rgba(216,206,190,.10);
 border-radius:50%;
}

.home2Header{
 height:76px;
 display:grid;
 grid-template-columns:54px 1fr 54px;
 align-items:center;
 position:relative;
 z-index:2;
}

.home2Header h1{
 margin:0;
 text-align:center;
 color:#fff;
 font-weight:950;
 letter-spacing:-.04em;
 font-size:34px;
 line-height:1;
}

.home2ProfileButton,
.home2Bell{
 border:0;
 background:transparent;
 padding:0;
 display:flex;
 align-items:center;
 justify-content:center;
 cursor:pointer;
 position:relative;
}

.home2HeaderAvatar{
 width:44px;
 height:44px;
 border-radius:50%;
 background:var(--pl-off);
 color:var(--pl-green);
 border:3px solid rgba(255,255,255,.86);
 box-shadow:0 10px 24px rgba(0,0,0,.18);
 display:flex;
 align-items:center;
 justify-content:center;
 overflow:hidden;
 font-weight:900;
}

.home2HeaderAvatar img{
 width:100%;
 height:100%;
 object-fit:cover;
}

.home2Bell{
 width:42px;
 height:42px;
 border-radius:50%;
 color:#fff;
 font-size:23px;
 justify-self:end;
}

.home2Bell span{
 position:absolute;
 right:6px;
 top:7px;
 width:9px;
 height:9px;
 border-radius:50%;
 background:var(--pl-moss);
 border:2px solid #fff;
}

.home2CardsWrap{
 position:relative;
 z-index:2;
 margin-top:8px;
 transition:opacity .22s ease, transform .22s ease, max-height .22s ease;
}

.home2CardsScroller{
 display:flex;
 gap:12px;
 overflow-x:auto;
 scroll-snap-type:x mandatory;
 padding:4px 0 8px;
 margin-right:-18px;
 scrollbar-width:none;
}

.home2CardsScroller::-webkit-scrollbar{
 display:none;
}

.home2InfoCard{
 scroll-snap-align:start;
 min-width:176px;
 max-width:176px;
 min-height:158px;
 background:#fff;
 color:var(--pl-text);
 border-radius:22px;
 padding:17px 16px 15px;
 box-shadow:0 18px 36px rgba(0,0,0,.16);
 border:1px solid rgba(255,255,255,.55);
}

.home2InfoIcon{
 width:38px;
 height:38px;
 border-radius:50%;
 background:rgba(15,90,67,.09);
 color:var(--pl-green);
 display:flex;
 align-items:center;
 justify-content:center;
 font-size:18px;
 margin-bottom:14px;
}

.home2InfoIcon.musgo{
 background:rgba(138,154,71,.14);
 color:var(--pl-moss);
}

.home2InfoIcon.areia{
 background:rgba(216,206,190,.42);
 color:var(--pl-green);
}

.home2InfoCard h3{
 margin:0 0 7px;
 font-size:16px;
 line-height:1.15;
 color:var(--pl-text);
 letter-spacing:-.02em;
}

.home2InfoCard p{
 margin:0;
 color:var(--pl-muted);
 font-size:12.5px;
 line-height:1.35;
}

.home2InfoCard button{
 margin-top:14px;
 width:100%;
 border:0;
 height:38px;
 border-radius:999px;
 background:var(--pl-green);
 color:#fff;
 font-weight:900;
 cursor:pointer;
}

.home2WeekDots{
 display:flex;
 gap:5px;
 margin:14px 0 8px;
}

.home2WeekDots span{
 width:10px;
 height:10px;
 border-radius:50%;
 border:1px solid var(--pl-sand);
 background:#fff;
}

.home2WeekDots span.on{
 background:var(--pl-green);
 border-color:var(--pl-green);
}

.home2InfoCard small{
 display:block;
 color:var(--pl-muted);
 font-size:12px;
}

.home2CardsDots{
 display:flex;
 justify-content:center;
 gap:5px;
 margin-top:2px;
}

.home2CardsDots span{
 width:5px;
 height:5px;
 border-radius:50%;
 background:rgba(255,255,255,.45);
}

.home2CardsDots span.active{
 width:16px;
 border-radius:999px;
 background:#fff;
}

.home2StickyTabs{
 position:sticky;
 top:0;
 z-index:40;
 background:#fff;
 border-bottom:1px solid rgba(15,90,67,.10);
 box-shadow:0 8px 20px rgba(15,90,67,.04);
}

.home2Tabs{
 height:70px;
 display:grid;
 grid-template-columns:repeat(3,1fr);
 align-items:center;
 background:#fff;
}

.home2Tabs button{
 height:70px;
 border:0;
 background:#fff;
 color:#65726b;
 font-size:26px;
 cursor:pointer;
 position:relative;
 display:flex;
 align-items:center;
 justify-content:center;
}

.home2Tabs button span{
 transform:translateY(-1px);
}

.home2Tabs button.active{
 color:var(--pl-green);
}

.home2Tabs button.active::after{
 content:"";
 position:absolute;
 left:0;
 right:0;
 bottom:0;
 height:3px;
 background:var(--pl-green);
 border-radius:999px 999px 0 0;
}

.home2Feed{
 background:#fff;
 padding:22px 18px 0;
}

.home2FeedTitle{
 display:flex;
 align-items:center;
 justify-content:space-between;
 margin-bottom:10px;
}

.home2FeedTitle h2{
 margin:0;
 color:var(--pl-text);
 font-size:21px;
 letter-spacing:-.02em;
}

.home2FeedTitle button{
 border:0;
 background:#fff;
 color:var(--pl-green);
 font-size:20px;
 cursor:pointer;
}

.home2FeedList{
 display:block;
}

.home2Post{
 background:#fff;
 border-bottom:1px solid rgba(15,90,67,.10);
 padding:18px 0 20px;
}

.home2PostHeader{
 display:grid;
 grid-template-columns:48px 1fr 34px;
 gap:10px;
 align-items:center;
}

.home2PostAvatar{
 width:46px;
 height:46px;
 border-radius:50%;
 background:var(--pl-off);
 color:var(--pl-green);
 border:2px solid rgba(15,90,67,.14);
 display:flex;
 align-items:center;
 justify-content:center;
 overflow:hidden;
 font-weight:900;
}

.home2PostAvatar img{
 width:100%;
 height:100%;
 object-fit:cover;
}

.home2PostUser strong{
 display:block;
 font-size:15px;
 color:var(--pl-text);
 letter-spacing:-.01em;
}

.home2PostUser span{
 display:block;
 margin-top:2px;
 color:var(--pl-muted);
 font-size:12.5px;
}

.home2More{
 border:0;
 background:#fff;
 color:var(--pl-text);
 font-size:18px;
 cursor:pointer;
}

.home2Stars{
 display:flex;
 align-items:center;
 gap:2px;
 margin-top:15px;
 color:#e5a33a;
 font-size:18px;
}

.home2Stars .off{
 color:#e4e5e1;
}

.home2Stars small{
 color:var(--pl-muted);
 margin-left:9px;
 font-size:13px;
}

.home2PostText{
 white-space:pre-line;
 margin:16px 0 0;
 color:#4d5a53;
 font-size:17px;
 line-height:1.45;
 letter-spacing:-.01em;
}

.home2BookTile{
 margin-top:18px;
 display:grid;
 grid-template-columns:72px 1fr;
 gap:13px;
 align-items:center;
 background:#f7f8f5;
 border:1px solid rgba(216,206,190,.48);
 border-radius:18px;
 padding:12px;
}

.home2BookCover{
 width:72px;
 height:104px;
 border-radius:12px;
 background:linear-gradient(145deg,var(--pl-green),var(--pl-moss));
 display:flex;
 align-items:center;
 justify-content:center;
 color:#fff;
 overflow:hidden;
 font-size:24px;
 box-shadow:0 12px 22px rgba(15,90,67,.16);
}

.home2BookCover img{
 width:100%;
 height:100%;
 object-fit:cover;
}

.home2BookInfo strong{
 display:block;
 color:var(--pl-text);
 font-size:16px;
 line-height:1.2;
 letter-spacing:-.02em;
}

.home2BookInfo span{
 display:block;
 color:var(--pl-muted);
 margin-top:5px;
 font-size:13px;
}

.home2BookInfo small{
 display:inline-flex;
 margin-top:12px;
 color:var(--pl-muted);
 border:1px solid rgba(216,206,190,.8);
 border-radius:999px;
 padding:6px 10px;
 font-size:12px;
 background:#fff;
}

.home2QuoteBox{
 margin-top:16px;
 background:linear-gradient(135deg,#F6F1E7 0%,#fffaf2 100%);
 border:1px solid rgba(216,206,190,.65);
 border-radius:18px;
 padding:20px;
}

.home2QuoteBox p{
 margin:0;
 color:var(--pl-text);
 font-size:20px;
 line-height:1.35;
 font-family:Georgia, "Times New Roman", serif;
}

.home2QuoteBox small{
 display:block;
 margin-top:12px;
 color:var(--pl-muted);
}

.home2PostActions{
 margin-top:18px;
 display:grid;
 grid-template-columns:repeat(3,1fr);
 gap:8px;
}

.home2PostActions button{
 border:0;
 background:#fff;
 color:var(--pl-muted);
 display:flex;
 align-items:center;
 justify-content:center;
 gap:6px;
 min-height:38px;
 cursor:pointer;
 font-size:13px;
}

.home2PostActions button:first-child{
 color:var(--pl-moss);
}

.home2PostActions span{
 font-size:24px;
 line-height:1;
}

.home2PostActions b{
 font-size:13px;
 font-weight:900;
}

.home2PostActions small{
 font-size:11px;
 color:var(--pl-muted);
}

.home2BottomNav{
 position:fixed;
 left:50%;
 bottom:18px;
 transform:translateX(-50%);
 width:min(88vw,390px);
 height:66px;
 background:rgba(255,255,255,.92);
 border:1px solid rgba(216,206,190,.75);
 border-radius:999px;
 box-shadow:0 18px 45px rgba(0,0,0,.14);
 backdrop-filter:blur(18px);
 z-index:90;
 display:grid;
 grid-template-columns:repeat(5,1fr);
 align-items:center;
 padding:0 8px;
}

.home2BottomNav button{
 border:0;
 background:transparent;
 color:#48564f;
 height:50px;
 border-radius:999px;
 display:flex;
 align-items:center;
 justify-content:center;
 font-size:29px;
 cursor:pointer;
}

.home2BottomNav button.active{
 background:rgba(15,90,67,.10);
 color:var(--pl-green);
}

body.home2Scrolled .home2Top{
 min-height:88px;
 padding-bottom:0;
 position:sticky;
 top:0;
 z-index:50;
 box-shadow:0 10px 26px rgba(15,90,67,.16);
}

body.home2Scrolled .home2CardsWrap{
 opacity:0;
 transform:translateY(-12px);
 max-height:0;
 overflow:hidden;
 pointer-events:none;
 margin:0;
}

body.home2Scrolled .home2Header{
 height:76px;
}

body.home2Scrolled .home2Header h1{
 font-size:25px;
 color:#fff;
}

body.home2Scrolled .home2HeaderAvatar{
 width:38px;
 height:38px;
}

body.home2Scrolled .home2StickyTabs{
 top:88px;
}

@media(min-width:760px){
 .home2Page{
  max-width:480px;
  margin:0 auto;
  border-left:1px solid rgba(216,206,190,.55);
  border-right:1px solid rgba(216,206,190,.55);
 }
}

/* PODELIVRO_HOME_2_LAYOUT_END */

/* HOME2_SMOOTH_SCROLL_FIX_START */

/* O topo fica fixo, e os cards rolam naturalmente por trás dele */
.home2Header{
 position:fixed!important;
 top:0!important;
 left:50%!important;
 transform:translateX(-50%)!important;
 width:100%!important;
 max-width:480px!important;
 height:88px!important;
 padding:18px!important;
 box-sizing:border-box!important;
 background:linear-gradient(180deg,var(--pl-green) 0%,#134f40 100%)!important;
 z-index:80!important;
 box-shadow:0 10px 26px rgba(15,90,67,.12)!important;
}

.home2Top{
 position:relative!important;
 min-height:31vh!important;
 padding-top:88px!important;
 padding-bottom:18px!important;
 background:linear-gradient(180deg,var(--pl-green) 0%,#134f40 100%)!important;
 overflow:hidden!important;
 box-shadow:none!important;
}

.home2CardsWrap{
 opacity:1!important;
 transform:none!important;
 max-height:none!important;
 overflow:visible!important;
 pointer-events:auto!important;
 margin-top:8px!important;
 transition:none!important;
}

/* As abas param logo abaixo do topo fixo */
.home2StickyTabs{
 top:88px!important;
 z-index:70!important;
}

/* Neutraliza o comportamento antigo que fazia o salto */
body.home2Scrolled .home2Top{
 position:relative!important;
 min-height:31vh!important;
 padding-top:88px!important;
 padding-bottom:18px!important;
 box-shadow:none!important;
}

body.home2Scrolled .home2CardsWrap{
 opacity:1!important;
 transform:none!important;
 max-height:none!important;
 overflow:visible!important;
 pointer-events:auto!important;
 margin-top:8px!important;
}

body.home2Scrolled .home2Header{
 height:88px!important;
}

body.home2Scrolled .home2Header h1{
 font-size:34px!important;
 color:#fff!important;
}

body.home2Scrolled .home2HeaderAvatar{
 width:44px!important;
 height:44px!important;
}

body.home2Scrolled .home2StickyTabs{
 top:88px!important;
}

/* Garante respiro inicial para o conteúdo não entrar embaixo do topo fixo */
.home2Page{
 background:#ffffff!important;
}

/* HOME2_SMOOTH_SCROLL_FIX_END */

/* HOME2_ICON_KIT_STYLE_START */
.home2Icon,
.home2TabIcon,
.home2ActionIcon,
.home2CardIcon,
.home2NavIcon,
.home2BellIcon{
 display:block;
 width:24px;
 height:24px;
 object-fit:contain;
 pointer-events:none;
}

.home2CardIcon{
 width:22px;
 height:22px;
}

.home2TabIcon{
 width:28px;
 height:28px;
 opacity:.55;
}

.home2Tabs button.active .home2TabIcon{
 opacity:1;
}

.home2ActionIcon{
 width:23px;
 height:23px;
}

.home2NavIcon{
 width:27px;
 height:27px;
 opacity:.62;
}

.home2BottomNav button.active .home2NavIcon{
 opacity:1;
}

.home2BellIcon{
 width:24px;
 height:24px;
}
/* HOME2_ICON_KIT_STYLE_END */

/* HOME2_ICON_KIT_STYLE_START */
.home2Icon,
.home2TabIcon,
.home2ActionIcon,
.home2CardIcon,
.home2NavIcon,
.home2BellIcon{
 display:block;
 width:24px;
 height:24px;
 object-fit:contain;
 pointer-events:none;
}

.home2CardIcon{
 width:22px;
 height:22px;
}

.home2TabIcon{
 width:28px;
 height:28px;
 opacity:.55;
}

.home2Tabs button.active .home2TabIcon{
 opacity:1;
}

.home2ActionIcon{
 width:23px;
 height:23px;
}

.home2NavIcon{
 width:27px;
 height:27px;
 opacity:.62;
}

.home2BottomNav button.active .home2NavIcon{
 opacity:1;
}

.home2BellIcon{
 width:24px;
 height:24px;
}
/* HOME2_ICON_KIT_STYLE_END */

/* HOME2_COMPACT_HORIZONTAL_CARDS_START */

/* Redução geral de fonte na Home 2 */
.home2Page{
 font-size:14px!important;
}

.home2Header h1{
 font-size:30px!important;
}

.home2FeedTitle h2{
 font-size:18px!important;
}

.home2PostText{
 font-size:15px!important;
 line-height:1.42!important;
}

.home2PostUser strong{
 font-size:14px!important;
}

.home2PostUser span{
 font-size:11.5px!important;
}

.home2BookInfo strong{
 font-size:14px!important;
}

.home2BookInfo span,
.home2BookInfo small{
 font-size:11.5px!important;
}

/* Topo mais compacto */
.home2Top{
 min-height:25vh!important;
 padding-bottom:12px!important;
}

body.home2Scrolled .home2Top{
 min-height:25vh!important;
 padding-bottom:12px!important;
}

/* Cards horizontais e menores */
.home2CardsWrap{
 margin-top:4px!important;
}

.home2CardsScroller{
 gap:10px!important;
 padding:2px 0 6px!important;
}

.home2InfoCard{
 min-width:230px!important;
 max-width:230px!important;
 min-height:96px!important;
 height:96px!important;
 padding:12px!important;
 border-radius:18px!important;
 display:grid!important;
 grid-template-columns:42px 1fr!important;
 align-items:center!important;
 gap:10px!important;
 cursor:pointer!important;
 box-shadow:0 12px 26px rgba(0,0,0,.12)!important;
}

.home2InfoCard:active{
 transform:scale(.985);
}

.home2InfoIcon{
 width:38px!important;
 height:38px!important;
 margin:0!important;
 flex:none!important;
}

.home2InfoContent{
 min-width:0!important;
}

.home2InfoCard h3{
 font-size:14px!important;
 line-height:1.12!important;
 margin:0 0 4px!important;
}

.home2InfoCard p{
 font-size:11.5px!important;
 line-height:1.28!important;
 margin:0!important;
}

.home2InfoCard button{
 display:none!important;
}

.home2WeekDots{
 gap:4px!important;
 margin:7px 0 4px!important;
}

.home2WeekDots span{
 width:7px!important;
 height:7px!important;
}

.home2InfoCard small{
 font-size:10.5px!important;
 line-height:1!important;
}

.home2CardsDots{
 margin-top:0!important;
}

.home2CardsDots span{
 width:4px!important;
 height:4px!important;
}

.home2CardsDots span.active{
 width:14px!important;
}

/* Ajuste para quando o topo está fixo */
body.home2Scrolled .home2Header h1{
 font-size:30px!important;
}

/* Tabs um pouco mais compactas */
.home2Tabs,
.home2Tabs button{
 height:62px!important;
}

.home2TabIcon{
 width:25px!important;
 height:25px!important;
}

.home2StickyTabs{
 top:88px!important;
}

/* Feed começa mais próximo */
.home2Feed{
 padding-top:16px!important;
}

.home2Post{
 padding:15px 0 17px!important;
}

.home2BookTile{
 margin-top:14px!important;
 grid-template-columns:62px 1fr!important;
 padding:10px!important;
 border-radius:16px!important;
}

.home2BookCover{
 width:62px!important;
 height:90px!important;
}

.home2PostActions{
 margin-top:13px!important;
}

.home2PostActions button{
 min-height:32px!important;
}

.home2ActionIcon{
 width:20px!important;
 height:20px!important;
}

/* HOME2_COMPACT_HORIZONTAL_CARDS_END */

/* CATALOG_BOOKS_DEV_V1_START */
.explore2Page,
.catalogBookPage{
 min-height:100vh;
 background:#ffffff;
 padding-bottom:110px;
 color:#1f2a24;
}

.explore2Header,
.catalogBookTop{
 height:72px;
 display:grid;
 grid-template-columns:54px 1fr 54px;
 align-items:center;
 padding:0 16px;
 background:#fff;
 border-bottom:1px solid rgba(15,90,67,.10);
 position:sticky;
 top:0;
 z-index:50;
}

.explore2Header h1,
.catalogBookTop h1{
 margin:0;
 text-align:center;
 color:#0F5A43;
 font-size:24px;
 font-weight:950;
 letter-spacing:-.03em;
}

.explore2Header button,
.catalogBookTop button{
 border:0;
 background:#fff;
 color:#0F5A43;
 font-size:24px;
 font-weight:900;
 cursor:pointer;
}

.explore2Search{
 padding:14px 16px 8px;
 background:#fff;
}

.explore2Search input{
 width:100%;
 height:46px;
 border:1px solid rgba(216,206,190,.85);
 border-radius:16px;
 padding:0 14px;
 font-size:14px;
 background:#fff;
 outline:none;
 box-sizing:border-box;
}

.explore2Tabs{
 height:54px;
 display:grid;
 grid-template-columns:repeat(3,1fr);
 background:#fff;
 border-bottom:1px solid rgba(15,90,67,.10);
 position:sticky;
 top:72px;
 z-index:45;
}

.explore2Tabs button{
 border:0;
 background:#fff;
 color:#766b5f;
 font-weight:900;
 cursor:pointer;
 position:relative;
}

.explore2Tabs button.active{
 color:#0F5A43;
}

.explore2Tabs button.active::after{
 content:"";
 position:absolute;
 left:18px;
 right:18px;
 bottom:0;
 height:3px;
 border-radius:999px 999px 0 0;
 background:#0F5A43;
}

.explore2Highlights{
 padding:16px;
}

.explore2Highlights h2{
 margin:0;
 font-size:19px;
 color:#1f2a24;
}

.explore2Highlights p{
 margin:4px 0 0;
 color:#766b5f;
 font-size:13px;
}

.explore2Filters{
 padding:0 16px 12px;
}

.explore2Filters select{
 width:100%;
 height:42px;
 border-radius:14px;
 border:1px solid rgba(216,206,190,.85);
 background:#fff;
 color:#0F5A43;
 padding:0 12px;
 font-weight:800;
}

.catalogGrid{
 display:grid;
 grid-template-columns:repeat(3,1fr);
 gap:14px 10px;
 padding:0 16px 24px;
}

.catalogBookCard{
 position:relative;
 min-width:0;
}

.catalogBookCover{
 aspect-ratio:2 / 3;
 border-radius:12px;
 overflow:hidden;
 background:linear-gradient(145deg,#0F5A43,#8A9A47);
 display:flex;
 align-items:center;
 justify-content:center;
 color:#fff;
 cursor:pointer;
 box-shadow:0 8px 18px rgba(15,90,67,.12);
}

.catalogBookCover img{
 width:100%;
 height:100%;
 object-fit:cover;
 display:block;
}

.catalogBookCover span{
 font-size:22px;
}

.catalogAddBtn{
 position:absolute;
 top:6px;
 right:6px;
 width:28px;
 height:28px;
 border-radius:50%;
 border:0;
 background:#ffffff;
 color:#0F5A43;
 box-shadow:0 6px 14px rgba(0,0,0,.16);
 font-size:21px;
 line-height:1;
 font-weight:900;
 cursor:pointer;
 z-index:5;
}

.catalogAddBtn.added,
.catalogBookAddTop.added,
.catalogBookPrimary.added{
 background:#8A9A47!important;
 color:#fff!important;
}

.catalogBookInfo{
 padding-top:7px;
 cursor:pointer;
}

.catalogBookInfo strong{
 display:-webkit-box;
 -webkit-line-clamp:2;
 -webkit-box-orient:vertical;
 overflow:hidden;
 font-size:12.5px;
 line-height:1.15;
 color:#1f2a24;
}

.catalogBookInfo span{
 display:block;
 margin-top:3px;
 color:#766b5f;
 font-size:11px;
 white-space:nowrap;
 overflow:hidden;
 text-overflow:ellipsis;
}

.explore2Placeholder{
 margin:16px;
 padding:18px;
 border:1px solid rgba(216,206,190,.65);
 border-radius:18px;
 background:#fff;
 color:#766b5f;
}

.explore2Placeholder h2{
 margin-top:0;
 color:#0F5A43;
}

.explore2Placeholder.wide{
 grid-column:1/-1;
}

/* Página do livro importado */
.catalogBookAddTop{
 width:38px;
 height:38px;
 border-radius:50%;
 background:#0F5A43!important;
 color:#fff!important;
 justify-self:end;
 display:flex;
 align-items:center;
 justify-content:center;
}

.catalogBookHero{
 padding:20px 16px 10px;
 display:grid;
 grid-template-columns:122px 1fr;
 gap:16px;
 align-items:start;
}

.catalogBookHeroCover{
 width:122px;
 aspect-ratio:2/3;
 border-radius:18px;
 background:linear-gradient(145deg,#0F5A43,#8A9A47);
 overflow:hidden;
 box-shadow:0 16px 34px rgba(15,90,67,.18);
 display:flex;
 align-items:center;
 justify-content:center;
 color:#fff;
}

.catalogBookHeroCover img{
 width:100%;
 height:100%;
 object-fit:cover;
}

.catalogBookHeroCover span{
 font-size:30px;
}

.catalogBookHeroInfo h2{
 margin:0;
 color:#1f2a24;
 font-size:23px;
 line-height:1.08;
 letter-spacing:-.03em;
}

.catalogBookHeroInfo p{
 margin:8px 0 0;
 color:#766b5f;
 font-size:14px;
}

.catalogBookMeta{
 display:flex;
 flex-wrap:wrap;
 gap:6px;
 margin-top:12px;
}

.catalogBookMeta span{
 display:inline-flex;
 border:1px solid rgba(216,206,190,.75);
 border-radius:999px;
 padding:6px 9px;
 font-size:11px;
 color:#0F5A43;
 background:#fff;
}

.catalogBookPrimary{
 margin-top:14px;
 min-height:42px;
 border:0;
 border-radius:999px;
 background:#0F5A43;
 color:#fff;
 padding:0 14px;
 font-weight:900;
 cursor:pointer;
}

.catalogBookSection{
 padding:18px 16px 0;
}

.catalogBookSection h3{
 margin:0 0 8px;
 color:#0F5A43;
 font-size:18px;
}

.catalogBookSection p{
 margin:0;
 color:#4d5a53;
 font-size:14.5px;
 line-height:1.52;
}

.catalogRelatedRow{
 display:flex;
 gap:12px;
 overflow-x:auto;
 padding:2px 0 10px;
 scrollbar-width:none;
}

.catalogRelatedRow::-webkit-scrollbar{
 display:none;
}

.catalogRelatedCard{
 width:106px;
 flex:none;
 cursor:pointer;
}

.catalogRelatedCard div{
 width:106px;
 aspect-ratio:2/3;
 border-radius:12px;
 background:linear-gradient(145deg,#0F5A43,#8A9A47);
 overflow:hidden;
 display:flex;
 align-items:center;
 justify-content:center;
 color:#fff;
}

.catalogRelatedCard img{
 width:100%;
 height:100%;
 object-fit:cover;
}

.catalogRelatedCard strong{
 display:-webkit-box;
 -webkit-line-clamp:2;
 -webkit-box-orient:vertical;
 overflow:hidden;
 margin-top:7px;
 font-size:12px;
 color:#1f2a24;
 line-height:1.15;
}

.catalogRelatedCard span{
 display:block;
 margin-top:3px;
 font-size:11px;
 color:#766b5f;
 white-space:nowrap;
 overflow:hidden;
 text-overflow:ellipsis;
}

.catalogEmpty{
 color:#766b5f!important;
 font-size:13px!important;
}

.exploreToast{
 position:fixed;
 left:16px;
 right:16px;
 bottom:96px;
 background:#0F5A43;
 color:#fff;
 border-radius:16px;
 padding:13px 14px;
 text-align:center;
 font-weight:900;
 z-index:9999;
 box-shadow:0 16px 34px rgba(0,0,0,.18);
}

.exploreToast.error{
 background:#A32116;
}

@media(min-width:760px){
 .explore2Page,
 .catalogBookPage{
  max-width:480px;
  margin:0 auto;
  border-left:1px solid rgba(216,206,190,.55);
  border-right:1px solid rgba(216,206,190,.55);
 }
}
/* CATALOG_BOOKS_DEV_V1_END */

/* READING_TRACKER_DEV_V1_START */
.readingTrackerBox{
 background:#ffffff;
 border:1px solid rgba(216,206,190,.72);
 border-radius:18px;
 padding:14px;
 margin:14px 0;
 box-shadow:0 8px 22px rgba(15,90,67,.04);
}

.readingTrackerHead{
 display:flex;
 align-items:flex-start;
 justify-content:space-between;
 gap:12px;
 margin-bottom:12px;
}

.readingTrackerHead b{
 display:block;
 color:#0F5A43;
 font-size:15px;
}

.readingTrackerHead span{
 display:block;
 color:#766b5f;
 font-size:12px;
 margin-top:3px;
 line-height:1.3;
}

.readingTrackerHead button{
 border:0;
 background:#F6F1E7;
 color:#0F5A43;
 border-radius:999px;
 padding:8px 11px;
 font-size:12px;
 font-weight:900;
 cursor:pointer;
 white-space:nowrap;
}

.readingWeek{
 display:grid;
 grid-template-columns:repeat(7,1fr);
 gap:7px;
}

.readingWeek button{
 min-height:58px;
 border-radius:15px;
 border:1px solid rgba(216,206,190,.75);
 background:#ffffff;
 color:#0F5A43;
 cursor:pointer;
 position:relative;
 display:flex;
 flex-direction:column;
 align-items:center;
 justify-content:center;
 gap:2px;
}

.readingWeek button span{
 font-size:12px;
 font-weight:900;
}

.readingWeek button small{
 font-size:11px;
 color:#766b5f;
}

.readingWeek button.today{
 border-color:#0F5A43;
 box-shadow:0 0 0 2px rgba(15,90,67,.10);
}

.readingWeek button.checked{
 background:#0F5A43;
 color:#fff;
 border-color:#0F5A43;
}

.readingWeek button.checked small{
 color:rgba(255,255,255,.82);
}

.readingWeek button i{
 position:absolute;
 right:6px;
 top:5px;
 font-style:normal;
 font-size:11px;
 color:#fff;
}

.readingStats{
 display:grid;
 grid-template-columns:repeat(3,1fr);
 gap:8px;
 margin-top:12px;
}

.readingStats div{
 background:#F6F1E7;
 border-radius:14px;
 padding:10px;
 text-align:center;
}

.readingStats strong{
 display:block;
 color:#0F5A43;
 font-size:19px;
 line-height:1;
}

.readingStats span{
 display:block;
 color:#766b5f;
 font-size:11px;
 margin-top:4px;
}

.readingCalendarOverlay{
 position:fixed;
 inset:0;
 background:rgba(0,0,0,.35);
 z-index:99999;
 display:flex;
 align-items:flex-end;
 justify-content:center;
}

.readingCalendarCard{
 width:min(100%,480px);
 background:#fff;
 border-radius:26px 26px 0 0;
 padding:16px;
 max-height:88vh;
 overflow:auto;
 box-shadow:0 -20px 50px rgba(0,0,0,.22);
}

.readingCalendarTop{
 display:grid;
 grid-template-columns:42px 1fr 42px;
 align-items:center;
 margin-bottom:14px;
}

.readingCalendarTop button{
 width:38px;
 height:38px;
 border-radius:50%;
 border:0;
 background:#F6F1E7;
 color:#0F5A43;
 font-size:24px;
 cursor:pointer;
}

.readingCalendarTop strong{
 text-align:center;
 color:#0F5A43;
 font-size:17px;
}

.readingCalendarMonthNav{
 display:grid;
 grid-template-columns:44px 1fr 44px;
 align-items:center;
 margin-bottom:12px;
}

.readingCalendarMonthNav button{
 border:0;
 background:#F6F1E7;
 color:#0F5A43;
 border-radius:50%;
 width:38px;
 height:38px;
 font-size:18px;
 cursor:pointer;
}

.readingCalendarMonthNav b{
 text-align:center;
 color:#1f2a24;
}

.readingCalendarSummary{
 display:grid;
 grid-template-columns:repeat(3,1fr);
 gap:8px;
 margin-bottom:14px;
}

.readingCalendarSummary div{
 background:#F6F1E7;
 border-radius:14px;
 padding:10px;
 text-align:center;
}

.readingCalendarSummary strong{
 display:block;
 color:#0F5A43;
 font-size:20px;
 line-height:1;
}

.readingCalendarSummary span{
 display:block;
 color:#766b5f;
 font-size:11px;
 margin-top:4px;
}

.readingCalendarLabels,
.readingCalendarGrid{
 display:grid;
 grid-template-columns:repeat(7,1fr);
 gap:7px;
}

.readingCalendarLabels{
 margin-bottom:7px;
}

.readingCalendarLabels span{
 text-align:center;
 color:#766b5f;
 font-size:12px;
 font-weight:900;
}

.readingCalendarGrid button,
.readingCalendarGrid .empty{
 min-height:42px;
 border-radius:13px;
 border:1px solid rgba(216,206,190,.7);
 background:#fff;
 color:#0F5A43;
 font-weight:900;
 position:relative;
}

.readingCalendarGrid button{
 cursor:pointer;
}

.readingCalendarGrid button.checked{
 background:#0F5A43;
 color:#fff;
 border-color:#0F5A43;
}

.readingCalendarGrid button i{
 position:absolute;
 right:5px;
 top:3px;
 font-style:normal;
 font-size:10px;
}
/* READING_TRACKER_DEV_V1_END */
