@font-face{font-family:EBookKaiTi;src:local("KaiTi"),local("STKaiti"),local("Kaiti SC"),local("Kaiti TC"),local("BiauKai"),local("DFKai-SB"),local("Noto Serif CJK SC"),local("Noto Serif CJK TC"),local("Noto Serif SC"),local("AR PL UKai CN");font-style:normal;font-weight:400;font-display:swap;unicode-range:U+2E80-2EFF,U+2F00-2FDF,U+3000-303F,U+3100-312F,U+31A0-31BF,U+31C0-31EF,U+3400-4DBF,U+4E00-9FFF,U+F900-FAFF,U+FF00-FFEF}:root{font-family:EBookKaiTi,Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#17324a;background:#f6f2e8}*{box-sizing:border-box}html,body,#root{margin:0;width:100%;height:100%;overflow:hidden}button{font:inherit}.reader{position:relative;width:100%;height:var(--reader-viewport-height, 100dvh);overflow:hidden;overscroll-behavior:none;-webkit-user-select:none;user-select:none;background:radial-gradient(circle at 15% 20%,#fff8c9 0,transparent 33%),radial-gradient(circle at 90% 85%,#dff5ef 0,transparent 32%),#f8f6ee}.menu-trigger{position:fixed;z-index:30;top:max(14px,env(safe-area-inset-top));left:max(14px,env(safe-area-inset-left));width:44px;height:44px;border:1px solid rgba(16,52,73,.12);border-radius:15px;background:#ffffffe6;color:#183a52;box-shadow:0 10px 30px #14324026;cursor:pointer;font-size:20px;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.book-stage{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:2px;overflow:hidden;touch-action:none}.book-viewport{display:flex;flex:0 0 auto;align-items:center;justify-content:center;transform-origin:center center;will-change:transform}.source-switch-cover{position:fixed;z-index:18;inset:0;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:2px;pointer-events:none}.source-switch-cover>div{display:flex;flex:0 0 auto;overflow:hidden;filter:drop-shadow(0 22px 28px rgba(30,45,52,.25))}.source-switch-cover img{display:block;flex:0 0 auto;object-fit:fill;background:#fff}.real-flip-book{position:relative;flex:0 0 auto;min-width:0!important;min-height:0!important;margin:0;filter:drop-shadow(0 22px 28px rgba(30,45,52,.25));touch-action:none!important}.real-flip-book .stf__wrapper{position:relative;width:100%!important;height:100%!important;padding-bottom:0!important;overflow:hidden}.real-flip-book .stf__block{width:100%!important;height:100%!important;max-width:100%;max-height:100%;overflow:hidden;contain:layout paint;isolation:isolate;touch-action:none!important}.real-flip-book .stf__item{backface-visibility:hidden;-webkit-backface-visibility:hidden}.real-flip-book.is-turning .stf__item{will-change:transform,clip-path}.real-flip-book.is-turning :is(.stf__outerShadow,.stf__innerShadow,.stf__hardShadow,.stf__hardInnerShadow){will-change:transform,clip-path,opacity}.engine-page{width:100%;height:100%;overflow:hidden;background:#fff}.engine-page-placeholder{width:100%;height:100%;background:#f7f4eb}.pdf-page{position:relative;width:100%;height:100%;min-width:0;min-height:0;display:grid;place-items:center;overflow:hidden;background-color:#fff;background-position:center;background-repeat:no-repeat;background-size:100% 100%;border:0}.pdf-page .page-preview{position:absolute;inset:0;z-index:1;display:block;width:100%;height:100%;object-fit:fill;background:#fff;pointer-events:none}.pdf-page canvas{position:absolute;inset:0;z-index:2;display:block;width:100%;height:100%;max-width:none;max-height:none;object-fit:fill;background:transparent;opacity:0;transition:opacity .1s ease}.pdf-page.ready canvas{opacity:1}.page-left{box-shadow:inset -20px 0 32px -28px #26485d}.page-right{box-shadow:inset 20px 0 32px -28px #26485d}.page-loading{position:absolute;inset:0;z-index:4;width:100%;height:100%;display:grid;place-items:center;padding:24px;border:0;background:linear-gradient(110deg,#f3f0e8 20%,#fbfaf5,#f3f0e8 64%);background-size:240% 100%;color:#667b84;font-size:12px;font-weight:750;text-align:center;animation:reader-page-placeholder 1.15s ease-in-out infinite}.pdf-page.failed{background:#f7f4eb}button.page-loading{cursor:pointer;touch-action:manipulation}.pdf-page.failed .page-loading{animation:none}.pdf-page.ready .page-loading{display:none}@keyframes reader-page-placeholder{0%{background-position:100% 0}to{background-position:-100% 0}}.reader-interaction-layer{position:absolute;inset:0;z-index:8;pointer-events:none}.reader-speech-hotspot{position:absolute;pointer-events:auto;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.reader-speech-hotspot.transparent{padding:0;border:0;border-radius:5px;background:transparent;color:transparent}.reader-speech-hotspot.transparent:focus-visible{outline:3px solid #04a69c;outline-offset:2px;background:#04a69c1f}.reader-speech-hotspot.transparent.page-link:focus-visible{outline-color:#2477c9;background:#2477c924}.reader-speech-hotspot.transparent.karaoke:focus-visible{outline-color:#8058cf;background:#8058cf24}.reader-speech-hotspot.audio-icon{display:grid;place-items:center;width:clamp(28px,5.2%,48px)!important;height:auto!important;aspect-ratio:1;min-width:28px;min-height:28px;padding:0;border:2px solid white;border-radius:50%;background:#078fc9;color:#fff;box-shadow:0 4px 13px #08415e59;font-family:Georgia,serif;font-size:clamp(17px,2.2vw,23px);font-style:italic;font-weight:950}.reader-speech-hotspot.audio-icon:active{transform:scale(.93)}.reader-speech-hotspot.info-icon{display:grid;place-items:center;min-width:0;min-height:0;padding:0;border:max(1px,calc(2px * var(--reader-authoring-scale, 1))) solid white;border-radius:50%;background:#7057c8;color:#fff;box-shadow:0 calc(4px * var(--reader-authoring-scale, 1)) calc(12px * var(--reader-authoring-scale, 1)) #402a8559;font-family:Georgia,serif;font-size:max(7px,calc(19px * var(--reader-authoring-scale, 1)));line-height:1;font-style:italic;font-weight:950}.reader-speech-hotspot.info-icon:after{content:"";position:absolute;left:50%;top:50%;width:max(28px,100%);height:max(28px,100%);transform:translate(-50%,-50%);border-radius:50%}.reader-speech-hotspot.info-icon:active{transform:scale(.93)}.reader-speech-hotspot.draft-audio{border:2px dashed #d68819;background:#ffc14729}.reader-speech-hotspot.audio-icon.draft-audio{border-style:solid;background:#c98522;opacity:.9}.reader-speech-hotspot.info-icon.vocabulary.draft-audio{border-style:solid;background:#7057c8;opacity:.9}.reader-speech-hotspot.info-icon.information{background:#ef625c;box-shadow:0 4px 13px #99312c52}.reader-speech-hotspot.info-icon.passage{background:#315eb5;box-shadow:0 4px 13px #23468b57}.reader-speech-hotspot.video-icon{display:grid;place-items:center;width:clamp(30px,5.5%,50px)!important;height:auto!important;aspect-ratio:1;min-width:30px;min-height:30px;padding:0 0 0 2px;border:2px solid white;border-radius:50%;background:#d94c49;color:#fff;box-shadow:0 4px 14px #7b1f1d61;font-size:clamp(14px,2vw,20px);font-style:normal;font-weight:950}.reader-speech-hotspot.video-icon:active{transform:scale(.93)}.reader-speech-hotspot.tool-icon{display:grid;place-items:center;width:clamp(30px,5.5%,50px)!important;height:auto!important;aspect-ratio:1;min-width:30px;min-height:30px;padding:0;border:2px solid white;border-radius:50%;background:#1476a4;color:#fff;box-shadow:0 4px 14px #12466361}.reader-speech-hotspot.tool-icon:active{transform:scale(.93)}.tool-icon-svg{width:58%;height:58%;display:block;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.reader-answer-drawing{position:absolute;inset:0;z-index:1;width:100%;height:100%;overflow:visible;pointer-events:none}.reader-answer-toggle{position:absolute;z-index:4;min-width:max(28px,calc(38px * var(--reader-authoring-scale, 1)));min-height:max(24px,calc(25px * var(--reader-authoring-scale, 1)));padding:calc(3px * var(--reader-authoring-scale, 1)) calc(7px * var(--reader-authoring-scale, 1));transform:translate(-100%);border:max(1px,calc(1.5px * var(--reader-authoring-scale, 1))) solid white;border-radius:999px;background:#e88722;color:#fff;box-shadow:0 3px 10px #76410c52;font-size:max(8px,calc(11px * var(--reader-authoring-scale, 1)));font-weight:900;pointer-events:auto;touch-action:manipulation;cursor:pointer;-webkit-tap-highlight-color:transparent}.reader-answer-toggle.open{width:max(11px,calc(18px * var(--reader-authoring-scale, 1)));min-width:max(11px,calc(18px * var(--reader-authoring-scale, 1)));height:max(11px,calc(18px * var(--reader-authoring-scale, 1)));min-height:max(11px,calc(18px * var(--reader-authoring-scale, 1)));padding:0;transform:translate(32%,-58%);border-width:max(1px,calc(1px * var(--reader-authoring-scale, 1)));border-radius:50%;background:#9b5a1e;font-size:max(7px,calc(9px * var(--reader-authoring-scale, 1)));line-height:1}.reader-answer-toggle.open:after{content:"";position:absolute;inset:-8px;border-radius:50%}.reader-answer-content{position:absolute;inset:0;z-index:1;min-width:100%;min-height:100%;display:grid;place-items:center;overflow:auto;padding:8px;border:2px solid #f0a34d;border-radius:9px;background:#fffae2f5;color:#58350f;box-shadow:0 5px 16px #5b360e38;font-size:clamp(9px,1.4vw,15px);line-height:1.35;pointer-events:auto;-webkit-user-select:text;user-select:text}.reader-answer-content.reader-answer-content-region{inset:auto;min-width:0;min-height:0;overflow:hidden;padding:calc(2px * var(--reader-authoring-scale, 1)) calc(4px * var(--reader-authoring-scale, 1));border-width:max(1px,calc(1px * var(--reader-authoring-scale, 1)));border-radius:calc(5px * var(--reader-authoring-scale, 1));box-shadow:0 2px 7px #5b360e29}.reader-answer-audio{--karaoke-base-color: #58350f;--karaoke-fill-color: #178d84;--karaoke-done-color: #178d84;appearance:none;cursor:pointer;text-align:center}.reader-answer-audio .karaoke-done{color:var(--karaoke-done-color)}.reader-answer-content p{margin:0;padding:0;white-space:pre-wrap}.reader-answer-content ul{margin:0;padding-left:16px;white-space:pre-wrap}.reader-answer-content strong{font-size:inherit}.reader-answer-content img{width:100%;height:100%;object-fit:contain}.interaction-notice{position:fixed;z-index:90;top:max(16px,env(safe-area-inset-top));left:50%;width:min(560px,calc(100vw - 110px));padding:12px 18px;transform:translate(-50%);border:1px solid rgba(11,83,91,.12);border-radius:14px;background:#0f364af0;color:#fff;box-shadow:0 12px 34px #0b2b3a40;font-size:13px;font-weight:800;text-align:center;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.page-jump-lock{position:fixed;z-index:39;inset:0;display:grid;place-items:start center;padding-top:max(16px,env(safe-area-inset-top));background:#fff0;cursor:progress;pointer-events:auto}.page-jump-notice{min-height:44px;max-width:min(560px,calc(100vw - 110px));display:flex;align-items:center;justify-content:center;gap:10px;padding:11px 18px;border:1px solid rgba(255,255,255,.18);border-radius:14px;background:#0f364af5;color:#fff;box-shadow:0 12px 34px #0b2b3a47;font-size:13px;font-weight:850;text-align:center;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.page-jump-notice>span{flex:0 0 17px;width:17px;height:17px;border:2px solid rgba(255,255,255,.38);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite}.karaoke-strip{position:fixed;z-index:39;left:50%;bottom:max(18px,env(safe-area-inset-bottom));width:min(780px,calc(100vw - 32px));display:grid;grid-template-columns:minmax(0,1fr) 38px;gap:12px;padding:15px 16px 16px 20px;transform:translate(-50%);border:1px solid rgba(255,255,255,.18);border-radius:20px;background:#122235f0;color:#fff;box-shadow:0 18px 48px #04162357;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.karaoke-strip>div{min-width:0;display:grid;gap:6px}.karaoke-strip small{color:#b9a7ff;font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.karaoke-strip p{--karaoke-base-color: rgba(255,255,255,.82);--karaoke-fill-color: #ffe978;--karaoke-done-color: #ffe978;margin:0;font-size:clamp(17px,2.2vw,25px);font-weight:750;line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere}.karaoke-word{position:relative;border-radius:.28em;box-decoration-break:clone;-webkit-box-decoration-break:clone;color:inherit}.karaoke-word.karaoke-han{border-radius:.16em}.karaoke-word.karaoke-active{background-image:linear-gradient(90deg,var(--karaoke-fill-color, #178d84) 0%,var(--karaoke-fill-color, #178d84) var(--karaoke-progress, 0%),var(--karaoke-base-color, #294a60) var(--karaoke-progress, 0%),var(--karaoke-base-color, #294a60) 100%);background-repeat:no-repeat;background-size:100% 100%;background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent;will-change:background-image}.karaoke-strip p span{padding:2px 1px;color:var(--karaoke-base-color)}.karaoke-strip p span.karaoke-done{color:var(--karaoke-done-color)}.karaoke-strip>button{width:36px;height:36px;border:1px solid rgba(255,255,255,.28);border-radius:50%;background:#ffffff1a;color:#fff;font-size:23px;cursor:pointer}.karaoke-inline{--karaoke-base-color: #294a60;--karaoke-fill-color: #178d84;--karaoke-done-color: #178d84}.karaoke-inline .karaoke-word{padding:1px 0}.karaoke-inline .karaoke-done{color:var(--karaoke-done-color)}.passage-dialog .karaoke-inline,.vocabulary-dialog .karaoke-inline,.info-dialog .karaoke-inline{--karaoke-fill-color: #c2410c;--karaoke-done-color: #c2410c}.passage-dialog .karaoke-inline .karaoke-word,.vocabulary-dialog .karaoke-inline .karaoke-word,.info-dialog .karaoke-inline .karaoke-word{padding-inline:2px;margin-inline:-2px}.reader-status{position:fixed;z-index:20;top:50%;left:50%;width:min(440px,calc(100vw - 36px));display:grid;place-items:center;gap:12px;padding:30px;transform:translate(-50%,-50%);border-radius:24px;background:#ffffffeb;box-shadow:0 24px 60px #1432402e;text-align:center}.reader-status p{margin:0;color:#6d808c;line-height:1.5}.reader-status.error strong{color:#9c4439}.reader-status>button{min-height:44px;padding:0 22px;border:0;border-radius:999px;background:#0a8f88;color:#fff;font:inherit;font-weight:850;cursor:pointer}.reader-status>button:hover{background:#087b75}.spinner{width:35px;height:35px;border:4px solid #dceae8;border-top-color:#0a8f88;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.panel-backdrop{position:fixed;inset:0;z-index:40;border:0;background:#0a1e2c57;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.side-menu{position:fixed;z-index:50;top:0;left:0;bottom:0;width:min(410px,90vw);padding:max(28px,env(safe-area-inset-top)) 22px 26px;overflow-y:auto;background:#faffff;box-shadow:20px 0 55px #081f2d40;animation:slide-in .22s ease-out}@keyframes slide-in{0%{transform:translate(-100%)}}.menu-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:24px}.menu-heading div{display:grid;gap:4px}.menu-heading small,.dskp-card small{color:#078c8a;font-weight:900;letter-spacing:.12em}.menu-heading strong{font-size:21px;line-height:1.25}.menu-heading span{color:#718792;font-size:12px}.menu-heading>button,.dialog-close{flex:0 0 42px;width:42px;height:42px;border-radius:50%;border:1px solid #d6e1e6;background:#fff;font-size:24px;cursor:pointer}.page-scrubber{display:grid;gap:10px;margin:0 0 18px;padding:16px;border:1px solid #d8e8e9;border-radius:18px;background:linear-gradient(135deg,#eaf9f6,#fff8e8)}.page-scrubber>div{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.page-scrubber strong{color:#0a514f;font-size:15px}.page-scrubber span,.page-scrubber>small{color:#6d818b;font-size:11px}.page-scrubber input[type=range]{width:100%;height:24px;margin:0;accent-color:#078f88;cursor:ew-resize;touch-action:pan-x}.side-menu nav{display:grid;gap:10px}.side-menu nav>button{display:grid;grid-template-columns:64px 1fr;align-items:center;min-height:64px;border:1px solid #dce8eb;border-radius:18px;background:#fff;color:#17364c;text-align:left;font-weight:750;cursor:pointer}.side-menu nav>button>span{display:grid;place-items:center;align-self:stretch;border-radius:17px;background:#e7f6f3;color:#087f7c;font-weight:900}.menu-control-row{min-height:74px;display:grid;grid-template-columns:64px minmax(0,1fr);overflow:hidden;border:1px solid #dce8eb;border-radius:18px;background:#fff;color:#17364c}.menu-control-row>span:first-child{display:grid;place-items:center;background:#e7f6f3;color:#087f7c;font-weight:900}.menu-control-content{min-width:0;display:grid;align-content:center;gap:7px;padding:10px 12px}.menu-control-content>strong{font-size:13px}.menu-control-content select{width:100%;min-height:36px;padding:0 10px;border:1px solid #cddfe3;border-radius:10px;background:#f8fbfc;color:#17364c;font:inherit;font-weight:800;cursor:pointer}.zoom-control{min-width:0;display:grid;grid-template-columns:34px minmax(54px,1fr) 34px 34px;align-items:center;gap:5px}.zoom-control button{width:34px;height:34px;display:grid;place-items:center;padding:0;border:1px solid #cddfe3;border-radius:9px;background:#f8fbfc;color:#087f7c;font-size:19px;font-weight:900;cursor:pointer}.zoom-control output{min-width:0;color:#17364c;font-size:13px;font-weight:900;text-align:center}.zoom-control .zoom-reset{color:#596f7a;font-size:17px}.page-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.page-grid button{min-height:78px;display:grid;grid-template-columns:1fr auto;align-content:center;gap:3px 8px;padding:10px 12px;border:1px solid #d7e3e6;border-radius:14px;background:#fff;color:#24516a;cursor:pointer;text-align:left}.page-grid button small{grid-column:1 / -1;color:#718792;font-size:10px;font-weight:800}.page-grid button strong{font-size:17px}.page-grid button span{color:#78909d;font-size:11px}.page-grid button.current{border-color:#07968e;background:#e9f8f5;box-shadow:inset 0 0 0 1px #07968e}.related-ba-list{display:grid;gap:10px}.related-ba-list>button{display:grid;grid-template-columns:58px 1fr;align-items:stretch;gap:12px;padding:0;overflow:hidden;border:1px solid #d8e6e9;border-radius:17px;background:#fff;color:#17364c;cursor:pointer;text-align:left}.related-ba-list>button>span{display:grid;place-items:center;min-height:82px;background:#fff0d8;color:#c46822;font-weight:950}.related-ba-list>button>div{display:grid;align-content:center;gap:2px;padding:10px 12px 10px 0}.related-ba-list small{color:#748894;font-size:10px;font-weight:850}.related-ba-list strong{font-size:20px}.related-ba-list em{color:#6c838f;font-size:11px;font-style:normal}.empty-related{display:grid;gap:12px;padding:22px;border-radius:18px;background:#fff6df;color:#66562f}.empty-related p{margin:0;line-height:1.55}.empty-related button{min-height:44px;border:0;border-radius:12px;background:#0a8f88;color:#fff;font-weight:800;cursor:pointer}.dskp-card{position:relative;width:min(720px,calc(100vw - 32px));max-height:min(820px,94dvh);overflow:auto;padding:34px;border:5px solid rgba(255,255,255,.94);border-radius:28px;background:linear-gradient(145deg,#fbfffe,#e9f7f3);box-shadow:0 34px 80px #081f2d61;-webkit-user-select:text;user-select:text}.dialog-close{position:absolute;right:20px;top:20px}.dskp-card h2{margin:14px 54px 4px 0;font-size:clamp(25px,4vw,40px)}.dskp-card>p{font-size:15px;line-height:1.6}.dskp-page-label{margin:0 0 18px;color:#5a7580;font-weight:750}.dskp-standard-list{display:grid;gap:12px}.dskp-standard-group{min-width:0;overflow:hidden;border:1px solid #cce2de;border-radius:18px;background:#ffffffe6}.dskp-parent-line{display:grid;grid-template-columns:max-content minmax(0,1fr);align-items:start;gap:12px;padding:16px;background:#087f79;color:#fff}.dskp-parent-line strong{font-size:20px;line-height:1.45;overflow-wrap:anywhere}.dskp-parent-line p{margin:0;font-size:16px;font-weight:760;line-height:1.5;white-space:pre-wrap}.dskp-standard-group ul{display:grid;gap:0;margin:0;padding:6px 16px 10px;list-style:none}.dskp-standard-group li{display:grid;grid-template-columns:max-content minmax(0,1fr);align-items:start;gap:9px;padding:10px 0;color:#284d5a}.dskp-standard-group li+li{border-top:1px solid #dcebe7}.dskp-standard-group li strong{color:#087f79;font-size:16px;line-height:1.5}.dskp-standard-group li p{margin:0;font-size:16px;line-height:1.5;white-space:pre-wrap}.vocabulary-backdrop{position:fixed;inset:0;z-index:70;display:grid;place-items:center;padding:18px;background:#081d2aa8;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.vocabulary-dialog{position:relative;width:min(720px,96vw);max-height:min(780px,94dvh);display:grid;overflow:auto;border:5px solid rgba(255,255,255,.9);border-radius:30px;background:#fff;box-shadow:0 35px 90px #00162366;-webkit-user-select:text;user-select:text}.vocabulary-dialog.with-image{width:min(1160px,98vw);grid-template-columns:minmax(400px,1fr) minmax(500px,1.12fr)}.vocabulary-close{position:absolute;z-index:3;top:16px;right:16px;width:44px;height:44px;border:1px solid #d8e3e8;border-radius:50%;background:#fffffff0;color:#183a52;box-shadow:0 7px 22px #14324026;font-size:27px;cursor:pointer}.vocabulary-media{min-height:100%;display:grid;align-content:center;gap:12px;padding:20px;background:linear-gradient(150deg,#ecfbf8,#f3efff)}.vocabulary-media img{width:100%;max-height:min(650px,76dvh);display:block;object-fit:contain;border:6px solid white;border-radius:24px;box-shadow:0 16px 34px #1c444d2e}.vocabulary-media p{margin:0;color:#617987;font-size:13px;line-height:1.55;text-align:center}.vocabulary-content{min-width:0;display:grid;align-content:center;gap:12px;padding:48px 36px 30px}.vocabulary-content>small{color:#078c87;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.vocabulary-content h2{margin:0 54px 8px 0;color:#18334d;font-size:clamp(30px,5vw,54px);line-height:1.05;overflow-wrap:anywhere}.vocabulary-language-rows{display:grid;gap:11px}.vocabulary-language-row{min-width:0;display:grid;gap:8px;padding:14px;border:1px solid #cfe4df;border-radius:18px;background:#eefaf7}.vocabulary-language-row:nth-child(4n+2){border-color:#d3e0f3;background:#f0f5ff}.vocabulary-language-row:nth-child(4n+3){border-color:#efdacf;background:#fff4ef}.vocabulary-language-row:nth-child(4n){border-color:#e1d8f3;background:#f7f1ff}.vocabulary-language-name{color:#496476;font-size:11px;font-weight:800}.vocabulary-spoken-line{min-width:0;display:grid;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:10px}.vocabulary-spoken-line+.vocabulary-spoken-line{padding-top:7px;border-top:1px solid rgba(52,91,103,.12)}.vocabulary-spoken-line>button{width:42px;height:42px;display:grid;place-items:center;border:0;border-radius:13px;background:#0b918a;color:#fff;cursor:pointer;font-size:16px}.vocabulary-spoken-line>button:disabled{background:#cbd8db;cursor:not-allowed}.vocabulary-spoken-line strong{color:#193b57;font-size:22px;font-weight:800;overflow-wrap:anywhere}.vocabulary-spoken-line p{margin:0;color:#304f62;font-size:19px;font-weight:700;line-height:1.45;overflow-wrap:anywhere}.info-dialog{position:relative;width:min(1080px,97vw);max-height:min(860px,94dvh);display:grid;gap:18px;padding:38px;overflow:auto;scroll-behavior:smooth;scroll-padding-block:22%;border:5px solid rgba(255,255,255,.9);border-radius:30px;background:linear-gradient(145deg,#fffef9,#fff5cb);box-shadow:0 35px 90px #00162366;-webkit-user-select:text;user-select:text}.info-dialog-heading{display:flex;align-items:center;gap:16px;padding-right:54px}.info-dialog-heading>span{flex:0 0 54px;width:54px;height:54px;display:grid;place-items:center;border-radius:17px;background:#ef625c;color:#fff;font-family:Georgia,serif;font-size:32px;font-style:italic;font-weight:900}.info-dialog-heading h2{margin:3px 0 0;color:#19364f;font-size:clamp(28px,4.5vw,45px);line-height:1.08}.info-language-rows{display:grid;gap:14px}.info-language-row{display:grid;gap:10px;padding:18px;border:1px solid #efd9b7;border-radius:18px;background:#ffffffc7}.info-language-row:nth-child(4n+2){border-color:#d5e2f2;background:#f5f8ff}.info-language-row:nth-child(4n+3){border-color:#d5e9e3;background:#f1fbf8}.info-language-row:nth-child(4n){border-color:#e3d8f1;background:#f9f4ff}.info-language-row header{display:flex;align-items:center;justify-content:space-between;gap:12px}.info-language-row header small{color:#607987;font-size:14px;font-weight:850}.info-language-row header button{min-height:38px;display:inline-flex;align-items:center;gap:7px;padding:7px 12px;border:0;border-radius:12px;background:#0b918a;color:#fff;cursor:pointer;font-size:12px;font-weight:800}.info-language-row header button:disabled{background:#ccd8da;cursor:not-allowed}.info-language-row h3{margin:0;color:#193b57;font-size:25px;font-weight:800}.info-language-row>p{margin:0;color:#294a60;font-size:23px;font-weight:700;line-height:1.75;white-space:pre-wrap}.info-language-row dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:2px 0 0}.info-language-row dl div{min-width:0;padding:11px 13px;border:1px solid rgba(202,105,82,.18);border-radius:13px;background:#fff}.info-language-row dl div.has-image-gallery{grid-column:1 / -1}.info-language-row .info-example-images{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin-bottom:11px}.info-language-row dl img{width:100%;height:240px;display:block;object-fit:contain;border-radius:12px;background:#f7faf8}.info-language-row dt{color:#be514a;font-size:15px;font-weight:900;white-space:pre-wrap}.info-language-row dd{margin:5px 0 0;color:#294a60;font-size:19px;font-weight:700;line-height:1.55;overflow-wrap:anywhere;white-space:pre-wrap}.passage-dialog{position:relative;width:min(900px,96vw);max-height:min(880px,94dvh);display:grid;gap:18px;overflow:auto;scroll-behavior:smooth;scroll-padding-block:15%;padding:38px;border:5px solid rgba(255,255,255,.94);border-radius:30px;background:linear-gradient(145deg,#f9fcff,#eaf2ff);box-shadow:0 35px 90px #0016236b;color:#17354e;-webkit-user-select:text;user-select:text}.passage-dialog-heading{display:flex;align-items:center;gap:16px;padding-right:54px}.passage-dialog-heading>span{width:60px;height:52px;display:grid;place-items:center;flex:0 0 auto;border-radius:16px;background:#315eb5;color:#fff;font-family:Georgia,serif;font-size:32px;font-style:italic;font-weight:950}.passage-dialog-heading small{color:#315eb5;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.passage-dialog-heading h2{margin:4px 0 0;color:#173c76;font-size:clamp(28px,4.5vw,44px);line-height:1.12}.passage-tabs{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px}.passage-tabs button{flex:0 0 auto;min-height:40px;padding:0 16px;border:1px solid #b9cae9;border-radius:999px;background:#fff;color:#31558f;cursor:pointer;font-weight:850}.passage-tabs button.active{border-color:#315eb5;background:#315eb5;color:#fff}.passage-article{display:grid;gap:16px;padding:22px;border:1px solid #ccd9ef;border-radius:20px;background:#ffffffe0}.passage-article header{display:flex;align-items:center;justify-content:space-between;gap:14px}.passage-article header>div{display:grid;gap:4px}.passage-article header small{color:#637891;font-weight:850}.passage-article h3{margin:0;color:#183c73;font-size:25px}.passage-article header button{min-height:42px;display:inline-flex;align-items:center;gap:7px;padding:0 14px;border:0;border-radius:12px;background:#0b918a;color:#fff;cursor:pointer;font-weight:850}.passage-article header button:disabled{background:#cbd8db;cursor:not-allowed}.passage-article>p{margin:0;color:#294a60;font-size:23px;font-weight:700;line-height:1.78;white-space:pre-wrap}.passage-summary{display:grid;gap:12px;margin-top:4px;padding:18px;border:1px solid #bad8d3;border-radius:16px;background:#f0faf7}.passage-summary header{display:flex;align-items:center;justify-content:space-between;gap:12px}.passage-summary h4{margin:0;color:#087f79;font-size:21px}.passage-summary>p{margin:0;color:#294a60;font-size:21px;font-weight:700;line-height:1.72;white-space:pre-wrap}@media(max-width:720px){.passage-summary{padding:14px}.passage-summary header{align-items:stretch;flex-direction:column}.passage-summary>p{font-size:20px;line-height:1.68}}.media-dialog{position:relative;width:min(940px,96vw);max-height:min(860px,94dvh);display:grid;gap:18px;overflow:auto;padding:32px;border:5px solid rgba(255,255,255,.94);border-radius:30px;background:#101b24;box-shadow:0 35px 90px #00162394;color:#fff;-webkit-user-select:text;user-select:text}.media-dialog-heading{display:flex;align-items:center;gap:14px;padding-right:54px}.media-dialog-heading>span{width:54px;height:54px;display:grid;place-items:center;flex:0 0 auto;border-radius:17px;background:#d94c49;font-size:22px}.media-dialog-heading small{color:#ffaaa7;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.media-dialog-heading h2{margin:4px 0 0;font-size:clamp(25px,4vw,42px)}.media-dialog video{width:100%;max-height:68dvh;border-radius:18px;background:#000}.web-tool-dialog{position:relative;width:min(1120px,97vw);height:min(900px,94dvh);min-height:480px;display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:12px;overflow:hidden;padding:24px;border:5px solid rgba(255,255,255,.94);border-radius:28px;background:#f4fbff;box-shadow:0 35px 90px #0016238a;color:#17384e;-webkit-user-select:text;user-select:text}.web-tool-dialog>header{min-width:0;display:flex;align-items:center;gap:12px;padding-right:54px}.web-tool-dialog>header>div{min-width:0;display:grid;gap:3px}.web-tool-dialog>header small{color:#1476a4;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.web-tool-dialog>header h2{margin:0;overflow:hidden;color:#164f6d;font-size:clamp(23px,3.8vw,36px);text-overflow:ellipsis;white-space:nowrap}.web-tool-dialog>header p{margin:0;color:#627b87;font-size:13px}.web-tool-heading-icon{width:58px;height:58px;display:grid;place-items:center;flex:0 0 auto;border-radius:16px;background:#1476a4;color:#fff;box-shadow:0 6px 18px #12466342}.web-tool-back{min-height:44px;display:inline-flex;align-items:center;gap:8px;flex:0 0 auto;padding:0 13px;border:1px solid #b9d4e0;border-radius:12px;background:#fff;color:#1476a4;cursor:pointer;font-weight:850}.web-tool-popup-gallery{min-width:0;min-height:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));align-content:start;gap:16px;overflow:auto;padding:4px}.web-tool-popup-gallery>button{min-width:0;display:grid;grid-template-rows:minmax(140px,1fr) auto;gap:10px;overflow:hidden;padding:10px;border:1px solid #c4dce7;border-radius:17px;background:#fff;color:#164f6d;cursor:pointer;box-shadow:0 5px 16px #1246631f}.web-tool-popup-gallery>button:hover,.web-tool-popup-gallery>button:focus-visible{border-color:#168bc3;outline:3px solid rgba(22,139,195,.18);transform:translateY(-2px)}.web-tool-popup-gallery img{width:100%;height:100%;min-height:140px;max-height:280px;display:block;object-fit:contain;border-radius:11px;background:#f8fcfe}.web-tool-popup-gallery strong{overflow:hidden;padding:2px 4px 4px;font-size:15px;text-overflow:ellipsis;white-space:nowrap}.web-tool-frame{min-width:0;min-height:0;overflow:hidden;border:1px solid #c4dce7;border-radius:16px;background:#fff}.web-tool-frame iframe{width:100%;height:100%;display:block;border:0;background:#fff}.web-tool-dialog>footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.web-tool-dialog>footer p{margin:0;color:#627b87;font-size:12px;line-height:1.45}.web-tool-dialog>footer a{flex:0 0 auto;min-height:40px;display:inline-flex;align-items:center;padding:0 14px;border-radius:11px;background:#087f79;color:#fff;font-size:12px;font-weight:850;text-decoration:none}.answer-dialog{position:relative;width:min(620px,94vw);max-height:min(760px,92dvh);display:grid;gap:14px;overflow:auto;padding:34px;border:5px solid white;border-radius:28px;background:linear-gradient(145deg,#fffdf4,#ffefbd);box-shadow:0 34px 84px #00162373;color:#5d3a12;-webkit-user-select:text;user-select:text}.answer-dialog>small{color:#a45e14;font-weight:900;letter-spacing:.1em}.answer-dialog h2{margin:0;font-size:clamp(28px,5vw,44px)}.answer-dialog-value{min-height:120px;display:grid;place-items:center;padding:20px;border:1px solid #efc47b;border-radius:18px;background:#ffffffd1}.answer-dialog-value p,.answer-dialog-value ul{margin:0;white-space:pre-wrap}.answer-dialog-value img{max-width:100%;max-height:56dvh;object-fit:contain}.answer-dialog-audio{--karaoke-base-color: #5d3a12;--karaoke-fill-color: #178d84;--karaoke-done-color: #178d84;width:100%;appearance:none;color:inherit;cursor:pointer}.answer-dialog-audio>small{color:#087f79;font-size:12px;font-weight:900}.answer-dialog-audio .karaoke-done{color:var(--karaoke-done-color)}@media(max-width:940px){.vocabulary-dialog.with-image{grid-template-columns:1fr}.vocabulary-media{min-height:0}.vocabulary-media img{justify-self:center;width:min(100%,720px);max-height:42dvh}}@media(max-width:720px){.vocabulary-backdrop{padding:8px}.vocabulary-dialog.with-image{grid-template-columns:1fr}.vocabulary-dialog{width:100%;max-height:calc(100dvh - 16px);border-width:3px;border-radius:22px}.vocabulary-media{min-height:0;padding:12px}.vocabulary-media img{max-height:42dvh}.vocabulary-content{padding:24px 18px 20px}.vocabulary-content h2{font-size:34px}.vocabulary-language-row{padding:11px}.vocabulary-spoken-line{grid-template-columns:40px minmax(0,1fr)}.vocabulary-spoken-line>button{width:38px;height:38px}}@media(max-width:720px){.info-dialog{width:100%;max-height:calc(100dvh - 16px);gap:13px;padding:24px 16px 18px;border-width:3px;border-radius:22px}.info-dialog-heading>span{flex-basis:46px;width:46px;height:46px}.info-dialog-heading h2{font-size:29px}.info-language-row{padding:13px}.info-language-row dl,.info-language-row .info-example-images{grid-template-columns:1fr}.info-language-row dl img{height:auto;min-height:180px;max-height:340px}.info-language-row>p{font-size:20px;line-height:1.7}}@media(max-width:720px){.passage-dialog{width:100%;max-height:calc(100dvh - 16px);gap:13px;padding:24px 16px 18px;border-width:3px;border-radius:22px}.passage-dialog-heading>span{width:52px;height:46px}.passage-dialog-heading h2{font-size:29px}.passage-article{padding:14px}.passage-article header{align-items:stretch;flex-direction:column}.passage-article>p{font-size:21px;line-height:1.72}}@media(max-width:720px){.media-dialog,.answer-dialog{width:100%;max-height:calc(100dvh - 16px);padding:22px 14px 16px;border-width:3px;border-radius:22px}.media-dialog video{max-height:58dvh}}@media(max-width:720px){.web-tool-dialog{width:100%;height:calc(100dvh - 16px);min-height:0;padding:18px 10px 10px;border-width:3px;border-radius:20px}.web-tool-heading-icon{width:46px;height:46px}.web-tool-back span{display:none}.web-tool-popup-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.web-tool-popup-gallery>button{grid-template-rows:minmax(100px,1fr) auto;padding:7px}.web-tool-popup-gallery img{min-height:100px;max-height:220px}.web-tool-dialog>footer{align-items:stretch;flex-direction:column}.web-tool-dialog>footer a{justify-content:center}}@media(max-width:720px){.karaoke-strip{bottom:max(10px,env(safe-area-inset-bottom));width:calc(100vw - 16px);grid-template-columns:minmax(0,1fr) 34px;padding:12px 10px 13px 14px;border-radius:16px}.karaoke-strip p{font-size:17px;line-height:1.48}.karaoke-strip>button{width:32px;height:32px;font-size:20px}}@media(max-width:720px){.dskp-card{width:100%;max-height:calc(100dvh - 16px);padding:24px 14px 18px;border-width:3px;border-radius:22px}.dskp-parent-line{grid-template-columns:1fr;gap:4px;padding:14px}.dskp-standard-group ul{padding-inline:14px}}@media(max-width:1024px),(pointer:coarse){.book-stage{padding:2px}.real-flip-book{filter:drop-shadow(0 14px 20px rgba(30,45,52,.2))}.menu-trigger{top:max(8px,env(safe-area-inset-top));left:max(8px,env(safe-area-inset-left));width:40px;height:40px;border-radius:13px}}.reader.ios-webkit .book-stage{align-items:center}.reader.ios-webkit .book-viewport{align-self:center;overflow:hidden;contain:layout paint size;isolation:isolate;box-shadow:none}.reader.ios-webkit .real-flip-book{filter:none}.reader.ios-webkit .real-flip-book .stf__wrapper,.reader.ios-webkit .real-flip-book .stf__block{overflow:hidden}.reader.ios-webkit.single-page :is(.page-left,.page-right){box-shadow:none}.reader.ios-webkit :is(.stf__outerShadow,.stf__innerShadow,.stf__hardShadow,.stf__hardInnerShadow){display:none!important}.reader.ios-webkit .real-flip-book.is-turning .stf__item,.reader.ios-webkit .real-flip-book.is-turning :is(.stf__outerShadow,.stf__innerShadow,.stf__hardShadow,.stf__hardInnerShadow){will-change:auto}@supports (-webkit-touch-callout: none){@media(pointer:coarse){.reader .book-stage{align-items:center}.reader .book-viewport{align-self:center}.reader .real-flip-book .stf__wrapper,.reader .real-flip-book .stf__block{overflow:hidden}}}@media(prefers-reduced-motion:reduce){.side-menu,.pdf-page canvas{transition:none}.karaoke-word.karaoke-active{will-change:auto}.info-dialog,.passage-dialog{scroll-behavior:auto}.real-flip-book.is-turning .stf__item,.real-flip-book.is-turning :is(.stf__outerShadow,.stf__innerShadow,.stf__hardShadow,.stf__hardInnerShadow){will-change:auto}}
