.opf-book{box-sizing:border-box;perspective:2000px;touch-action:pan-y;display:block;position:relative}.opf-book--top,.opf-book--bottom{touch-action:pan-x}.opf-page{transform-style:preserve-3d;display:none;position:absolute}.opf-page--turning{outline:1px solid var(--opf-page-edge,#0003);outline-offset:-1px}.opf-sheet,.opf-shadow{pointer-events:none;position:absolute;top:0;left:0}:root{--color-primary:#35246c;--color-rule:#d0202e;--color-secondary:#37b5e5;--color-muted:#56585a;--color-canvas:#efeef5;--color-paper:#fff;--color-ink:#231f20;--font-display:"Georama Variable", system-ui, sans-serif;--font-display-stretch:125%;--font-display-weight:800;--font-ui:"Nunito Sans Variable", system-ui, sans-serif}@font-face{font-family:Georama Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62.5% 150%;src:url(/assets/georama-vietnamese-wdth-normal-DNH2ZlJn.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Georama Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62.5% 150%;src:url(/assets/georama-latin-ext-wdth-normal-Dapa9SRa.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Georama Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62.5% 150%;src:url(/assets/georama-latin-wdth-normal-XDeFlrIY.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito Sans Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-sans-cyrillic-ext-wght-normal-7w74d1lj.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito Sans Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-sans-cyrillic-wght-normal-B9hoeQUC.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito Sans Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-sans-vietnamese-wght-normal-BhFYcaJr.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito Sans Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-sans-latin-ext-wght-normal-DMEAsnHD.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito Sans Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-sans-latin-wght-normal-BWQ3gi2K.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--focus:var(--color-primary);--paper-shadow:0 1px 2px #140c3233, 0 16px 30px -12px #140c3266;--page-turn-ms:.45s;color:var(--color-ink);font-family:var(--font-ui);line-height:1.45}*,:before,:after{box-sizing:border-box}body{background:var(--color-canvas);margin:0}a{color:var(--color-primary)}:focus-visible{outline:2px solid var(--focus);outline-offset:3px;border-radius:4px}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.display{font-family:var(--font-display);font-stretch:var(--font-display-stretch);font-weight:var(--font-display-weight);color:var(--color-primary);margin:0;line-height:1.15}.site{flex-direction:column;min-height:100svh;display:flex}.site-screen{flex-direction:column;flex:1;display:flex}.site-screen--fit{flex:none;height:100svh}.site-header{background:var(--color-paper);border-bottom:3px solid var(--color-rule)}.site-header__bar{--bar-button:44px;padding-block:2px;padding-inline:max(16px, env(safe-area-inset-left)) max(16px, env(safe-area-inset-right));grid-template-columns:minmax(max-content,1fr) auto minmax(max-content,1fr);align-items:center;gap:8px;display:grid}.site-header__start{justify-self:start}.site-header__end{justify-self:end;gap:8px;display:flex}.site-header__logo{line-height:0;display:block}.site-header__logo img{width:auto;height:68px}@media (width>=900px){.site-header__logo img{height:84px}}.header-button{min-width:var(--bar-button);height:var(--bar-button);border:1.5px solid var(--color-primary);font:inherit;color:var(--color-primary);white-space:nowrap;background:var(--color-paper);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-weight:600;text-decoration:none;display:inline-flex}.header-button[aria-label]{padding:0}.header-button:hover{background:var(--color-canvas)}.header-button--primary{color:var(--color-paper);background:var(--color-primary)}.header-button--primary:hover{background:color-mix(in srgb, var(--color-primary) 85%, black)}.header-button svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.menu{border:1px solid color-mix(in srgb, var(--color-primary) 15%, transparent);min-width:190px;color:var(--color-primary);background:var(--color-paper);box-shadow:var(--paper-shadow);border-radius:14px;margin:0;padding:6px;inset:auto}.menu .header-button{color:var(--color-primary);background:0 0;border:0;border-radius:10px;justify-content:start;display:flex}.menu .header-button:hover{background:var(--color-canvas)}.site-footer{background:var(--color-paper);border-top:3px solid var(--color-rule);font-size:.8rem}.site-footer:after{content:"";background:linear-gradient(to right, var(--color-secondary), var(--color-primary));height:8px;display:block}.site-footer__inner{max-width:1100px;padding-block:32px calc(32px + env(safe-area-inset-bottom));padding-inline:max(16px, env(safe-area-inset-left)) max(16px, env(safe-area-inset-right));gap:36px;margin:0 auto;display:grid}@media (width>=800px){.site-footer__inner{grid-template-columns:auto 1fr;align-items:start}}.site-footer__company{width:150px;height:auto}.site-footer__legal p{margin:0 0 10px}.site-footer__legal p:last-child{margin:0}.site-footer__legal a{overflow-wrap:anywhere}.scene{min-height:0;padding:clamp(16px, 3svh, 36px) max(16px, env(safe-area-inset-right)) 20px max(16px, env(safe-area-inset-left));flex-direction:column;flex:1;gap:clamp(12px,2.5svh,28px);display:flex;overflow:clip}.scene__title{text-align:center;text-wrap:balance;color:var(--color-primary);margin:0;font-size:1rem;font-weight:700;line-height:1.25}.scene--message{text-align:center;justify-content:center;align-items:center}.scene--message h1{font-size:clamp(1.35rem,1rem + 1.5vw,2rem)}.scene--message button{font:inherit;color:var(--color-paper);background:var(--color-primary);cursor:pointer;border:0;border-radius:999px;padding:10px 20px;font-weight:600}.scene__actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:16px;display:flex}.book-area{flex:1;place-items:center;min-height:0;display:grid;container-type:size}.book-stage{--book-max-height:min(100cqh - 72px, 1000px);width:min(100cqw, calc(var(--book-max-height) * var(--page-ratio) * 2))}.book-stage[data-rest=single]{width:min(100cqw, calc(var(--book-max-height) * var(--page-ratio)))}.book{transition:transform var(--page-turn-ms) ease-in-out;position:relative}.book-stage[data-rest=back] .book{transform:translate(25%)}.book__guide{justify-content:center;align-items:center;padding:6%;display:flex;position:absolute;inset:0 50% 0 0}.book__guide-panel{background:var(--color-paper);max-height:100%;box-shadow:var(--paper-shadow);border-radius:16px;padding:clamp(16px,2.2vw,28px);font-size:.95rem;overflow:auto}.book__guide-panel h2{color:var(--color-primary);margin:0 0 12px;font-size:1.1rem}.book__guide-panel dl{gap:10px;margin:0;display:grid}.book__guide-panel dl>div{align-items:baseline;gap:12px;display:flex}.book__guide-panel dt{gap:4px;min-width:4.5em;display:flex}.book__guide-panel dd{color:var(--color-muted);margin:0}.book__guide-panel kbd{border:1px solid color-mix(in srgb, var(--color-primary) 30%, transparent);color:var(--color-primary);background:var(--color-canvas);font:inherit;border-radius:6px;padding:2px 8px;font-size:.85em;font-weight:600}.book__guide-panel p{color:var(--color-muted);margin:16px 0 0}@media (height<=500px){.book__guide{display:none}.site-header__bar{padding-block:0}.site-header__logo img{height:48px}.scene{padding-top:8px;padding-bottom:12px}.scene__title{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.book-stage[data-rest=front] .book{transform:translate(-25%)}}.book__guide [data-input=pointer]{display:none}@media (hover:hover) and (pointer:fine){.book__guide-panel dl>[data-input=pointer]{display:flex}.book__guide [data-input=touch]{display:none}}.book__pages{touch-action:pan-y pinch-zoom}.book-stage[data-pinched] .book__pages{touch-action:pan-x pan-y pinch-zoom}.book__page{background:#fff;overflow:hidden}.book__page img,.closed-book img{-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:100%;display:block}.book-stage:not([data-rest=single]) .opf-page--left:after,.book-stage:not([data-rest=single]) .opf-page--right:after{content:"";pointer-events:none;position:absolute;inset:0}.book-stage:not([data-rest=single]) .opf-page--left:after{background:linear-gradient(270deg,#00000038,#0000000f 3%,#0000 9%)}.book-stage:not([data-rest=single]) .opf-page--right:after{background:linear-gradient(90deg,#00000038,#0000000f 3%,#0000 9%)}.book__lens{position:relative}.book-stage[data-zooming] .book__pages{pointer-events:none}.book-stage[data-zooming] .book__lens{cursor:zoom-in}.book-stage[data-zooming] .book__lens[data-zoomed]{cursor:none}.book__loupe{--zoom:2;--size:clamp(240px, min(28vw, 45svh), 560px);--r:calc(var(--size) / 2);--y:calc(var(--r) - var(--zoom-y) * var(--zoom));z-index:20;width:var(--size);height:var(--size);pointer-events:none;translate:calc(var(--zoom-x) - var(--r)) calc(var(--zoom-y) - var(--r));opacity:0;background-color:#fff;background-image:var(--loupe-left), var(--loupe-right);background-repeat:no-repeat;background-size:calc(var(--page-w) * var(--zoom)) calc(var(--page-h) * var(--zoom));background-position:calc(var(--r) - var(--zoom-x) * var(--zoom)) var(--y), calc(var(--r) - (var(--zoom-x) - var(--page-w)) * var(--zoom)) var(--y);border-radius:50%;position:absolute;top:0;left:0;scale:.6;box-shadow:0 0 0 3px #ffffffe6,0 0 0 4px #00000059,inset 0 0 24px #0000002e,0 14px 32px #0000008c}.book__lens[data-zoomed] .book__loupe{opacity:1;transition:scale .15s ease-out,opacity .15s ease-out;scale:1}.book__shadow{inset:0 calc(50% * (1 - var(--paper-right))) 0 calc(50% * (1 - var(--paper-left)));box-shadow:var(--paper-shadow);position:absolute}.book__edges{--stack:9px;transition:width var(--page-turn-ms) ease-in-out;background:repeating-linear-gradient(90deg,#e9e4d8 0 1px,#b9b2a2 1px 2px);position:absolute;top:.6%;bottom:.6%;box-shadow:0 10px 14px -6px #140c3259}.book__edges--left{width:calc(var(--stack) * var(--read));border-radius:2px 0 0 2px;right:100%}.book__edges--right{width:calc(var(--stack) * (1 - var(--read)));border-radius:0 2px 2px 0;left:100%}.book__edges--left{opacity:round(down, var(--paper-left), 1)}.book__edges--right{opacity:round(down, var(--paper-right), 1)}.book-stage[data-rest=single] .book__edges--left{opacity:0}.book-controls{justify-content:center;align-items:center;gap:16px;margin-top:16px;display:flex}.book-controls__count{text-align:center;font-variant-numeric:tabular-nums;min-width:7ch;color:var(--color-muted)}.book-controls button{white-space:nowrap;font:inherit;color:var(--color-primary);background:var(--color-paper);border:1.5px solid var(--color-primary);cursor:pointer;border-radius:999px;padding:9px 18px;font-weight:600}.book-controls .book-controls__next,.book-controls button[aria-pressed=true]{color:var(--color-paper);background:var(--color-primary)}.book-controls__zoom{align-items:center;gap:8px;display:none}.book-controls__zoom svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round}@media (hover:hover) and (pointer:fine){.book-controls__zoom{display:inline-flex}}.book-controls button:disabled{opacity:.4;cursor:default}.shelf{--shelf-gap:clamp(16px, 5vw, 72px);justify-content:center;align-items:flex-start;gap:28px var(--shelf-gap);flex-wrap:wrap;margin:0 auto auto;padding:0;list-style:none;display:flex}.shelf__book{width:min-content;color:var(--color-primary);flex-direction:column;align-items:center;gap:14px;text-decoration:none;display:flex}.shelf__title{text-align:center;text-wrap:balance;font-weight:700;line-height:1.3}.closed-book{width:min(calc((100vw - 32px - var(--shelf-gap)) / 2), 46svh, calc(46svh * var(--page-ratio)), 340px);aspect-ratio:var(--page-ratio);box-shadow:1px 0 0 #e9e4d8, 2px 0 0 #b9b2a2, 3px 0 0 #e9e4d8, 4px 0 0 #b9b2a2, var(--paper-shadow);background:#fff;transition:transform .2s ease-out;display:block}.shelf__book:hover .closed-book,.shelf__book:focus-visible .closed-book{transform:translateY(-6px)rotate(-1deg)}@media (prefers-reduced-motion:reduce){.book,.book__edges,.book__lens[data-zoomed] .book__loupe,.closed-book{transition:none}}
