@charset "UTF-8";
.reader-body{background:var(--pale)}
.reader-header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px 32px;background:var(--paper);border-bottom:1px solid var(--line)}
.reader-home{font-size:.875rem;display:flex;gap:10px;align-items:center}
.reader-home:hover{color:var(--cyan)}
.reader-title{text-align:center}.reader-title p{font-size:.875rem;color:var(--text);margin:4px 0 0}
.reader-edition{font-size:.75rem;letter-spacing:1px;color:var(--text)}
.reader-main{max-width:1080px;margin:0 auto;padding:24px 28px}
.reader-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:16px;background:white;border:1px solid var(--line)}
.reader-toolbar label{font-size:.875rem;font-weight:600}
.reader-section-picker,.reader-page-picker,.reader-zoom{display:flex;align-items:center;gap:9px;min-width:0}
.reader-toolbar select,.reader-toolbar input,.reader-control{font:inherit;font-size:.875rem;min-height:44px;border:1px solid #9eafbd;border-radius:3px;background:white;color:var(--navy);padding:9px 12px}
.reader-toolbar select{max-width:100%;min-width:0}.reader-toolbar input{width:68px;font-size:1rem;padding-inline:8px}
.reader-control{cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:10px;font-weight:600}
.reader-control:hover:not(:disabled){background:var(--navy);color:white;border-color:var(--navy)}
.reader-control:disabled{opacity:.45;cursor:default}
.reader-toolbar :focus-visible,.reader-control:focus-visible,.page-viewport:focus-visible{outline:3px solid var(--cyan);outline-offset:3px}
.reader-status{font-size:.875rem;color:var(--text);text-align:center;margin:13px 0;min-height:24px}
.page-viewport{max-height:calc(100dvh - 260px);min-height:300px;overflow:auto;overscroll-behavior:contain;padding:16px;background:#dfe7ec;border:1px solid var(--line);scrollbar-gutter:stable both-edges}
.book-page{width:calc(min(100%, 700px) * var(--reader-zoom, 1));min-height:500px;margin:0 auto;background:white;box-shadow:0 3px 15px #041f3c1a;position:relative}
.book-page img{display:block;width:100%;height:auto;user-select:none;-webkit-user-select:none;-webkit-user-drag:none;-webkit-touch-callout:none}
.book-page img[hidden]{display:none}
.reader-navigation{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:18px;padding-bottom:5px}
#page-counter{font-size:.875rem;font-variant-numeric:tabular-nums;white-space:nowrap}
.reader-copyright{font-size:.75rem;text-align:center;color:var(--text);margin:16px 0 0}
.reader-error{padding:18px;background:white;border-left:3px solid var(--red);margin-bottom:16px}
.reader-error p{margin-bottom:12px;font-size:1rem}.reader-error[hidden]{display:none}
.reader-noscript{text-align:center;font-size:1rem}
.print-message{display:none}
@media(max-width:850px){.reader-toolbar{justify-content:center}.reader-section-picker{flex:1 1 100%}.reader-section-picker select{flex:1}.reader-edition{display:none}.reader-title{text-align:right}.reader-header{padding:16px 20px}.reader-main{padding:18px 16px}.page-viewport{max-height:calc(100dvh - 300px)}}
@media(max-width:540px){.reader-header{gap:16px;align-items:center}.reader-home{font-size:.875rem;max-width:105px;line-height:1.4}.reader-title .brand{font-size:.9375rem}.reader-title p{font-size:.8125rem}.reader-main{padding:12px 10px}.reader-toolbar{padding:12px;gap:12px;justify-content:space-between}.reader-page-picker,.reader-zoom{gap:6px}.reader-page-picker input{width:54px}.reader-control{padding:9px 11px}.reader-toolbar select{padding:9px 6px}.reader-toolbar label{font-size:.875rem}.page-viewport{padding:6px;max-height:calc(100dvh - 300px);min-height:250px;scrollbar-gutter:auto}.book-page{min-height:350px}.reader-navigation{gap:10px}.reader-navigation .reader-control{font-size:.875rem;gap:6px}.reader-status{margin:8px 0}}
@media(max-width:360px){.reader-toolbar{justify-content:center}.reader-page-picker{flex:1 1 100%;justify-content:center}.reader-navigation{gap:6px}.reader-navigation .reader-control{padding-inline:8px}.reader-title .brand{font-size:.875rem}}
@media print{.reader-header,.reader-main,.skip-link{display:none!important}.print-message{display:block;color:#041f3c}.reader-body{background:white}}
