@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:400;src:url(./nunito-cyrillic-ext-400-normal-CuPM9foi.woff2)format("woff2"),url(./nunito-cyrillic-ext-400-normal-xaE7D4Sw.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:400;src:url(./nunito-cyrillic-400-normal-xAOo5cBP.woff2)format("woff2"),url(./nunito-cyrillic-400-normal-D1j0u8EH.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:400;src:url(./nunito-vietnamese-400-normal-BHkVbP3T.woff2)format("woff2"),url(./nunito-vietnamese-400-normal-DtOtW02z.woff)format("woff");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;font-style:normal;font-display:swap;font-weight:400;src:url(./nunito-latin-ext-400-normal-i-8OOpdj.woff2)format("woff2"),url(./nunito-latin-ext-400-normal-CjMJVfGn.woff)format("woff");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;font-style:normal;font-display:swap;font-weight:400;src:url(./nunito-latin-400-normal-r8SDr6Up.woff2)format("woff2"),url(./nunito-latin-400-normal-DKg4f3fz.woff)format("woff");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;font-style:normal;font-display:swap;font-weight:600;src:url(./nunito-cyrillic-ext-600-normal-CWPPjBOD.woff2)format("woff2"),url(./nunito-cyrillic-ext-600-normal-vnfu4DTE.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:600;src:url(./nunito-cyrillic-600-normal-DJGQ2h05.woff2)format("woff2"),url(./nunito-cyrillic-600-normal-BUjmtIuu.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:600;src:url(./nunito-vietnamese-600-normal-BY8O6Cug.woff2)format("woff2"),url(./nunito-vietnamese-600-normal-DO1RqFw5.woff)format("woff");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;font-style:normal;font-display:swap;font-weight:600;src:url(./nunito-latin-ext-600-normal-Dd9Zuxh1.woff2)format("woff2"),url(./nunito-latin-ext-600-normal-BKUpuB78.woff)format("woff");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;font-style:normal;font-display:swap;font-weight:600;src:url(./nunito-latin-600-normal-Br8yIETf.woff2)format("woff2"),url(./nunito-latin-600-normal-Cd0eNu1l.woff)format("woff");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;font-style:normal;font-display:swap;font-weight:700;src:url(./nunito-cyrillic-ext-700-normal-BuR0mlCG.woff2)format("woff2"),url(./nunito-cyrillic-ext-700-normal-DfoqN4Gs.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(./nunito-cyrillic-700-normal-DP36NgGt.woff2)format("woff2"),url(./nunito-cyrillic-700-normal-DfHRUDv-.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(./nunito-vietnamese-700-normal-Ch8EUCfz.woff2)format("woff2"),url(./nunito-vietnamese-700-normal-C9SQsXvj.woff)format("woff");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;font-style:normal;font-display:swap;font-weight:700;src:url(./nunito-latin-ext-700-normal-BWeMsAzO.woff2)format("woff2"),url(./nunito-latin-ext-700-normal-D4woHhbd.woff)format("woff");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;font-style:normal;font-display:swap;font-weight:700;src:url(./nunito-latin-700-normal-Dort48En.woff2)format("woff2"),url(./nunito-latin-700-normal-OcDqTBcA.woff)format("woff");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;font-style:normal;font-display:swap;font-weight:800;src:url(./nunito-cyrillic-ext-800-normal-B-cvGohL.woff2)format("woff2"),url(./nunito-cyrillic-ext-800-normal-pjRatrRO.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(./nunito-cyrillic-800-normal-D3igD7Kl.woff2)format("woff2"),url(./nunito-cyrillic-800-normal-DymMgApb.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(./nunito-vietnamese-800-normal-D_CZYdm9.woff2)format("woff2"),url(./nunito-vietnamese-800-normal-Dz0hZPb5.woff)format("woff");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;font-style:normal;font-display:swap;font-weight:800;src:url(./nunito-latin-ext-800-normal-CtU8tJOV.woff2)format("woff2"),url(./nunito-latin-ext-800-normal-CDcxIxx8.woff)format("woff");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;font-style:normal;font-display:swap;font-weight:800;src:url(./nunito-latin-800-normal-Dz8SOQK_.woff2)format("woff2"),url(./nunito-latin-800-normal-D-J0wlBY.woff)format("woff");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;font-style:normal;font-display:swap;font-weight:900;src:url(./nunito-cyrillic-ext-900-normal-BLeVovcl.woff2)format("woff2"),url(./nunito-cyrillic-ext-900-normal-DKFql_-q.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:900;src:url(./nunito-cyrillic-900-normal-CWPcV0_V.woff2)format("woff2"),url(./nunito-cyrillic-900-normal-Dr1fjxoU.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:900;src:url(./nunito-vietnamese-900-normal-D6LWQAy_.woff2)format("woff2"),url(./nunito-vietnamese-900-normal-WV2-fBew.woff)format("woff");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;font-style:normal;font-display:swap;font-weight:900;src:url(./nunito-latin-ext-900-normal-Dllsvgjo.woff2)format("woff2"),url(./nunito-latin-ext-900-normal-CTBZd6bf.woff)format("woff");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;font-style:normal;font-display:swap;font-weight:900;src:url(./nunito-latin-900-normal-BVB1fGs6.woff2)format("woff2"),url(./nunito-latin-900-normal-CVn49sIn.woff)format("woff");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:Noto Sans Armenian;font-style:normal;font-display:swap;font-weight:400;src:url(./noto-sans-armenian-armenian-400-normal-Ch5r40Hp.woff2)format("woff2"),url(./noto-sans-armenian-armenian-400-normal-C5VgNYqZ.woff)format("woff");unicode-range:U+308,U+530-58F,U+2010,U+2024,U+25CC,U+FB13-FB17}@font-face{font-family:Noto Sans Armenian;font-style:normal;font-display:swap;font-weight:400;src:url(./noto-sans-armenian-latin-ext-400-normal-C823r8Uj.woff2)format("woff2"),url(./noto-sans-armenian-latin-ext-400-normal-Bxcemm4S.woff)format("woff");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:Noto Sans Armenian;font-style:normal;font-display:swap;font-weight:400;src:url(./noto-sans-armenian-latin-400-normal-DxR-yXGo.woff2)format("woff2"),url(./noto-sans-armenian-latin-400-normal-CJ-gdOPa.woff)format("woff");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:Noto Sans Armenian;font-style:normal;font-display:swap;font-weight:600;src:url(./noto-sans-armenian-armenian-600-normal-nM_9o1Cx.woff2)format("woff2"),url(./noto-sans-armenian-armenian-600-normal-DvD7u1IA.woff)format("woff");unicode-range:U+308,U+530-58F,U+2010,U+2024,U+25CC,U+FB13-FB17}@font-face{font-family:Noto Sans Armenian;font-style:normal;font-display:swap;font-weight:600;src:url(./noto-sans-armenian-latin-ext-600-normal-CpQMsuOw.woff2)format("woff2"),url(./noto-sans-armenian-latin-ext-600-normal-LFLQ5hZy.woff)format("woff");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:Noto Sans Armenian;font-style:normal;font-display:swap;font-weight:600;src:url(./noto-sans-armenian-latin-600-normal-CDbSjmdq.woff2)format("woff2"),url(./noto-sans-armenian-latin-600-normal-DAE0AWo-.woff)format("woff");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:Noto Sans Armenian;font-style:normal;font-display:swap;font-weight:700;src:url(./noto-sans-armenian-armenian-700-normal-D072dgZa.woff2)format("woff2"),url(./noto-sans-armenian-armenian-700-normal-CJ7_iLhp.woff)format("woff");unicode-range:U+308,U+530-58F,U+2010,U+2024,U+25CC,U+FB13-FB17}@font-face{font-family:Noto Sans Armenian;font-style:normal;font-display:swap;font-weight:700;src:url(./noto-sans-armenian-latin-ext-700-normal-D3YguxNq.woff2)format("woff2"),url(./noto-sans-armenian-latin-ext-700-normal-7GqKzMEg.woff)format("woff");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:Noto Sans Armenian;font-style:normal;font-display:swap;font-weight:700;src:url(./noto-sans-armenian-latin-700-normal-DPdWZMQo.woff2)format("woff2"),url(./noto-sans-armenian-latin-700-normal-C0DLIn4m.woff)format("woff");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:Noto Sans Armenian;font-style:normal;font-display:swap;font-weight:800;src:url(./noto-sans-armenian-armenian-800-normal-DMuEzWLc.woff2)format("woff2"),url(./noto-sans-armenian-armenian-800-normal-r-xVaeSL.woff)format("woff");unicode-range:U+308,U+530-58F,U+2010,U+2024,U+25CC,U+FB13-FB17}@font-face{font-family:Noto Sans Armenian;font-style:normal;font-display:swap;font-weight:800;src:url(./noto-sans-armenian-latin-ext-800-normal-o2xF5X25.woff2)format("woff2"),url(./noto-sans-armenian-latin-ext-800-normal-CFG3FVAR.woff)format("woff");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:Noto Sans Armenian;font-style:normal;font-display:swap;font-weight:800;src:url(./noto-sans-armenian-latin-800-normal-mgMXajAg.woff2)format("woff2"),url(./noto-sans-armenian-latin-800-normal-BBjOQ5A2.woff)format("woff");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:Noto Sans Armenian;font-style:normal;font-display:swap;font-weight:900;src:url(./noto-sans-armenian-armenian-900-normal-SVDBvA0c.woff2)format("woff2"),url(./noto-sans-armenian-armenian-900-normal-Ckuoa-TY.woff)format("woff");unicode-range:U+308,U+530-58F,U+2010,U+2024,U+25CC,U+FB13-FB17}@font-face{font-family:Noto Sans Armenian;font-style:normal;font-display:swap;font-weight:900;src:url(./noto-sans-armenian-latin-ext-900-normal-D-KQwqjJ.woff2)format("woff2"),url(./noto-sans-armenian-latin-ext-900-normal-BLpse5MH.woff)format("woff");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:Noto Sans Armenian;font-style:normal;font-display:swap;font-weight:900;src:url(./noto-sans-armenian-latin-900-normal-B4I24HwF.woff2)format("woff2"),url(./noto-sans-armenian-latin-900-normal-DR1T4_MY.woff)format("woff");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{--ink:#1f2a44;--ink-soft:#55607a;--paper:#fffaf0;--paper-2:#f5e9cf;--blue:#1f6f9e;--blue-soft:#cfe6f2;--orange:#f59e42;--peach:#ffe3c2;--green:#4caf7a;--green-soft:#d8f0d2;--red:#e2553f;--yellow:#ffd34e;--teal:#21b8a6;--purple:#7c5cff;--accent:#21b8a6;--radius:18px;--shadow:0 20px 60px #0a0a2873;--font:"Nunito", "Noto Sans Armenian", system-ui, -apple-system, "Segoe UI", sans-serif}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{height:100%;font-family:var(--font);color:var(--ink);background:#0a2c3b;margin:0;overflow:hidden}button{cursor:pointer;font-family:inherit}.hidden{display:none!important}#app{position:fixed;inset:0;overflow:hidden}.desk-bg{background:radial-gradient(1200px 700px at 15% 10%,#21b8a659,#0000 60%),radial-gradient(1000px 700px at 90% 90%,#21b8a64d,#0000 60%),radial-gradient(800px 500px at 80% 5%,#ffd34e2e,#0000 60%),linear-gradient(160deg,#0d3b4f 0%,#14506a 45%,#0f4a3f 100%);position:absolute;inset:0}.desk-bg:after{content:"";opacity:.5;background-image:radial-gradient(#ffffff8c 1px,#0000 1.4px),radial-gradient(#ffffff59 1px,#0000 1.4px);background-position:0 0,40px 60px;background-size:90px 90px,140px 140px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 85%);mask-image:linear-gradient(#000,#0000 85%)}#cover-layer{transition:opacity .9s;position:absolute;inset:0}#cover-canvas{touch-action:none;cursor:grab;width:100%;height:100%;display:block;position:absolute;inset:0}#cover-canvas:active{cursor:grabbing}.cover-ui{pointer-events:none;flex-direction:column;justify-content:flex-end;align-items:center;gap:12px;padding-bottom:max(5vh,28px);display:flex;position:absolute;inset:0}.open-btn{pointer-events:auto;color:#1b1f4b;background:linear-gradient(135deg,#ffd34e,#ff9f43);border:0;border-radius:999px;padding:16px 40px;font-size:clamp(18px,2.4vw,26px);font-weight:900;transition:transform .2s,box-shadow .2s;animation:2.4s ease-in-out infinite pulse;box-shadow:0 0 0 6px #ffd34e40,0 12px 40px #ff9f438c}.open-btn:hover{transform:translateY(-3px)scale(1.04)}@keyframes pulse{50%{box-shadow:0 0 0 14px #ffd34e0d,0 12px 50px #ff9f43b3}}.cover-hint{color:#ffffffb3;font-size:14px;font-weight:700}.cover-langs{pointer-events:auto;position:absolute;top:16px;right:16px}.state-book #cover-layer{opacity:0;pointer-events:none}.state-book #cover-layer .cover-ui{display:none}.state-opening .cover-ui{opacity:0;transition:opacity .4s}#book-layer{opacity:0;pointer-events:none;flex-direction:column;transition:opacity .8s .15s;display:flex;position:absolute;inset:0}.state-book #book-layer{opacity:1;pointer-events:auto}.state-opening #book-layer{opacity:0}.topbar{color:#fff;flex:none;align-items:center;gap:12px;height:56px;padding:0 16px;display:flex}.tb-btn{color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff1a;border:1px solid #ffffff38;border-radius:12px;align-items:center;gap:8px;min-width:38px;height:38px;padding:0 12px;font-weight:800;transition:background .2s;display:inline-flex}.tb-btn:hover{background:#fff3}.tb-title{flex-direction:column;flex:1;min-width:0;line-height:1.15;display:flex}.tb-title span{opacity:.7;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:700;overflow:hidden}.tb-title b{white-space:nowrap;text-overflow:ellipsis;font-size:18px;font-weight:900;overflow:hidden}.tb-right{align-items:center;gap:10px;display:flex}.langs{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff1f;border:1px solid #fff3;border-radius:12px;padding:3px;display:inline-flex}.langs button{color:#ffffffbf;letter-spacing:.04em;background:0 0;border:0;border-radius:9px;padding:6px 10px;font-size:13px;font-weight:900}.langs button.on{color:#1b1f4b;background:#fff}.desk{flex:1;justify-content:center;align-items:center;min-height:0;padding:6px 64px 4px;display:flex;position:relative}.book{perspective:2600px;filter:drop-shadow(0 30px 40px #00000073);grid-template-columns:1fr 1fr;width:min(100%,1480px);height:100%;max-height:900px;display:grid;position:relative}.book:before{content:"";z-index:0;background:linear-gradient(90deg,#d8c9a5 0 1.2%,#efe3c5 1.2% 2.4%,#d8c9a5 2.4% 3.6%,#efe3c5 3.6% 100%);border-radius:22px;position:absolute;inset:5px -7px -7px}.book:after{content:"";z-index:-1;background:#2b2f6e;border-radius:26px;position:absolute;inset:-4px -12px -12px;box-shadow:inset 0 0 0 3px #3a3f8f}.page{z-index:1;background:var(--paper);position:relative;overflow:hidden}.page-left{background:linear-gradient(90deg,#fffaf0 0% 88%,#f0e3c4 100%);border-radius:18px 0 0 18px}.page-right{background:linear-gradient(270deg,#fffaf0 0% 88%,#f0e3c4 100%);border-radius:0 18px 18px 0}.spine{z-index:5;pointer-events:none;background:linear-gradient(90deg,#0000,#50320a38 45%,#50320a57 50%,#50320a38 55%,#0000);width:28px;position:absolute;top:0;bottom:0;left:calc(50% - 14px)}.page-inner{scrollbar-width:thin;scrollbar-color:#d6c7a3 transparent;padding:26px 34px 56px 38px;position:absolute;inset:0;overflow-y:auto}.page-inner::-webkit-scrollbar{width:8px}.page-inner::-webkit-scrollbar-thumb{background:#d6c7a3;border-radius:8px}.right-inner{flex-direction:column;gap:6px;padding:14px 16px 14px 12px;display:flex;position:absolute;inset:0}.folio{color:#a69770;letter-spacing:.04em;font-size:15px;font-weight:900}.folio-right{text-align:right;flex:none;height:18px;padding-right:6px;line-height:18px}.folio-left{margin-top:14px}.chap-tag{letter-spacing:.08em;text-transform:uppercase;color:var(--red);align-items:center;gap:8px;margin-bottom:6px;font-size:12px;font-weight:900;display:inline-flex}.chap-tag i{background:var(--red);color:#fff;border-radius:999px;padding:2px 9px;font-style:normal}.page-inner h1{color:var(--blue);margin:0 0 12px;font-size:clamp(24px,2.5vw,34px);font-weight:900;line-height:1.12}.lead{background:var(--peach);border-top:3px solid var(--red);color:#6a4a25;border-radius:4px 4px 12px 12px;margin:0 0 16px;padding:12px 16px;font-style:italic;font-weight:600;line-height:1.5}.page-inner p{margin:0 0 12px;font-size:clamp(15px,1.15vw,17.5px);font-weight:500;line-height:1.62}.page-inner p b,.page-inner li b{color:#b73a26;font-weight:800}.page-inner sub,.page-inner sup{font-size:.72em;line-height:0}.box{border-radius:14px;margin:14px 0;overflow:hidden}.box .box-h{letter-spacing:.05em;text-transform:uppercase;align-items:center;gap:8px;padding:6px 14px;font-size:13px;font-weight:900;display:flex}.box .box-b{padding:10px 16px 12px;font-size:15.5px;font-weight:600;line-height:1.55}.box .box-b p{font-size:inherit;margin:0 0 8px}.box .box-b p:last-child{margin:0}.box.key{background:#ffe0b8}.box.key .box-h{background:var(--orange);color:#fff}.box.fact{background:#dcebf3}.box.fact .box-h{color:#fff;background:#5b98b5}.box.try{background:#fff4b8}.box.try .box-h{color:#4a3a00;background:#e8b800}.box.quiz{background:var(--green-soft)}.box.quiz .box-h{background:var(--green);color:#fff;justify-content:space-between}.formula{text-align:center;color:#4a2f10;background:#fff;border:2px dashed #e6c98b;border-radius:14px;margin:12px 0;padding:12px 14px;font-size:clamp(18px,1.6vw,24px);font-weight:800}.formula small{color:var(--ink-soft);margin-top:4px;font-size:13px;font-weight:700;display:block}.page-inner ul{margin:0 0 12px;padding-left:20px}.page-inner li{margin-bottom:5px;font-size:clamp(15px,1.15vw,17px);font-weight:500;line-height:1.55}.credit{color:#a69770;margin-top:18px;font-size:11.5px;font-weight:700}.q{margin:4px 0 12px}.q-t{margin-bottom:8px;font-size:15.5px;font-weight:800}.q-opts{gap:7px;display:grid}.q-opt{text-align:left;color:var(--ink);background:#fff;border:2px solid #b9dcb0;border-radius:12px;padding:9px 12px;font-size:15px;font-weight:700;transition:transform .12s,background .15s,border-color .15s}.q-opt:hover:not(:disabled){border-color:var(--green);transform:translate(3px)}.q-opt.ok{border-color:var(--green);background:#c8f0c0}.q-opt.bad{border-color:var(--red);background:#ffd6cf;animation:.35s shake}.q-explain{background:#ffffffb3;border-radius:10px;margin-top:8px;padding:8px 12px;font-size:14px;font-weight:600}.stars{letter-spacing:2px;font-size:15px}@keyframes shake{25%{transform:translate(-5px)}75%{transform:translate(5px)}}.sim-wrap{background:linear-gradient(#d8ecff 0%,#efe6ff 60%,#ffeede 100%);border-radius:16px;flex:1;min-height:0;position:relative;overflow:hidden;box-shadow:inset 0 0 0 2px #1f2a4414,0 4px 16px #3c280a26}.sim-canvas{position:absolute;inset:0}.sim-canvas canvas{touch-action:none;display:block}.hud{z-index:3;pointer-events:none;flex-direction:column;gap:6px;max-width:52%;display:flex;position:absolute;top:10px;left:10px}.pill{--pill:var(--blue);border-left:5px solid var(--pill);color:var(--ink-soft);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffffe0;border-radius:999px;align-items:baseline;gap:8px;width:-moz-fit-content;width:fit-content;padding:5px 12px;font-size:13px;font-weight:700;display:inline-flex;box-shadow:0 2px 8px #1e1e3c2e}.pill b{color:var(--ink);font-variant-numeric:tabular-nums;font-size:15px;font-weight:900}.pill-big b{font-size:22px}.hint{z-index:4;color:#5a4600;background:#fff4b8;border-radius:14px 14px 4px;align-items:flex-start;gap:8px;max-width:min(300px,44%);padding:8px 10px 8px 12px;font-size:13px;font-weight:700;line-height:1.35;animation:3s ease-in-out infinite bob;display:flex;position:absolute;top:10px;right:10px;box-shadow:0 4px 14px #503c0040}.hint .x{color:#8a6d00;background:0 0;border:0;padding:0 2px;font-size:18px;line-height:1}@keyframes bob{50%{transform:translateY(-3px)}}.tray{z-index:4;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffd1;border-radius:16px;flex-wrap:wrap;align-items:center;gap:8px 14px;max-height:44%;padding:10px 14px;display:flex;position:absolute;bottom:10px;left:10px;right:10px;overflow-y:auto;box-shadow:0 4px 20px #1e1e3c33}.tray:empty{display:none}.ctl-row{display:contents}.ctl{--accent:var(--teal);flex-direction:column;flex:150px;gap:3px;min-width:130px;display:flex}.ctl-top{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.ctl-name{color:var(--ink-soft);letter-spacing:.02em;font-size:12px;font-weight:800}.ctl-val{color:var(--ink);font-variant-numeric:tabular-nums;font-size:13px;font-weight:900}.ctl-slider input{appearance:none;--p:50%;background:linear-gradient(90deg, var(--accent) var(--p), #d5dbe8 var(--p));border-radius:8px;outline:none;width:100%;height:8px;margin:6px 0}.ctl-slider input::-webkit-slider-thumb{-webkit-appearance:none;border:4px solid var(--accent);cursor:grab;background:#fff;border-radius:50%;width:22px;height:22px;box-shadow:0 2px 6px #0000004d}.ctl-slider input::-moz-range-thumb{border:4px solid var(--accent);cursor:grab;background:#fff;border-radius:50%;width:14px;height:14px;box-shadow:0 2px 6px #0000004d}.btn{border:0;border-radius:12px;align-items:center;gap:7px;padding:9px 14px;font-size:14px;font-weight:900;transition:transform .12s,filter .15s;display:inline-flex}.btn:hover:not(:disabled){filter:brightness(1.06);transform:translateY(-2px)}.btn:disabled{opacity:.45;cursor:default}.btn-primary{background:linear-gradient(135deg, var(--teal), #17a2c9);color:#fff;box-shadow:0 4px 12px #17a2c959}.btn-warn{background:linear-gradient(135deg, #ff9f43, var(--red));color:#fff;box-shadow:0 4px 12px #e2553f59}.btn-ghost{color:var(--ink);background:#eef1f8}.seg{background:#e6eaf4;border-radius:12px;flex-wrap:wrap;gap:2px;padding:3px;display:inline-flex}.seg-btn{color:var(--ink-soft);background:0 0;border:0;border-radius:9px;align-items:center;gap:5px;padding:6px 11px;font-size:13px;font-weight:800;display:inline-flex}.seg-btn.on{color:var(--ink);background:#fff;box-shadow:0 2px 6px #00000026}.ctl-seg{flex:0 auto}.ctl-toggle{cursor:pointer;flex-direction:row;flex:0 auto;align-items:center;gap:8px;min-width:0}.ctl-toggle input{display:none}.knob{background:#cfd6e6;border-radius:22px;flex:none;width:40px;height:22px;transition:background .2s;position:relative}.knob:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0000004d}.ctl-toggle input:checked+.knob{background:var(--teal)}.ctl-toggle input:checked+.knob:after{transform:translate(18px)}.note{background:#eef1f8;border-radius:10px;flex:100%;padding:6px 10px;font-size:14px;font-weight:700}.note.good{color:#14603a;background:#d4f4dd}.note.warn{color:#7a4a05;background:#ffe9c9}.note.bad{color:#8a2414;background:#ffd8d2}.sim-loading{z-index:8;background:#fff9;justify-content:center;align-items:center;display:none;position:absolute;inset:0}.is-loading .sim-loading{display:flex}.spinner{border:5px solid #cfe0ff;border-top-color:var(--teal);border-radius:50%;width:44px;height:44px;animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.leaf{z-index:20;transform-origin:0;width:50%;transform-style:preserve-3d;will-change:transform;pointer-events:none;position:absolute;top:0;bottom:0;left:50%}.leaf-face{backface-visibility:hidden;position:absolute;inset:0;overflow:hidden}.leaf-front{border-radius:0 18px 18px 0}.leaf-back{border-radius:18px 0 0 18px;transform:rotateY(180deg)}.leaf-face .shade{opacity:0;pointer-events:none;background:#000;position:absolute;inset:0}.leaf-snap{background:linear-gradient(#d8ecff 0%,#efe6ff 60%,#ffeede 100%);border-radius:16px;position:absolute;inset:14px 16px 32px 12px;overflow:hidden}.leaf-snap img{object-fit:fill;width:100%;height:100%;display:block}.freeze{z-index:15;background:var(--paper);position:absolute;inset:0}.under-shade{z-index:6;pointer-events:none;opacity:0;background:#000;position:absolute;top:0;bottom:0}.nav{color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:30;background:#ffffff24;border:1px solid #ffffff40;border-radius:50%;place-items:center;width:46px;height:46px;padding-bottom:4px;font-size:30px;font-weight:900;line-height:1;transition:background .2s,transform .2s,opacity .2s;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.nav:hover:not(:disabled){background:#ffffff4d;transform:translateY(-50%)scale(1.08)}.nav:disabled{opacity:.25;cursor:default}.nav-prev{left:8px}.nav-next{right:8px}.dots{flex:none;justify-content:center;align-items:center;gap:8px;height:34px;padding-bottom:4px;display:flex}.dot{background:#ffffff4d;border:0;border-radius:50%;width:11px;height:11px;padding:0;transition:transform .2s,background .2s;position:relative}.dot.done{background:var(--yellow)}.dot.on{background:#fff;transform:scale(1.5);box-shadow:0 0 0 3px #ffffff40}.dot:hover{transform:scale(1.5)}.toc{z-index:60;background:#fffaf0;width:min(380px,88vw);padding:18px 16px 24px;transition:transform .35s cubic-bezier(.2,.8,.2,1);position:absolute;top:0;bottom:0;left:0;overflow-y:auto;transform:translate(-102%);box-shadow:10px 0 40px #0006}.toc.open{transform:none}.toc-scrim{z-index:55;opacity:0;pointer-events:none;background:#0a0a2880;transition:opacity .3s;position:absolute;inset:0}.toc-scrim.open{opacity:1;pointer-events:auto}.toc h2{color:var(--blue);margin:4px 6px 14px;font-size:24px;font-weight:900}.toc h3{letter-spacing:.08em;text-transform:uppercase;color:var(--red);margin:16px 6px 8px;font-size:12px;font-weight:900}.toc-item{text-align:left;width:100%;color:var(--ink);background:#fff;border:0;border-radius:14px;align-items:center;gap:12px;margin-bottom:8px;padding:10px 12px;transition:transform .15s;display:flex;box-shadow:0 2px 8px #5a3c0a1f}.toc-item:hover{transform:translate(4px)}.toc-item.on{outline:3px solid var(--teal)}.toc-ico{background:var(--peach);border-radius:12px;flex:none;place-items:center;width:40px;height:40px;font-size:26px;display:grid}.toc-txt{flex:1;min-width:0}.toc-txt small{color:var(--ink-soft);font-size:11px;font-weight:800;display:block}.toc-txt b{font-size:15px;font-weight:800;line-height:1.2;display:block}.toc-stars{letter-spacing:1px;white-space:nowrap;font-size:12px}.toc .credit{margin:14px 6px 0}.nowebgl{z-index:100;color:#fff;text-align:center;background:#0a2c3b;place-items:center;padding:30px;font-size:20px;font-weight:800;display:grid;position:absolute;inset:0}@media (max-width:900px),(max-aspect-ratio:1){.topbar{height:50px;padding:0 10px}.tb-label{display:none}.tb-title b{font-size:15px}.desk{align-items:stretch;padding:0 8px}.book{perspective:none;filter:none;background:var(--paper);scrollbar-width:thin;border-radius:18px;height:100%;max-height:none;display:block;overflow:hidden auto}.book:before,.book:after,.spine,.leaf,.under-shade{display:none}.page{overflow:visible;background:var(--paper)!important;border-radius:0!important}.page-right{z-index:10;flex:none;order:-1;height:min(58vh,560px);position:sticky;top:0;box-shadow:0 6px 16px #3c280a33}.book{flex-direction:column;display:flex}.page-left{flex:none}.page-inner{padding:18px 18px 40px;position:static;overflow:visible}.nav{z-index:50;background:#1b1f4bd9;width:44px;height:44px;position:fixed;top:auto;bottom:8px;transform:none}.nav:hover:not(:disabled){transform:scale(1.06)}.nav-prev{left:10px}.nav-next{right:10px}.dots{height:26px}.dot{width:9px;height:9px}.tray{gap:6px 10px;max-height:52%;padding:8px 10px}.ctl{flex:120px;min-width:110px}.ctl-seg{flex:100%}.seg{width:100%}.seg-btn{flex:auto;justify-content:center}.seg{flex-wrap:nowrap}.seg-btn{white-space:nowrap;gap:3px;min-width:0;padding-left:6px;padding-right:6px;font-size:12px}.tray{max-height:46%}.hud{max-width:60%}.hint{max-width:50%;font-size:12px}.book.turning{animation:.45s fadeturn}@keyframes fadeturn{0%{opacity:.2;transform:translate(14px)}to{opacity:1;transform:none}}}@media (prefers-reduced-motion:reduce){.open-btn,.hint{animation:none}}.note.eq{letter-spacing:.3px;text-align:center;font-size:20px;font-weight:800}.note sub,.eqline sub{font-size:.68em}.atbl{background:#ffffffe6;border-radius:14px;flex-wrap:wrap;gap:6px;padding:6px 8px;font-size:13px;font-weight:800;display:inline-flex;box-shadow:0 2px 8px #1e1e3c2e}.atbl .ac{background:#eef1f8;border-radius:999px;align-items:center;gap:4px;padding:2px 8px;display:inline-flex}.atbl .ac.ok{color:#14603a;background:#d4f4dd}.atbl .ac.no{color:#8a2414;background:#ffd8d2}.atbl .ac i{font-style:normal;font-weight:900}.coef{align-items:center;gap:6px;display:inline-flex}.btn-sm{padding:4px 10px}#shelf-layer{z-index:5;display:none;position:absolute;inset:0;overflow-y:auto}.state-shelf #shelf-layer{display:block}.state-shelf #cover-layer,.state-shelf #book-layer{display:none}.shelf-inner{color:#fff;text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:100%;padding:70px 20px 40px;display:flex}.shelf-inner h1{letter-spacing:.3px;text-shadow:0 6px 24px #00000059;margin:0;font-size:clamp(30px,5vw,54px);font-weight:900}.shelf-inner p{opacity:.85;margin:8px 0 34px;font-size:clamp(15px,2vw,20px);font-weight:700}.shelf-books{flex-wrap:wrap;justify-content:center;gap:clamp(20px,5vw,56px);display:flex}.shelf-card{--c1:#3a2a86;--c2:#d14f7c;aspect-ratio:3/4;color:#fff;text-align:center;cursor:pointer;background:linear-gradient(160deg, var(--c1), var(--c2));border:0;border-radius:10px 22px 22px 10px;flex-direction:column;justify-content:space-between;align-items:center;width:min(300px,78vw);padding:26px 22px;font-family:inherit;transition:transform .3s,box-shadow .3s;display:flex;position:relative;overflow:hidden;transform:perspective(900px)rotateY(-9deg);box-shadow:inset 10px 0 #00000038,inset 12px 0 6px #ffffff1f,0 24px 50px #00000073}.shelf-card:hover{transform:perspective(900px)rotateY(0)translateY(-10px)scale(1.03)}.shelf-card:after{content:"";pointer-events:none;background:radial-gradient(circle at 30% 20%,#ffffff47,#0000 55%);position:absolute;inset:0}.shelf-card .sc-ico{filter:drop-shadow(0 8px 14px #0000004d);margin-top:10px;font-size:clamp(64px,10vw,104px)}.shelf-card .sc-name{text-shadow:0 4px 14px #00000059;font-size:clamp(30px,4.6vw,44px);font-weight:900}.shelf-card .sc-topic{opacity:.92;font-size:15px;font-weight:800;line-height:1.3}.shelf-card .sc-go{color:#1b1f4b;background:linear-gradient(135deg,#ffd34e,#ff9f43);border-radius:999px;margin-top:10px;padding:9px 22px;font-size:16px;font-weight:900}.shelf-card .sc-stars{opacity:.9;min-height:18px;font-size:14px;font-weight:800}
