/* =========================================================
   SHAMS LIBRARY V4.4 — public mobile hardening + reader UI
   Loaded AFTER style.css to isolate public pages from legacy
   dashboard rules.
   ========================================================= */

html{max-width:100%;overflow-x:hidden}
body.public-area,body.reader-area{width:100%;max-width:100%;min-width:0;overflow-x:hidden}
body.public-area *,body.reader-area *{min-width:0}
body.public-area img,body.reader-area img,body.public-area svg,body.reader-area svg{max-width:100%}
body.public-area .public-shell{display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;overflow-x:hidden!important}
body.public-area .public-shell .main,
html[dir="rtl"] body.public-area .public-shell .main{
  box-sizing:border-box!important;
  width:calc(100% - 32px)!important;
  max-width:1180px!important;
  min-width:0!important;
  margin:0 auto!important;
  padding:24px 0 54px!important;
  overflow:visible!important;
}
body.public-area .public-shell .main>*{max-width:100%;min-width:0}

/* ---------- Header / navigation ---------- */
body.public-area .public-header{width:100%!important;max-width:100%!important;left:0;right:0;z-index:120}
body.public-area .public-header-inner{
  box-sizing:border-box!important;
  width:calc(100% - 28px)!important;
  max-width:1220px!important;
  min-width:0!important;
  margin:0 auto!important;
  grid-template-columns:auto minmax(0,1fr) auto!important;
}
.public-nav .mobile-nav-head{display:none}
.public-nav a{display:flex!important;align-items:center;gap:8px}
.public-nav a>span:last-child>small{display:none}
.nav-svg{display:none;width:34px;height:34px;flex:0 0 34px;place-items:center;border-radius:9px;background:#f3ece1;color:#66796e}
.nav-svg svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}
.public-menu-backdrop{position:fixed;inset:0;background:rgba(46,38,29,.22);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);z-index:105;opacity:0;transition:opacity .18s ease}
.public-menu-backdrop.show{opacity:1}
.menu-lines,.menu-lines:before,.menu-lines:after{display:block;width:18px;height:2px;border-radius:999px;background:currentColor;content:"";transition:.18s ease}
.menu-lines{position:relative}.menu-lines:before{position:absolute;top:-6px}.menu-lines:after{position:absolute;top:6px}
.public-menu-btn.open .menu-lines{background:transparent}.public-menu-btn.open .menu-lines:before{top:0;transform:rotate(45deg)}.public-menu-btn.open .menu-lines:after{top:0;transform:rotate(-45deg)}

