:root{color-scheme:light;--navy:#142538;--ink:#1c2d3c;--muted:#5d6873;--yellow:#f2cb55}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{scroll-behavior:smooth}
body{margin:0;background:#edf2f6;color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased}
button{font:inherit}
.wrap{width:min(calc(100% - 64px),1040px);margin-inline:auto}
header{background:var(--navy);color:#fff}
.masthead{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:29px 0 25px;border-bottom:1px solid #ffffff35}
.academy-link{display:block;flex:0 1 390px;min-width:0;line-height:0}
.academy-logo{display:block;width:100%;height:auto;max-width:390px}
.okpost-link{display:block;flex:0 1 170px;min-width:0;line-height:0}
.okpost-logo{display:block;width:100%;height:auto}
.strap{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px 0 20px;font-size:15px;color:#e0e5eb}
.strap p{margin:0}

main:focus{outline:none}
.reader{width:100%;background:var(--navy);color:#fff;padding:28px 32px 32px}
.story{max-width:600px;margin:0 auto 20px;text-align:center}
.series{color:var(--yellow);font-size:15px;font-weight:700;letter-spacing:2.2px;margin:0 0 5px}
h1{font-size:27px;line-height:1.25;font-weight:600;letter-spacing:-.3px;margin:0 0 6px}
.detail{color:#d8e1ea;font-size:14px;font-style:italic;margin:0}
.page-picker{display:flex;justify-content:center;gap:6px;max-width:600px;margin:0 auto 20px}
.page-picker button{flex:0 1 42px;min-width:0;min-height:44px;padding:5px 0;border:1px solid #647487;border-radius:2px;background:transparent;color:#e0e5eb;font-size:14px;cursor:pointer}
.page-picker button[aria-current="page"]{color:var(--navy);background:var(--yellow);border-color:var(--yellow);font-weight:700}
.page-picker button:hover:not([aria-current]){border-color:var(--yellow);color:var(--yellow)}
.stage{position:relative;width:min(100%,600px);margin:0 auto;padding:0;background:var(--navy);scroll-margin-top:16px}
.stage img{display:block;width:100%;height:auto;object-fit:contain}
.image-message{padding:12px 16px;border:1px solid #647487;color:#fff;text-align:center;font-size:14px}
.image-message a{color:var(--yellow)}
.controls{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:20px;max-width:600px;margin:22px auto 0}
.controls button{font-size:14px;font-weight:600;color:var(--navy);background:var(--yellow);border:1px solid var(--yellow);border-radius:3px;padding:12px 18px;min-height:46px;cursor:pointer;white-space:nowrap}
.controls button:first-child{justify-self:start}
.controls button:last-child{justify-self:end}
.controls button:hover:not(:disabled){background:#ffdb6a;border-color:#ffdb6a}
.controls button:disabled{background:transparent;color:#a2afbe;border-color:#647487;cursor:default}
.counter{margin:0;color:#fff;font-size:14px;text-align:center;white-space:nowrap}
.keyboard-hint,.no-script{margin:18px auto 0;text-align:center;font-size:12px;color:#c3cdd7}
a:focus-visible,button:focus-visible{outline:3px solid var(--yellow);outline-offset:4px}
.skip-link{position:absolute;top:12px;left:12px;z-index:10;padding:10px 16px;background:var(--yellow);color:var(--navy);transform:translateY(-180%)}
.skip-link:focus{transform:translateY(0)}
footer .wrap{padding:21px 0 28px;display:flex;justify-content:space-between;gap:20px;font-size:12px;color:var(--muted)}
footer p{margin:0}
@media(max-width:600px){
 .wrap{width:calc(100% - 36px)}
 .masthead{padding:23px 0 21px;gap:16px}
 .academy-link{flex-basis:235px}.academy-logo{max-width:235px}.okpost-link{flex-basis:110px}
 .strap{font-size:13px;gap:10px;padding:14px 0 17px}
 .reader{padding:23px 8px 25px}.story{padding:0 10px;margin-bottom:18px}h1{font-size:24px}.series{font-size:14px}
 .page-picker{gap:4px;margin-bottom:16px}.page-picker button{flex-basis:40px}
 .controls{gap:8px;margin-top:19px}.controls button{font-size:13px;padding:11px 9px}.counter{font-size:12px}
 .keyboard-hint{display:none}
 footer .wrap{display:block}footer p+p{margin-top:5px}
}
@media(max-width:380px){.masthead{gap:10px}.academy-link{flex-basis:190px}.okpost-link{flex-basis:92px}.controls{gap:5px}.controls button{padding-inline:7px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.back-to-comics{color:#e0e5eb;font-size:13px;text-underline-offset:4px}.reader-back{margin:18px auto 0;text-align:center;font-size:13px}.reader-back a{color:#d8e1ea;text-underline-offset:4px}footer a{color:inherit;text-underline-offset:3px}
