#site-reader-panel { position:fixed; bottom:0; left:0; right:0; z-index:10000; max-height:42vh; overflow:auto; background:#fff; color:#17213b; border-top:3px solid #173f81; padding:.7rem 1rem; box-shadow:0 -3px 18px #0003; font:1rem/1.5 sans-serif; }
#site-reader-panel[hidden] { display:none; }
#site-reader-panel p { margin:.4rem 0 0; }
.site-reader-buttons { display:flex; flex-wrap:wrap; gap:.4rem; margin-top:.4rem; }
.site-reader-buttons button,#site-reader-toggle { font:inherit; cursor:pointer; }
.site-reader-buttons button { padding:.35rem .65rem; background:#eef3fa; color:#17213b; border:1px solid #46628a; border-radius:.3rem; }
.site-reader-buttons button:focus-visible,#site-reader-toggle:focus-visible { outline:3px solid #b75500; outline-offset:3px; }
.site-reader-current { outline:3px solid #b75500 !important; outline-offset:3px; scroll-margin-top:110px; scroll-margin-bottom:44vh; }
#site-reader-toggle { border:0; background:transparent; color:inherit; padding:10px 15px; text-align:left; }
@media(max-width:600px) { #site-reader-panel { max-height:45vh; font-size:.9rem; } .site-reader-buttons button { min-height:44px; } }

#site-reader-launcher { display:flex; justify-content:flex-end; width:100%; box-sizing:border-box; padding:4px 8px; margin-bottom:.75rem; background:#f3f5f8; color:#17213b; border-bottom:1px solid #d4deeb; }
#site-reader-toggle.site-reader-inline { min-height:44px; padding:.4rem .65rem; border:1px solid #bccbdf; border-radius:.3rem; background:white; color:#17213b; }

body.site-reader-active { padding-bottom:45vh !important; }

#site-reader-position { overflow-wrap:anywhere; }
