:root{--navy:#071d3b;--blue:#0f5b9e;--sky:#d8eef9;--red:#bc2633;--paper:#f8f6f1}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;font-family:Arial,Helvetica,sans-serif;background:radial-gradient(circle at 50% 15%,#1c5484 0,#0a2d52 42%,#06162e 100%);color:white}
body{min-height:100vh;display:flex;flex-direction:column;overflow-x:hidden}
body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.08;background:repeating-linear-gradient(115deg,transparent 0 32px,#fff 33px 34px)}
.topbar{height:84px;padding:15px clamp(18px,4vw,58px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ffffff26;background:#061a35de;backdrop-filter:blur(10px);z-index:5}
.eyebrow{margin:0 0 3px;color:#a9d7f0;font-size:10px;font-weight:700;letter-spacing:.22em}
h1{margin:0;font-family:Georgia,serif;font-size:clamp(22px,3vw,34px);font-weight:700}
.actions{display:flex;align-items:center;gap:10px}.text-btn{border:1px solid #ffffff40;border-radius:999px;background:#ffffff0d;color:white;padding:9px 15px;font-weight:700;cursor:pointer}.text-btn:hover{background:#fff;color:var(--navy)}
.zoom-controls{height:38px;display:flex;align-items:center;border:1px solid #ffffff40;border-radius:999px;background:#ffffff0d;overflow:hidden}.zoom-btn{width:38px;height:38px;border:0;background:transparent;color:white;font-size:22px;line-height:1;cursor:pointer}.zoom-btn:hover:not(:disabled){background:#fff;color:var(--navy)}.zoom-btn:disabled{opacity:.3;cursor:not-allowed}.zoom-level{min-width:50px;font-size:12px;font-weight:700;font-variant-numeric:tabular-nums}
main{position:relative;flex:1;min-height:0;display:grid;place-items:center;padding:12px 14px}
.reader{width:100%;text-align:center}.edition{font-size:10px;letter-spacing:.25em;color:#bcdff1;margin:0 0 9px;font-weight:700}
.book-wrap{width:100%;display:grid;grid-template-columns:52px minmax(0,1fr) 52px;align-items:center;justify-content:center;gap:8px}
.book{position:relative;width:100%;max-height:calc(100vh - 185px);padding:4px;overflow:auto;perspective:1800px;outline:none;filter:drop-shadow(0 24px 30px #0009);scrollbar-color:#7ebddd #061a35;scrollbar-width:thin}
.book:after{content:"";position:absolute;left:7%;right:7%;bottom:-13px;height:15px;background:#0008;filter:blur(10px);border-radius:50%;z-index:-1}
.spread{--page-width:620px;position:relative;display:flex;justify-content:center;align-items:stretch;width:max-content;margin:auto;transform-style:preserve-3d}
.spread:after{content:"";position:absolute;top:0;bottom:0;left:50%;width:2px;transform:translateX(-1px);background:linear-gradient(90deg,#0004,#fff4,#0004);box-shadow:0 0 14px #0008;z-index:4;pointer-events:none}
.spread:has(.page.single):after{display:none}
.page{position:relative;width:var(--page-width);flex:0 0 var(--page-width);aspect-ratio:8.5/11;transform-style:preserve-3d;background:var(--paper);overflow:hidden;cursor:zoom-in;box-shadow:inset 10px 0 20px #00000018,0 0 0 1px #fff6}
.book.zoomed .page{cursor:zoom-out}.page.single{width:var(--page-width);border-radius:2px 7px 7px 2px}
.page.left{border-radius:6px 0 0 6px;box-shadow:inset -12px 0 18px #0002,0 0 0 1px #fff6}
.page.right{border-radius:0 6px 6px 0;box-shadow:inset 12px 0 18px #0002,0 0 0 1px #fff6}
.page img{display:block;width:100%;height:100%;object-fit:contain;object-position:top center;background:white}
.page-badge{position:absolute;inset:0;display:grid;place-items:center;background:#071d3b73;color:#fff;font-family:Georgia,serif;font-size:clamp(20px,3vw,44px);font-weight:700;letter-spacing:.12em;text-shadow:0 2px 8px #000;border:clamp(2px,.35vw,5px) solid #fff9}
.placeholder{height:100%;display:grid;place-content:center;padding:12%;text-align:center;background:linear-gradient(145deg,#eef8fc,#d5edf8 48%,#f7fbfd);color:var(--navy)}
.placeholder:before{content:"THE VETERAN ADVANTAGE";font-family:Georgia,serif;font-weight:700;font-size:clamp(12px,1.3vw,19px);letter-spacing:.05em;border-top:8px solid var(--navy);padding-top:22px}
.placeholder strong{display:block;margin-top:34px;font-family:Georgia,serif;font-size:clamp(30px,5vw,72px);font-weight:400}.placeholder span{margin-top:14px;font-size:clamp(10px,1vw,14px);letter-spacing:.18em;color:#557287}.mini-placeholder{aspect-ratio:8.5/11;display:grid;place-items:center;background:#dceef7;color:#12335a;font-family:Georgia,serif;font-size:28px}
.page-shine{position:absolute;inset:0;pointer-events:none;background:linear-gradient(100deg,#fff0 0 38%,#fff5 48%,#fff0 58%);transform:translateX(-120%)}
.spread.turn-next{animation:spreadNext .46s ease-in-out}.spread.turn-prev{animation:spreadPrev .46s ease-in-out}
.spread.turn-next .page-shine,.spread.turn-prev .page-shine{animation:shine .46s ease}
@keyframes spreadNext{0%{transform:translateX(0);opacity:1}48%{transform:translateX(-5%) rotateY(-9deg);opacity:.35}52%{transform:translateX(5%) rotateY(9deg);opacity:.35}100%{transform:translateX(0);opacity:1}}
@keyframes spreadPrev{0%{transform:translateX(0);opacity:1}48%{transform:translateX(5%) rotateY(9deg);opacity:.35}52%{transform:translateX(-5%) rotateY(-9deg);opacity:.35}100%{transform:translateX(0);opacity:1}}
@keyframes shine{to{transform:translateX(120%)}}
.nav{width:46px;height:46px;border-radius:50%;border:1px solid #ffffff3d;background:#061a35cc;color:white;font-size:34px;line-height:1;cursor:pointer;transition:.2s}.nav:hover:not(:disabled){background:var(--red);transform:scale(1.06)}.nav:disabled{opacity:.25;cursor:not-allowed}
.controls{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;margin-top:17px;font-size:12px;color:#d4e9f6}.controls>:first-child{text-align:left}.hint{text-align:right}.centerfold-label{font-size:10px;letter-spacing:.16em;color:#ffd45d;font-weight:700}
.thumbs{position:fixed;z-index:10;top:84px;left:0;bottom:0;width:150px;padding:22px 16px;background:#06182ff2;border-right:1px solid #ffffff24;display:flex;flex-direction:column;gap:14px;transform:translateX(-100%);transition:.25s;overflow:auto}.thumbs.open{transform:none}.thumb{border:1px solid transparent;background:transparent;color:white;padding:5px;border-radius:6px;cursor:pointer}.thumb img{width:100%;display:block;background:white;box-shadow:0 5px 12px #0007}.thumb span{display:block;margin-top:5px;font-size:11px}.thumb.active{border-color:#70c2ec;background:#ffffff12}
footer{display:flex;justify-content:space-between;padding:12px clamp(18px,4vw,58px);font-size:11px;letter-spacing:.04em;color:#a9cbe0;border-top:1px solid #ffffff1d}footer p{margin:0}footer a{color:white;text-decoration:none;font-weight:700}
body.full .topbar,body.full footer{display:none}body.full main{height:100vh;padding:8px}body.full .reader{height:100%;display:flex;flex-direction:column}body.full .book-wrap{flex:1;min-height:0}body.full .book{max-height:calc(100vh - 62px)}
@media(max-width:780px){.topbar{height:auto;min-height:72px;padding:10px 12px;gap:8px}.eyebrow{font-size:8px}.actions{gap:5px}.actions .text-btn{padding:8px 10px;font-size:11px}.zoom-controls{height:34px}.zoom-btn{width:31px;height:34px;font-size:20px}.zoom-level{min-width:43px;font-size:11px}.book-wrap{grid-template-columns:34px minmax(0,1fr) 34px;gap:2px}.book{max-height:calc(100vh - 180px);padding:2px}.nav{width:31px;height:31px;font-size:24px}.reader{width:100%}.spread{display:flex}.page{margin:0}.page.single{margin:auto}.hint{display:none}.controls{grid-template-columns:1fr auto}.centerfold-label{justify-self:end}footer{display:none}.thumbs{top:72px}}
@media(max-width:520px){.topbar{flex-direction:column;align-items:stretch}.topbar>div:first-child{text-align:center}h1{font-size:20px}.eyebrow{display:none}.actions{justify-content:center}.text-btn{padding:7px 9px!important}.zoom-level{min-width:40px}.edition{letter-spacing:.14em}.centerfold-label{display:none}.controls{display:block}.controls>:first-child{text-align:center}.thumbs{top:98px}}
@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}}
