/* Personalizzazione del lettore Mozilla PDF.js per il bonus del libro. */
#bonusNavigation { position: absolute; inset: 0 0 auto; height: 48px; display: flex; align-items: center; justify-content: center; gap: 8px; background: #245b50; color: white; font: 15px/1.2 system-ui, sans-serif; z-index: 100; }
#bonusNavigation a, #bonusNavigation button { color: white; padding: 10px 12px; border: 1px solid #ffffff65; border-radius: 5px; background: transparent; font: inherit; text-decoration: none; cursor: pointer; min-height: 40px; }
#bonusNavigation button:disabled { opacity: .5; cursor: wait; }
#bonusNavigation a:hover, #bonusNavigation button:hover { background: #ffffff20; }
#bonusNavigation :focus-visible { outline: 3px solid #ffdc86; outline-offset: 1px; }
#outerContainer { position: absolute; top: 48px; height: calc(100% - 48px); width: 100%; }
#bonusContents { position: fixed; inset: 0; margin: auto; padding: 0; width: min(600px, 94vw); max-height: 85vh; border: 1px solid #245b50; border-radius: 8px; background: white; color: #263a33; font: 16px/1.4 system-ui, sans-serif; }
#bonusContents::backdrop { background: #0008; }
.bonusDialogHeader { display: flex; justify-content: space-between; align-items: center; padding: 12px 16px; position: sticky; top: 0; background: #245b50; color: white; }
.bonusDialogHeader h2 { font: 600 20px/1.3 system-ui, sans-serif; }
#bonusClose { border: 1px solid white; color: white; background: transparent; padding: 10px; border-radius: 4px; font: inherit; cursor: pointer; }
.bonusContentsList button { display: block; width: 100%; text-align: left; background: white; color: #245b50; padding: 14px 16px; border: 0; border-bottom: 1px solid #dce4de; font: inherit; min-height: 48px; cursor: pointer; }
.bonusContentsList button:hover, .bonusContentsList button:focus-visible { background: #e7eee9; }
.bonusContentsList small { white-space: nowrap; color: #52645c; }
@media (max-width: 420px) { #bonusNavigation { gap: 5px; font-size: 14px; } #bonusNavigation a, #bonusNavigation button { padding: 10px 8px; } }