/* ---------- Buttons ---------- */
body.public-area .btn,body.reader-area .btn,
body.public-area .public-icon-btn,body.reader-area .icon-btn{
  border-radius:10px!important;
  transition:transform .16s ease,box-shadow .16s ease,filter .16s ease,border-color .16s ease!important;
}
body.public-area .btn,body.reader-area .btn{box-shadow:0 4px 0 rgba(78,64,47,.16),0 7px 18px rgba(75,59,39,.06)!important;position:relative;overflow:hidden}
body.public-area .btn.primary,body.reader-area .btn.primary{box-shadow:0 4px 0 #52685a,0 9px 20px rgba(82,104,90,.16)!important}
body.public-area .btn.download{box-shadow:0 4px 0 #685643,0 9px 20px rgba(104,86,67,.15)!important}
body.public-area .btn:active,body.reader-area .btn:active,body.public-area .public-icon-btn:active,body.reader-area .icon-btn:active{transform:translateY(3px)!important;box-shadow:0 1px 0 rgba(78,64,47,.18)!important}
@media(hover:hover){
  body.public-area .btn:hover,body.reader-area .btn:hover{transform:translateY(-2px)!important;filter:brightness(1.025)}
  body.public-area .public-icon-btn:hover,body.reader-area .icon-btn:hover{transform:translateY(-1px)!important;box-shadow:0 6px 14px rgba(75,59,39,.10)!important}
}

/* ---------- Toolbar / page width ---------- */
body.public-area .library-toolbar{width:100%;min-width:0}
body.public-area .public-search{min-width:0}
body.public-area .public-search input{min-width:0;width:100%}

/* ---------- Banner desktop ---------- */
body.public-area .warm-banner{min-width:0;max-width:100%}
body.public-area .warm-banner .hero-copy{min-width:0}
body.public-area .warm-banner .hero-copy h1,
body.public-area .warm-banner .hero-copy p{overflow-wrap:anywhere}

/* ---------- Book cards ---------- */
body.public-area .books-grid{min-width:0}
body.public-area .book-card{overflow:hidden}
body.public-area .book-card .cover{overflow:hidden}
body.public-area .book-card-kicker{display:flex;align-items:center;gap:7px;min-height:22px;margin-bottom:6px;font-size:9px;font-weight:800;color:#7c7367}
body.public-area .book-card-kicker>span{white-space:nowrap}
body.public-area .book-card-kicker em{font-style:normal;white-space:nowrap;padding:3px 7px;border-radius:999px;background:#edf2ec;color:#5c7062;border:1px solid #c3d0c5;font-size:8px}
body.public-area .book-meta h3{font-size:14px;line-height:1.55;margin:0 0 10px;white-space:normal!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
body.public-area .book-card-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:1px solid #ebe1d3;padding-top:8px;color:#8d8275;font-size:9px}
body.public-area .book-card-foot .mini-rating{border:0!important;margin:0!important;padding:0!important;display:flex;align-items:center;gap:5px;width:auto!important;color:#9a733a}
body.public-area .book-card-foot .mini-rating small{font-size:8px;color:#918678}
body.public-area .book-status{padding:2px 6px;border-radius:999px;background:#f4eee5;color:#766c60}
body.public-area .cover-ribbon{display:none!important}

/* ---------- Work page ---------- */
body.public-area .book-page-panel{overflow:hidden}
body.public-area .book-detail{grid-template-columns:minmax(220px,285px) minmax(0,1fr)!important;gap:34px!important}
body.public-area .detail-cover{width:100%!important;max-width:285px!important;margin:0!important;overflow:hidden}
body.public-area .detail-cover img{display:block!important;width:100%!important;height:auto!important;max-height:620px!important;aspect-ratio:auto!important;object-fit:contain!important;border-radius:7px;background:#eee8df}
body.public-area .detail-content{min-width:0}
.work-kicker{display:flex;align-items:center;gap:8px;flex-wrap:wrap;color:#756b5e;font-size:11px;font-weight:900;margin-bottom:8px}
.work-kicker>span{padding:5px 9px;border-radius:999px;background:#f2ece3;border:1px solid #ddd0be}
.work-kicker>i{font-style:normal;color:#b1a697}.work-kicker>em{font-style:normal;padding:5px 9px;border-radius:999px;background:#edf2ec;border:1px solid #c2d0c4;color:#5f7565}
body.public-area .detail-content h1{font-size:clamp(34px,5vw,52px)!important;line-height:1.22!important;margin:4px 0 13px!important;overflow-wrap:anywhere}
body.public-area .detail-content .lead{max-width:780px!important;font-size:13px!important;line-height:2.05!important;color:#70675c!important}
.professional-tags{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;max-width:620px}
.professional-tags .fact{display:grid!important;gap:2px;padding:9px 11px!important;background:#f8f2e8!important;text-align:right;border-radius:9px!important}
.professional-tags .fact small{font-size:8px;color:#9c9184}.professional-tags .fact b{font-size:11px}
.work-actions{margin-top:14px;display:flex!important;gap:9px!important;flex-wrap:wrap!important}
.work-actions .btn{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:8px}
.compact-share{margin-top:16px!important;padding:12px!important}.compact-share>b{font-size:10px}.share-link-row{display:flex;align-items:center;gap:8px;margin-top:8px}.share-link-row code{direction:ltr;text-align:left;display:block;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:9px 10px;background:#fffaf3;border:1px solid #e0d5c6;border-radius:8px;font-size:9px;color:#766d61}

/* ---------- Rating ---------- */
.rating-box,.comments-box{overflow:hidden}
.rating-head{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin-bottom:8px}.rating-head h2,.comments-heading h2{margin:0;font-size:22px}.rating-summary{display:grid;grid-template-columns:auto auto;gap:0 5px;align-items:baseline;text-align:left}.rating-summary strong{font-size:34px;line-height:1;color:#9b7338}.rating-summary>span{font-size:9px;color:#988d80}.rating-summary small{grid-column:1/-1;font-size:8px;color:#998e82;margin-top:3px}
body.public-area .rating-stars{direction:rtl!important;display:flex!important;gap:7px!important;margin:13px 0 7px!important;justify-content:flex-start}
body.public-area .rating-stars button{appearance:none;border:0!important;background:transparent!important;color:#d8cebf!important;font-size:36px!important;line-height:1!important;padding:2px!important;text-shadow:0 1px 0 #fff;transition:color .12s ease,transform .12s ease!important;box-shadow:none!important}
body.public-area .rating-stars button.on{color:#c8994f!important;text-shadow:0 2px 7px rgba(182,132,53,.20)}
body.public-area .rating-stars button:focus-visible{outline:2px solid #8ca091;outline-offset:3px;border-radius:4px}
body.public-area .rating-stars button:disabled{opacity:.65}
.rating-feedback{min-height:23px;display:inline-flex;align-items:center;padding:4px 9px;border-radius:999px;background:#f5efe6;color:#74695d;font-size:9px;font-weight:900;margin-bottom:8px}

/* ---------- Comments ---------- */
.comments-heading p{margin:5px 0 14px!important;font-size:10px!important}
body.public-area .comment-form{gap:10px!important}
.comment-identity{display:grid;grid-template-columns:1fr 1fr;gap:9px}
body.public-area .comment-form label{display:grid;gap:5px;font-size:9px;font-weight:900;color:#71685d}
body.public-area .comment-form input,body.public-area .comment-form textarea{box-sizing:border-box;min-width:0;width:100%;font-size:11px}
.comment-submit-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.comment-submit-row small{max-width:360px;font-size:8px;color:#9b9083;line-height:1.6}.comment-submit-row .btn{white-space:nowrap}
body.public-area .comments-list{margin-top:16px}.comment{display:grid!important;grid-template-columns:34px minmax(0,1fr);gap:10px;align-items:start}.comment-avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#e9efe8;color:#5f7365;font-weight:1000;border:1px solid #c8d3ca}.comment>div:last-child{min-width:0}.comment p{overflow-wrap:anywhere}
.honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}

/* ---------- Footer ---------- */
.site-footer{margin-top:46px;border-top:1px solid #d8ccbc;padding:25px 0 5px;color:#70685e}
.site-footer-main{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-bottom:20px}
.site-footer-brand{display:flex;align-items:center;gap:12px;max-width:560px}.footer-logo{width:54px;height:54px;flex:0 0 54px;border:1px solid #d8c9b4;background:#fff;border-radius:13px;overflow:hidden}.footer-logo img{display:block;width:100%;height:100%;object-fit:contain}.site-footer-brand b{font-size:15px;color:#594c3d}.site-footer-brand p{margin:4px 0 0;font-size:9px;line-height:1.7;color:#94897c}
.footer-links{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.footer-links a{padding:7px 9px;border-radius:8px;font-size:9px;font-weight:900;color:#6d766e}.footer-links a:hover{background:#edf1eb;color:#54695b}
.site-footer-bottom{border-top:1px solid #e6ddd0;padding:12px 0;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:8px;color:#a09689}
body.public-area .footer-note{display:none!important}

/* ---------- PDF.js reader ---------- */
body.pdfjs-reader-area{overflow-x:hidden;background:#e8e1d7}
.v44-reader-main{box-sizing:border-box!important;width:100%!important;max-width:100%!important;min-width:0!important;padding:0 12px 18px!important;overflow-x:hidden!important}
.v44-reader-shell{width:min(1180px,100%)!important;max-width:100%!important;min-width:0!important;margin:0 auto!important}
.v44-reader-top{box-sizing:border-box!important;width:100%!important;max-width:100%!important;min-width:0!important}
.pdfjs-reader{width:100%;min-width:0;border:1px solid #cabdab;background:#e6dfd5;border-radius:13px;overflow:hidden;box-shadow:0 14px 36px rgba(65,51,37,.10)}
.pdfjs-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 11px;background:#fffaf3;border-bottom:1px solid #d8cbbb;position:sticky;top:0;z-index:4}
.pdfjs-page-controls,.pdfjs-zoom-controls{display:flex;align-items:center;gap:6px}.pdf-tool-btn{min-width:37px;height:36px;border:1px solid #d0c4b4;background:#fffdf9;color:#61594f;border-radius:8px;font:inherit;font-size:11px;font-weight:900;cursor:pointer;transition:.14s ease}.pdf-tool-btn:hover{background:#f2ece3}.pdf-tool-btn:disabled{opacity:.38;cursor:not-allowed}.pdf-tool-btn.fit{padding:0 11px}
.pdf-page-field{height:36px;display:flex;align-items:center;gap:5px;padding:0 8px;border:1px solid #dfd5c8;background:#faf5ed;border-radius:8px;color:#857a6e;font-size:9px}.pdf-page-field input{width:42px;height:26px;border:0;border-radius:5px;background:#fff;text-align:center;color:#514a42;font:inherit;font-weight:900;outline:none}.pdf-page-field b{font-size:9px;font-weight:800;white-space:nowrap}
.pdfjs-stage{position:relative;box-sizing:border-box;width:100%;min-width:0;min-height:66vh;max-height:none;padding:20px 10px 30px;overflow:auto;background:linear-gradient(90deg,#ded7cd,#ebe5dc 22%,#ebe5dc 78%,#ded7cd);display:flex;justify-content:center;align-items:flex-start}
#pdfCanvas{display:block;max-width:100%;height:auto;background:#fff;box-shadow:0 12px 30px rgba(0,0,0,.18);opacity:0;transition:opacity .12s ease}#pdfCanvas.ready{opacity:1}
.pdf-loading,.pdf-error{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center;padding:20px;color:#6c6257}.pdf-loading[hidden],.pdf-error[hidden]{display:none}.pdf-loading b,.pdf-error b{font-size:13px}.pdf-loading small,.pdf-error p{font-size:9px;color:#998d80;margin:0}.reader-spinner{width:30px;height:30px;border:3px solid #d4c8b8;border-top-color:#6d8375;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
.pdfjs-mobile-nav{display:none}

/* ---------- Dark mode ---------- */
html[data-theme="dark"] body.public-area .book-card-foot{border-color:#4b433a}
html[data-theme="dark"] body.public-area .book-card-kicker{color:#b5a99a}
html[data-theme="dark"] body.public-area .book-card-kicker em,html[data-theme="dark"] .work-kicker>em{background:#354138;border-color:#536458;color:#d8e3d8}
html[data-theme="dark"] .work-kicker>span,html[data-theme="dark"] .rating-feedback{background:#37322c;border-color:#51483f;color:#d7ccbd}
html[data-theme="dark"] .professional-tags .fact{background:#332e28!important}
html[data-theme="dark"] .share-link-row code{background:#302b26;border-color:#50483f;color:#c6bbad}
html[data-theme="dark"] .site-footer{border-color:#4a4239}html[data-theme="dark"] .site-footer-bottom{border-color:#4a4239}html[data-theme="dark"] .site-footer-brand b{color:#e8dccd}html[data-theme="dark"] .footer-links a{color:#c0b5a7}
html[data-theme="dark"] .pdfjs-reader,html[data-theme="dark"] .pdfjs-stage{background:#211e1a;border-color:#4a4239}html[data-theme="dark"] .pdfjs-toolbar{background:#2b2722;border-color:#4a4239}html[data-theme="dark"] .pdf-tool-btn,html[data-theme="dark"] .pdf-page-field{background:#332e28;border-color:#50483f;color:#ddd2c4}

/* ---------- Tablet ---------- */
@media(max-width:900px){
  body.public-area .public-shell .main,html[dir="rtl"] body.public-area .public-shell .main{width:calc(100% - 24px)!important;padding-top:16px!important}
  body.public-area .book-detail{grid-template-columns:210px minmax(0,1fr)!important;gap:22px!important}
}

/* ---------- Phone ---------- */
@media(max-width:760px){
  html,body{width:100%!important;max-width:100%!important;overflow-x:hidden!important}
  body.public-area{position:relative;overscroll-behavior-x:none}
  body.public-menu-open{overflow:hidden!important}
  body.public-area .public-header-inner{width:100%!important;max-width:100%!important;padding:7px 10px!important;grid-template-columns:minmax(0,1fr) auto!important;gap:8px!important}
  body.public-area .public-brand{min-width:0!important;overflow:hidden}
  body.public-area .public-brand-copy{min-width:0!important;overflow:hidden}
  body.public-area .public-brand-copy strong{font-size:15px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  body.public-area .public-brand-copy small{display:none!important}
  body.public-area .public-logo{width:47px!important;height:47px!important;flex-basis:47px!important}
  body.public-area .public-header-actions{display:flex!important;gap:6px!important}
  body.public-area .public-menu-btn{display:grid!important}

  body.public-area .public-nav{
    display:flex!important;visibility:hidden;opacity:0;pointer-events:none;transform:translateY(-8px) scale(.985);
    position:fixed!important;top:74px!important;right:10px!important;left:10px!important;width:auto!important;max-width:none!important;
    z-index:115!important;padding:12px!important;border:1px solid #d7cabb!important;border-radius:16px!important;background:#fffaf3!important;
    box-shadow:0 24px 55px rgba(57,44,31,.20)!important;flex-direction:column!important;align-items:stretch!important;gap:5px!important;transition:.17s ease!important
  }
  body.public-area .public-nav.open{visibility:visible;opacity:1;pointer-events:auto;transform:none}
  .public-nav .mobile-nav-head{display:grid!important;gap:2px;padding:4px 6px 10px;border-bottom:1px solid #ebe2d6;margin-bottom:4px}.public-nav .mobile-nav-head>span{font-size:13px;font-weight:1000;color:#584d40}.public-nav .mobile-nav-head>small{font-size:8px;color:#9a8f82}
  body.public-area .public-nav a{display:grid!important;grid-template-columns:38px minmax(0,1fr)!important;gap:9px!important;align-items:center!important;width:100%!important;padding:9px!important;border-radius:11px!important;text-align:right!important;background:transparent!important;color:#675f55!important}
  body.public-area .public-nav a.active{background:#edf2ec!important;color:#536b5b!important}
  body.public-area .public-nav a>span:last-child{display:grid;gap:1px}.public-nav a>span:last-child>b{font-size:11px}.public-nav a>span:last-child>small{display:block!important;font-size:8px;font-weight:500;color:#a09486}
  body.public-area .public-nav .nav-svg{display:grid!important}
  html[data-theme="dark"] body.public-area .public-nav{background:#2b2722!important;border-color:#51483f!important}.public-menu-backdrop{top:0}

  body.public-area .public-shell .main,html[dir="rtl"] body.public-area .public-shell .main{
    box-sizing:border-box!important;width:calc(100% - 18px)!important;max-width:100%!important;min-width:0!important;margin:0 auto!important;padding:12px 0 38px!important;overflow:hidden!important
  }
  body.public-area .library-toolbar{box-sizing:border-box!important;width:100%!important;max-width:100%!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:7px!important;margin-bottom:12px!important;padding-bottom:10px!important}
  body.public-area .public-search{width:100%!important;max-width:100%!important;min-width:0!important}
  body.public-area .public-search input{box-sizing:border-box!important;width:100%!important;max-width:100%!important;min-width:0!important;height:42px!important}
  .toolbar-link{font-size:8px!important}

  /* compact mobile promo, never a long strip */
  body.public-area .warm-banner,body.public-area .warm-banner.has-banner-image,body.public-area .warm-banner.has-banner-cover{
    box-sizing:border-box!important;width:100%!important;max-width:100%!important;min-width:0!important;min-height:0!important;height:auto!important;display:grid!important;grid-template-columns:104px minmax(0,1fr)!important;align-items:stretch!important;border-radius:14px!important;overflow:hidden!important;margin-bottom:14px!important
  }
  body.public-area .warm-banner:not(.has-banner-image):not(.has-banner-cover){grid-template-columns:1fr!important}
  body.public-area .warm-banner.has-banner-image .banner-wide-media{position:relative!important;inset:auto!important;width:104px!important;height:145px!important;min-height:0!important;order:0!important;overflow:hidden!important}
  body.public-area .warm-banner.has-banner-image .banner-wide-media picture,body.public-area .warm-banner.has-banner-image .banner-wide-media img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important}
  body.public-area .warm-banner.has-banner-image .banner-wide-media:after{display:none!important}
  body.public-area .warm-banner .banner-cover{display:block!important;width:104px!important;height:145px!important;padding:0!important;overflow:hidden!important;order:0!important;background:#eee7dc}
  body.public-area .warm-banner .banner-cover img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;margin:0!important;transform:none!important}
  body.public-area .warm-banner .hero-copy{box-sizing:border-box!important;width:100%!important;max-width:none!important;min-width:0!important;padding:12px 11px!important;order:1!important;position:relative!important;text-align:right!important;align-self:center!important;background:transparent!important}
  body.public-area .warm-banner .hero-kicker{font-size:7px!important;padding:3px 6px!important;margin:0!important;border-width:1px!important}
  body.public-area .warm-banner h1{font-size:20px!important;line-height:1.3!important;margin:7px 0 4px!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden!important}
  body.public-area .warm-banner p{font-size:9px!important;line-height:1.65!important;margin:0 0 8px!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden!important}
  body.public-area .warm-banner .hero-actions{display:block!important;margin:0!important}
  body.public-area .warm-banner .hero-actions .btn{min-height:34px!important;width:auto!important;padding:6px 9px!important;font-size:8px!important;box-shadow:0 3px 0 rgba(78,64,47,.13)!important}
  body.public-area .warm-banner .hero-actions .btn.ghost{display:none!important}

  body.public-area .stats{box-sizing:border-box!important;width:100%!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important}
  body.public-area .stat{min-width:0!important;min-height:78px!important;padding:9px!important}.stat strong{font-size:21px!important}.stat small,.stat span{font-size:8px!important}
  body.public-area .achievement-grid{grid-template-columns:1fr!important}.achievement-card{min-width:0!important}
  body.public-area .category-row{box-sizing:border-box!important;max-width:100%!important;overflow-x:auto!important;margin-inline:0!important;padding-inline:0!important}

  body.public-area .books-grid{box-sizing:border-box!important;width:100%!important;max-width:100%!important;grid-template-columns:1fr!important;gap:9px!important}
  body.public-area .book-card{box-sizing:border-box!important;width:100%!important;max-width:100%!important;grid-template-columns:86px minmax(0,1fr)!important;gap:10px!important;min-height:132px!important;padding:8px!important}
  body.public-area .book-card .cover{width:86px!important;height:129px!important;min-width:86px!important;aspect-ratio:auto!important;margin:0!important}
  body.public-area .book-card .cover img{width:100%!important;height:100%!important;object-fit:cover!important}
  body.public-area .book-card .book-meta{padding:6px 2px!important;justify-content:center!important;align-items:stretch!important;text-align:right!important;overflow:hidden!important}
  body.public-area .book-card-kicker{margin-bottom:5px!important;flex-wrap:wrap}.book-card-kicker em{font-size:7px!important;padding:2px 5px!important}
  body.public-area .book-meta h3{font-size:14px!important;line-height:1.5!important;margin-bottom:8px!important}
  body.public-area .book-card-foot{font-size:8px!important}.book-card-foot .mini-rating small{display:none}

  body.public-area .newsletter-card{box-sizing:border-box!important;width:100%!important;max-width:100%!important;overflow:hidden!important;padding:14px!important}.newsletter-form{min-width:0!important}.newsletter-form input{min-width:0!important;width:100%!important}

  /* Work page */
  body.public-area .book-page-panel{box-sizing:border-box!important;width:100%!important;max-width:100%!important;padding:12px!important}
  body.public-area .book-detail{display:block!important;width:100%!important;max-width:100%!important}
  body.public-area .detail-cover{box-sizing:border-box!important;width:min(230px,72vw)!important;max-width:72vw!important;margin:0 auto 16px!important;padding:6px!important}
  body.public-area .detail-cover img{width:100%!important;height:auto!important;max-height:none!important;object-fit:contain!important;aspect-ratio:auto!important}
  body.public-area .detail-content{text-align:right!important;min-width:0!important;width:100%!important}
  .work-kicker{justify-content:center!important;font-size:9px!important}.work-kicker>span,.work-kicker>em{padding:4px 7px!important}
  body.public-area .detail-content h1{font-size:29px!important;line-height:1.3!important;text-align:center!important;margin:8px 0 12px!important;overflow-wrap:anywhere!important}
  body.public-area .detail-content .lead{font-size:11px!important;line-height:1.95!important;text-align:right!important;overflow-wrap:anywhere!important}
  .professional-tags{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:5px!important}.professional-tags .fact{padding:7px 5px!important;text-align:center!important}.professional-tags .fact small{font-size:7px!important}.professional-tags .fact b{font-size:9px!important;overflow-wrap:anywhere}
  .work-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:7px!important}.work-actions .btn{width:100%!important;min-height:42px!important;padding:8px!important;font-size:10px!important}.work-actions .btn.primary{grid-column:1/-1!important}
  .compact-share{max-width:100%!important;overflow:hidden!important}.share-link-row{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important}.share-link-row code{max-width:100%!important;font-size:8px!important}
  body.public-area .interaction-grid{grid-template-columns:1fr!important;width:100%!important;max-width:100%!important;gap:10px!important}.rating-box,.comments-box{box-sizing:border-box!important;width:100%!important;max-width:100%!important;padding:13px!important}
  .rating-head{align-items:center}.rating-head h2,.comments-heading h2{font-size:19px!important}.rating-summary strong{font-size:29px!important}
  body.public-area .rating-stars{justify-content:center!important;gap:6px!important}.rating-stars button{font-size:34px!important}
  .rating-feedback{display:flex!important;justify-content:center!important;width:max-content;max-width:100%;margin-inline:auto}
  .comment-identity{grid-template-columns:1fr!important}.comment-submit-row{align-items:stretch;flex-direction:column}.comment-submit-row .btn{width:100%!important}.comment-submit-row small{text-align:center}

  .site-footer{margin-top:30px!important;padding-top:18px!important}.site-footer-main{display:grid!important;gap:15px!important}.site-footer-brand{align-items:flex-start!important}.footer-logo{width:46px!important;height:46px!important;flex-basis:46px!important}.site-footer-brand b{font-size:13px!important}.site-footer-brand p{font-size:8px!important}.footer-links{display:grid!important;grid-template-columns:1fr 1fr!important;gap:5px!important}.footer-links a{text-align:center;background:#f4eee5;border:1px solid #e3d8ca;padding:8px!important}.site-footer-bottom{display:grid!important;text-align:center!important;justify-content:center!important;gap:4px!important}

  /* Reader */
  .v44-reader-main{padding:0 6px 10px!important}.v44-reader-shell{width:100%!important}.v44-reader-top{display:grid!important;grid-template-columns:40px minmax(0,1fr)!important;gap:7px!important;padding:7px 2px!important}.v44-reader-top .reader-brand-mini{width:40px!important;height:40px!important}.v44-reader-top .reader-title{grid-column:2!important;min-width:0!important}.v44-reader-top .reader-title b,.v44-reader-top .reader-title small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.v44-reader-top .reader-tools{grid-column:1/-1!important;display:grid!important;grid-template-columns:40px minmax(0,1fr)!important;gap:6px!important;width:100%!important}.v44-reader-top .reader-tools .icon-btn{width:40px!important}.v44-reader-top .reader-tools .btn{width:100%!important;justify-content:center!important}.v44-reader-top .reader-tools .btn.ghost{grid-column:1/-1!important}
  .pdfjs-reader{border-radius:10px!important}.pdfjs-toolbar{display:grid!important;grid-template-columns:1fr!important;gap:6px!important;padding:7px!important}.pdfjs-page-controls,.pdfjs-zoom-controls{justify-content:center!important}.pdfjs-stage{min-height:calc(100vh - 245px)!important;padding:10px 5px 18px!important}.pdfjs-zoom-controls{display:none!important}.pdfjs-mobile-nav{position:sticky;bottom:0;z-index:5;display:grid!important;grid-template-columns:1fr auto 1fr;gap:5px;align-items:center;padding:7px;background:rgba(255,250,243,.96);border-top:1px solid #d7cabb}.pdfjs-mobile-nav button{height:40px;border:1px solid #cabdac;background:#fffdf8;border-radius:8px;color:#5f574e;font:inherit;font-size:9px;font-weight:900}.pdfjs-mobile-nav button:disabled{opacity:.4}.pdfjs-mobile-nav span{font-size:9px;font-weight:900;color:#796f63;white-space:nowrap}
}

@media(max-width:380px){
  body.public-area .public-logo{width:43px!important;height:43px!important;flex-basis:43px!important}
  body.public-area .public-icon-btn{width:38px!important;height:38px!important}
  body.public-area .warm-banner,body.public-area .warm-banner.has-banner-image,body.public-area .warm-banner.has-banner-cover{grid-template-columns:92px minmax(0,1fr)!important}
  body.public-area .warm-banner.has-banner-image .banner-wide-media,body.public-area .warm-banner .banner-cover{width:92px!important;height:132px!important}
  body.public-area .warm-banner h1{font-size:18px!important}
  body.public-area .book-card{grid-template-columns:78px minmax(0,1fr)!important}.book-card .cover{width:78px!important;height:117px!important;min-width:78px!important}
  body.public-area .detail-content h1{font-size:26px!important}
  .professional-tags{grid-template-columns:1fr!important}.professional-tags .fact{display:flex!important;justify-content:space-between!important;text-align:right!important}
}

html[data-theme="dark"] body.public-area .footer-links a{background:#332e28;border-color:#4a4239;color:#cfc3b5}
html[data-theme="dark"] body.public-area .comment-avatar{background:#354138;border-color:#536458;color:#d8e3d8}
html[data-theme="dark"] body.public-area .public-nav .mobile-nav-head{border-color:#4a4239}


/* =========================================================
   V4.5 — readability polish
   ========================================================= */
body.public-area .btn,body.reader-area .btn{font-size:13px!important;font-weight:900!important;letter-spacing:0!important;padding:10px 15px!important;min-height:46px}
body.public-area .public-nav a{font-size:13px!important}
body.public-area .book-meta h3{font-size:16px!important}
body.public-area .book-card-kicker{font-size:11px!important}
body.public-area .book-card-kicker em{font-size:10px!important}
body.public-area .book-card-foot{font-size:11px!important}
body.public-area .book-card-foot .mini-rating small{font-size:10px}
body.public-area .detail-content .lead{font-size:15px!important;line-height:2!important}
.work-kicker{font-size:12px}
.professional-tags .fact small{font-size:10px}.professional-tags .fact b{font-size:13px}
.compact-share>b{font-size:12px}.share-link-row code{font-size:11px}
.comments-heading p{font-size:12px!important}
body.public-area .comment-form label{font-size:11px}
body.public-area .comment-form input,body.public-area .comment-form textarea{font-size:14px!important;line-height:1.7}
.rating-feedback{font-size:11px}
.pdf-tool-btn{font-size:13px;height:42px;min-width:42px}
.pdf-page-field{height:42px;font-size:11px}.pdf-page-field b{font-size:11px}
.pdf-loading b,.pdf-error b{font-size:16px}.pdf-loading small,.pdf-error p{font-size:12px}
.pdf-native-wrap{width:100%;min-height:70vh;display:grid;grid-template-rows:auto minmax(520px,1fr) auto;gap:8px}
.pdf-native-frame{width:100%;height:72vh;min-height:520px;border:0;background:#fff}
.pdf-fallback-note{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;padding:9px 12px;background:#f7f0e6;border:1px solid #dfd2c0;border-radius:9px;color:#75695c;font-size:11px}
.pdf-fallback-actions{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;padding:5px}
@media(max-width:760px){
  body.public-area .btn,body.reader-area .btn{font-size:12px!important;min-height:46px!important;padding:9px 12px!important}
  body.public-area .public-nav a>span:last-child>b{font-size:13px!important}.public-nav a>span:last-child>small{font-size:10px!important}
  body.public-area .warm-banner .hero-actions .btn{font-size:11px!important;min-height:40px!important;padding:8px 11px!important}
  body.public-area .book-card-kicker{font-size:10px!important}.book-card-kicker em{font-size:9px!important}
  body.public-area .book-meta h3{font-size:16px!important}
  body.public-area .book-card-foot{font-size:10px!important}
  body.public-area .detail-content .lead{font-size:13px!important}
  .work-kicker{font-size:10px!important}
  .professional-tags .fact small{font-size:9px!important}.professional-tags .fact b{font-size:11px!important}
  .work-actions .btn{font-size:12px!important;min-height:46px!important}
  .share-link-row code{font-size:10px!important}
  .comments-heading p{font-size:11px!important}
  body.public-area .comment-form label{font-size:10px!important}
  body.public-area .comment-form input,body.public-area .comment-form textarea{font-size:16px!important} /* يمنع zoom تلقائي في iOS */
  .pdfjs-mobile-nav button,.pdfjs-mobile-nav span{font-size:11px!important}
  .pdf-native-wrap{grid-template-rows:auto minmax(62vh,1fr) auto}.pdf-native-frame{height:65vh;min-height:460px}
}
