/* Synergy Hotel Flipbook v1.0.0 · book-first reader · green Synergy accent */
@import url('./tokens.css');
*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%}body{height:100dvh;display:grid;grid-template-rows:92px 60px minmax(0,1fr);color:var(--color-ink);background:var(--color-surface);font:var(--text-body)/1.45 var(--font-body)}
button,input,a{ -webkit-tap-highlight-color:transparent}button,input{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer;color:inherit}button:disabled{cursor:default;opacity:.38}a{color:var(--color-accent)}button{border:1px solid transparent;background:transparent;border-radius:var(--radius-control);min-height:42px;padding:8px 13px;white-space:nowrap}button:hover:not(:disabled),.tools>a:hover{background:var(--color-accent-light)}button:active:not(:disabled){background:var(--color-line)}:focus-visible{outline:3px solid #3077ba;outline-offset:3px}input{accent-color:var(--color-accent)}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip-link{position:fixed;top:-90px;left:12px;z-index:100;background:#fff;padding:12px}.skip-link:focus{top:12px}
.masthead{display:flex;align-items:center;gap:28px;padding:14px 32px;background:var(--color-paper);border-bottom:1px solid var(--color-line)}.brand{display:flex;align-items:center;flex-shrink:0}.brand img{width:148px;height:64px;object-fit:contain}.book-heading{border-left:1px solid var(--color-line);padding-left:28px}.book-heading h1{font-size:22px;font-weight:650;letter-spacing:-.4px;line-height:1.2;margin:0 0 5px}.book-heading p{font-size:13px;letter-spacing:.7px;margin:0;color:var(--color-muted)}.book-heading p span{margin-left:18px;font-size:11px}.edition{margin-left:auto;font-size:14px;font-weight:600;text-align:right}.edition span{display:block;font-size:12px;color:var(--color-muted);font-weight:400}
.tools{display:flex;align-items:center;gap:4px;padding:8px 24px;background:var(--color-paper);border-bottom:1px solid var(--color-line)}.tools button,.tools a{font-size:14px;font-weight:550}.tools #menuButton{display:flex;gap:10px;align-items:center}.tool-spacer{flex:1}.tools [aria-pressed=true]{background:var(--color-accent-light);color:var(--color-accent)}.download-link{padding:9px 15px;border:1px solid var(--color-line);border-radius:8px;text-decoration:none;white-space:nowrap}.download-link span{margin-left:8px}.workspace{display:grid;grid-template-columns:0 minmax(0,1fr);min-height:0;position:relative}.toc-open .workspace{grid-template-columns:290px minmax(0,1fr)}
.sidebar{background:var(--color-paper);border-right:1px solid var(--color-line);display:none;min-height:0;overflow:hidden;flex-direction:column}.toc-open .sidebar{display:flex}.side-head{display:flex;align-items:center;justify-content:space-between;padding:17px 14px 8px 22px}.side-head h2{font-size:17px;margin:0;font-weight:650}.icon-button{font-size:27px;line-height:1;padding:5px;width:42px;height:42px}.search-label{font-size:12px;color:var(--color-muted);margin:0 22px 6px}.search-wrap{position:relative;margin:0 18px 18px}.search-wrap input{width:100%;height:44px;border:1px solid var(--color-line);border-radius:6px;background:var(--color-surface);padding:10px 34px 10px 12px;font-size:14px;min-width:0}.search-wrap input::-webkit-search-cancel-button{display:none}.search-wrap button{position:absolute;right:0;top:0;padding:4px 9px;font-size:22px}.side-tabs{display:flex;border-bottom:1px solid var(--color-line);padding:0 18px;gap:14px}.side-tabs button{border-radius:0;padding:9px 3px;font-size:14px;color:var(--color-muted);border-bottom:2px solid transparent}.side-tabs button[aria-selected=true]{color:var(--color-accent);border-bottom-color:var(--color-accent);font-weight:650}.side-tabs span{font-size:11px;margin-left:3px}.results-label{margin:12px 22px 4px;font-size:12px;color:var(--color-muted);min-height:18px}#chapterList{overflow:auto;flex:1;padding:0 10px 16px;overscroll-behavior:contain}.chapter-item{display:grid;grid-template-columns:1fr auto;column-gap:12px;text-align:left;white-space:normal;width:100%;padding:13px 12px;border-bottom:1px solid #eef1ee;border-radius:0;font-size:14px;line-height:1.4}.chapter-item small{display:block;color:var(--color-muted);font-size:11px;margin-top:4px}.chapter-item .chapter-page{font-variant-numeric:tabular-nums;font-size:12px;color:var(--color-muted);padding-top:2px}.chapter-item[aria-current=page]{background:var(--color-accent-light);box-shadow:inset 3px 0 var(--color-accent);color:var(--color-accent)}.chapter-item strong{font-weight:600}.search-excerpt{font-size:12px;color:var(--color-muted);line-height:1.5;margin-top:5px;display:block;overflow-wrap:anywhere}.empty-results{font-size:14px;margin:20px 12px;color:var(--color-muted)}.side-foot{padding:15px 22px;border-top:1px solid var(--color-line);font-size:11px;color:var(--color-muted)}.side-foot span{display:block;margin-top:3px;font-size:10px}
.reader{display:grid;grid-template-rows:43px minmax(0,1fr) 25px 54px 35px;min-width:0;min-height:0;position:relative;outline:none}.reading-context{display:flex;align-items:center;justify-content:space-between;padding:0 28px;gap:16px}.reading-context p{font-size:13px;font-weight:600;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.reading-context>span{font-size:11px;color:var(--color-muted);white-space:nowrap}.stage{min-width:0;min-height:0;display:grid;place-items:center;position:relative;background:var(--color-stage);overflow:hidden;margin:0 20px;border-radius:4px;touch-action:pan-y}.book-shell{position:relative;filter:drop-shadow(0 9px 13px #273b3326)}.book-shell.front-cover{transform:translateX(calc(var(--page-width) / -2))}#book{position:relative}.book-page{background:#fff;overflow:hidden}.page-img{width:100%;height:100%;object-fit:contain;display:block;user-select:none;-webkit-user-drag:none}.page-load-error{position:absolute;inset:0;display:grid;place-content:center;text-align:center;padding:20px;background:#fff;font-size:14px}.loading{position:absolute;inset:0;display:grid;place-items:center;margin:0;background:var(--color-stage);color:var(--color-muted);font-size:14px;pointer-events:none}.reading-hint{font-size:11px;text-align:center;color:var(--color-muted);padding-top:6px}kbd{font:inherit}.pager{display:flex;align-items:center;justify-content:center;gap:28px;padding:5px 12px}.pager>button{border:1px solid var(--color-line);background:#fff;min-width:88px;font-size:14px;min-height:40px}.pager>button:last-child{color:white;background:var(--color-accent);border-color:var(--color-accent)}.pager>button:last-child:hover:not(:disabled){background:#184a3a}.page-position{display:flex;align-items:center;gap:7px;font-size:14px;font-variant-numeric:tabular-nums}.page-position input{width:54px;height:36px;text-align:center;border:1px solid var(--color-line);border-radius:6px;background:white;color:var(--color-ink);padding:4px;appearance:textfield;-moz-appearance:textfield}.page-position input::-webkit-inner-spin-button{appearance:none}.page-position>span{color:var(--color-muted)}.spread-label{font-size:11px;border-left:1px solid var(--color-line);margin-left:4px;padding-left:10px}.progress-row{display:flex;align-items:center;gap:12px;padding:0 30px 12px;max-width:760px;width:100%;margin:auto}.progress-row>span{font-size:10px;color:var(--color-muted)}.progress-row input{width:100%;height:22px;margin:0;cursor:pointer}.shade{position:fixed;inset:0;border-radius:0;border:0;background:#10211e66;z-index:20}.shade:hover:not(:disabled){background:#10211e66}
dialog{color:var(--color-ink);border:1px solid var(--color-line);padding:0;max-width:none;max-height:none;border-radius:12px;box-shadow:0 20px 90px #001d1844}dialog::backdrop{background:#172a27b3;backdrop-filter:blur(3px)}#zoomDialog{width:96vw;height:94dvh;background:var(--color-surface);overflow:hidden}#zoomDialog[open]{display:grid;grid-template-rows:60px minmax(0,1fr) 56px}.zoom-toolbar{display:flex;align-items:center;padding:8px 18px;gap:16px;border-bottom:1px solid var(--color-line);background:white}.zoom-toolbar h2{font-size:16px;margin:0}.zoom-controls{display:flex;align-items:center;gap:4px;margin:auto}.zoom-controls button{font-size:20px}.zoom-controls output{min-width:54px;font-size:13px;text-align:center}.zoom-controls #zoomReset{font-size:13px}.zoom-scroll{overflow:auto;overscroll-behavior:contain;background:var(--color-stage);touch-action:pan-x pan-y}.zoom-canvas{width:max(100%,calc(var(--zoom-width,500px) + 40px));min-height:100%;display:flex;align-items:flex-start;justify-content:center;padding:20px}.zoom-canvas img{width:var(--zoom-width,500px);height:auto;max-width:none;display:block;box-shadow:0 5px 18px #172a2726}.zoom-footer{display:flex;align-items:center;justify-content:space-between;padding:6px 18px;background:white;border-top:1px solid var(--color-line)}.zoom-footer button{font-size:13px}.text-top{display:flex;justify-content:space-between;align-items:center;padding:14px 20px;border-bottom:1px solid var(--color-line)}.text-top h2{font-size:18px;margin:0}#textDialog{width:min(760px,94vw);height:86dvh;overflow:auto;background:white}.text-note{padding:0 24px;font-size:13px;color:var(--color-muted)}#pageText{padding:4px 24px 30px;font:16px/1.9 var(--font-body);white-space:pre-wrap;overflow-wrap:anywhere}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);padding:12px 20px;color:#fff;background:var(--color-ink);box-shadow:0 3px 15px #0002;z-index:80;border-radius:8px;font-size:14px;width:max-content;max-width:90vw;text-align:center}.no-js{position:fixed;inset:170px 20px auto;background:white;padding:30px;z-index:100}.fallback-page{width:100%;height:100%;object-fit:contain}
@media(min-width:1700px){.masthead{padding-inline:40px}.toc-open .workspace{grid-template-columns:320px minmax(0,1fr)}.side-head h2{font-size:19px}.chapter-item{font-size:16px}.chapter-item small{font-size:12px}.tools button,.tools a{font-size:16px}}
@media(max-width:980px){body{grid-template-rows:78px 56px minmax(0,1fr)}.masthead{padding:10px 20px;gap:20px}.brand img{width:118px;height:56px}.book-heading{padding-left:20px}.book-heading h1{font-size:19px}.book-heading p span{display:none}.edition{font-size:12px}.tools{padding:6px 12px;gap:0}.tools button,.tools a{font-size:13px;padding:8px 10px}.workspace,.toc-open .workspace{grid-template-columns:minmax(0,1fr)}.sidebar{display:none;position:fixed;inset:0 auto 0 0;width:min(340px,88vw);z-index:30;box-shadow:10px 0 50px #10211e33}.toc-open .sidebar{display:flex}.reader{grid-template-rows:38px minmax(0,1fr) 25px 54px 30px}.reading-context{padding:0 20px}.stage{margin:0 12px}.reading-hint{font-size:10px}.desktop-tool{display:none}}
@media(max-width:560px){body{grid-template-rows:72px 54px minmax(0,1fr)}.masthead{padding:8px 12px;gap:13px}.brand img{width:100px;height:48px}.book-heading{padding-left:13px}.book-heading h1{font-size:16px;letter-spacing:-.2px;max-width:210px}.book-heading p{font-size:10px;letter-spacing:.1px}.edition{display:none}.tools{gap:0;justify-content:space-between;padding:5px 7px}.tools button,.tools a{padding:6px 7px;font-size:12px;min-height:40px}.tool-spacer{display:none}#searchButton{display:none}#menuButton span{display:none}.download-link{border:0}.download-link span{margin-left:2px}.reader{grid-template-rows:34px minmax(0,1fr) 24px 52px 29px}.reading-context{padding:0 14px;gap:8px}.reading-context p{font-size:11px}.reading-context>span{font-size:10px}.stage{margin:0 8px}.reading-hint{font-size:9px;white-space:normal;padding-inline:10px}.pager{gap:15px;padding:4px 10px}.pager>button{min-width:44px;padding:5px 10px}.pager-word{display:none}.page-position{font-size:13px;gap:6px}.page-position input{width:48px}.spread-label{display:none}.progress-row{padding:0 18px 7px}#zoomDialog{width:100vw;height:100dvh;border-radius:0;border:0}#zoomDialog[open]{grid-template-rows:56px minmax(0,1fr) 52px}.zoom-toolbar{gap:4px;padding:6px 8px}.zoom-toolbar h2{font-size:13px;white-space:nowrap}.zoom-controls{gap:0}.zoom-controls button{min-width:32px;padding:6px}.zoom-controls output{min-width:44px;font-size:11px}.zoom-controls #zoomReset{font-size:11px}.zoom-footer{padding:5px 6px;gap:0}.zoom-footer button{font-size:11px;padding:6px}.zoom-canvas{padding:12px;width:max(100%,calc(var(--zoom-width,300px) + 24px))}}
@media(max-height:540px) and (orientation:landscape){body{grid-template-rows:52px 46px minmax(0,1fr)}.brand img{height:36px}.book-heading h1{font-size:16px}.book-heading p{display:none}.tools{padding-block:2px}.reader{grid-template-rows:28px minmax(0,1fr) 0 46px 25px}.reading-hint{display:none}.reading-context{padding-top:2px}.stage{margin-inline:16px}.pager{padding-block:2px}.pager>button{min-height:34px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
/* Explicit sizing also covers the upstream wrapper class spelling. */
.stf__wrapper{position:relative;width:100%;height:100%}.stf__block{top:0;left:0}
