:root{color:#33574c;font-synthesis:none;background:#f5f1e5;font-family:PingFang SC,Microsoft YaHei,sans-serif;font-size:16px;line-height:1.5}*{box-sizing:border-box}body{margin:0;overflow:hidden}button,select,input{font:inherit;color:inherit}button,select{touch-action:manipulation;min-height:48px}button{cursor:pointer;border:0}button:disabled{opacity:.3;cursor:default}button:focus-visible,select:focus-visible,input:focus-visible{outline-offset:5px;outline:3px solid #b9843a}[hidden]{display:none!important}#app{max-width:1600px;height:100dvh;margin:auto}.scene{height:100%;padding:max(22px,env(safe-area-inset-top)) max(36px,env(safe-area-inset-right)) max(22px,env(safe-area-inset-bottom)) max(36px,env(safe-area-inset-left));position:relative;overflow:hidden}.scene:before{content:"";pointer-events:none;z-index:-1;background:#e4e9d947;border-radius:50%;width:620px;height:620px;position:absolute;top:-320px;right:-320px}h1,h2,p{margin:0}.overline{letter-spacing:4px;color:#8e9680;font-size:13px}.home-scene{text-align:center;background:radial-gradient(at 50% 20%,#fffdf4 0%,#f5f1e5 75%);grid-template-rows:auto minmax(0,1fr) 24px;gap:28px;padding-top:clamp(24px,5vh,58px);display:grid}.home-heading h1{letter-spacing:14px;margin:10px 0 8px;padding-left:14px;font:clamp(46px,7vh,72px) KaiTi,STKaiti,SimSun,serif}.home-subtitle{color:#90917b;letter-spacing:3px;font-size:14px}.home-menu{grid-template-columns:repeat(3,minmax(0,1fr));align-self:center;gap:clamp(22px,4vw,58px);width:100%;max-width:1020px;height:min(100%,410px);margin:auto;padding:4px 10px 14px;display:grid}.menu-door{border-radius:100px 100px 36px 36px;flex-direction:column;justify-content:center;align-items:center;gap:14px;min-height:0;transition:transform .15s;display:flex;box-shadow:0 10px #0000000c,inset 0 0 0 2px #fff5}.menu-door:active{transform:translateY(5px)}.menu-door svg{fill:none;stroke:currentColor;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round;opacity:.75;width:70px;height:70px}.menu-door strong{font:clamp(72px,11vh,110px) KaiTi,STKaiti,SimSun,serif}.door-index{letter-spacing:3px;opacity:.62;font:15px/1 KaiTi,STKaiti,SimSun,serif}.listen-door{color:#fff6db;background:#3f6d5c}.read-door{color:#694b2b;background:#e4bc76}.test-door{color:#738575;background:#dce3da}.home-footer{color:#9b9a85;letter-spacing:2px;font-size:12px}.scene-header{flex-shrink:0;justify-content:space-between;align-items:center;gap:20px;height:58px;display:flex}.back,.quiet-button,.page-button{background:0 0;border-radius:24px;padding:12px 22px}.back{background:#ffffff6b;box-shadow:inset 0 0 0 1px #d9ddcc}.scene-header>.back,.scene-header>.quiet-button,.reading-order,.header-spacer{width:180px}.scene-header>.back{text-align:left;width:112px}.scene-header>.quiet-button{text-align:right;width:112px}.chapter-picker{position:absolute;left:50%;transform:translate(-50%)}.chapter-picker select{appearance:none;text-align:center;text-align-last:center;letter-spacing:2px;cursor:pointer;background:0 0;border:0;border-radius:24px;padding:8px 34px 8px 22px;font-size:20px}.chapter-picker:after{content:"⌄";pointer-events:none;color:#8c957d;position:absolute;top:9px;right:10px}.reading-order{color:#90947d;text-align:right;font-size:13px}.listen-scene,.read-scene{padding:max(8px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));background:radial-gradient(at 50% 40%,#fffef5,#f0efdf);grid-template-columns:128px minmax(0,1fr) 56px;gap:18px;display:grid}.listen-tools{overscroll-behavior:contain;flex-direction:column;gap:12px;min-height:0;padding:12px 0;display:flex;overflow-y:auto}.listen-tools>button{flex-shrink:0}.listen-tools .back{padding:12px 8px}.listen-tools .transport{flex-direction:column;align-items:stretch;gap:14px;margin:0;display:flex}.listen-tools .quiet-button{padding:10px 6px}.listen-tools .play-button{color:#fff9e8;background:#3f6d5c;border-radius:32px;flex-direction:column;justify-content:center;align-items:center;gap:4px;width:100%;min-height:88px;padding:10px 0;font-size:18px;display:flex;box-shadow:0 5px #264b3820}.play-button:active{transform:translateY(2px)}#playIcon{font-size:21px}.listen-tools .overline{text-align:center;letter-spacing:1px;place-items:center;min-height:36px;font-size:12px;display:grid}.timeline{color:#8b927c;font-variant-numeric:tabular-nums;flex-direction:column;flex:1;align-items:center;gap:8px;min-height:120px;max-height:36vh;margin:auto 0;font-size:12px;display:flex}.timeline input{writing-mode:vertical-lr;accent-color:#426b56;cursor:pointer;touch-action:none;direction:ltr;flex:1;width:48px;height:100%;min-height:0;margin:0}.timing-note{text-align:center;color:#a3a18c;letter-spacing:1px;flex-shrink:0;font-size:10px}.lyrics-stage{isolation:isolate;align-self:center;align-items:stretch;min-width:0;height:85dvh;min-height:0;display:flex;position:relative}.text-page{z-index:1;flex-direction:row-reverse;justify-content:space-between;gap:16px;width:100%;height:100%;min-height:0;display:flex;position:relative}.lyric-column{color:#7f8b70;flex:1;grid-template-rows:repeat(3,minmax(0,1fr));gap:16px;min-width:0;display:grid;position:relative}.lyric-column:before{content:"";visibility:hidden;background:#9a572d;border-radius:50%;width:10px;height:10px;position:absolute;top:-18px;left:50%;transform:translate(-50%)}.lyric-column.is-active:before{visibility:visible}.lyric-phrase{border-radius:18px;grid-template-rows:repeat(4,minmax(0,1fr));min-height:0;display:grid}.lyric-phrase>span,.lyric-phrase>button{font:var(--lyric-font,40px) "KaiTi","STKaiti","SimSun",serif;justify-content:center;align-items:center;line-height:1;display:flex}.lyric-phrase.is-current{color:#9a572d}.listen-info{border-left:1px solid #dce0ca;flex-direction:column;align-items:center;gap:28px;min-height:0;padding:20px 0;display:flex}.listen-info h1{writing-mode:vertical-rl;letter-spacing:6px;font:26px KaiTi,STKaiti,SimSun,serif}.listen-info .page-tag{writing-mode:vertical-rl;letter-spacing:2px;color:#899078;font-size:14px}.lyrics-order{writing-mode:vertical-rl;color:#a1a18a;letter-spacing:2px;margin-top:auto;font-size:11px}.read-tools .chapter-picker{flex-shrink:0;width:100%;position:relative;left:auto;transform:none}.read-tools .chapter-picker select{width:100%;padding-left:8px;padding-right:24px;font-size:18px}.read-tools .chapter-picker:after{right:6px}.read-char{width:100%;min-width:0;min-height:0;color:inherit;background:0 0;border-radius:8px;padding:0}.read-char.is-selected{color:#9a572d}#selectionText{color:#899078;text-align:center;overflow-wrap:anywhere;margin-top:auto;padding:12px 4px;font-size:13px;line-height:1.8}.test-scene{background:#f3f1e7}.test-scene h1{color:#8b957e;font:28px KaiTi,STKaiti,serif;position:absolute;left:50%;transform:translate(-50%)}.sr-only{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.sr-only:focus-within{z-index:2;background:#fffaf0;width:100%;height:auto;bottom:0;left:0}#orientationHint{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:24px;padding:24px;display:flex;position:fixed;inset:0}#orientationHint h1{font-size:28px;font-weight:500}#orientationHint p,#orientationHint small{color:#89917c}.tablet-icon{border:5px solid #52705b;border-radius:18px;place-items:center;width:140px;height:96px;font:48px serif;display:grid}body[data-compact=true] #app{visibility:hidden}@media (height<=650px){.scene{padding-top:12px;padding-bottom:12px}.home-scene{gap:16px}.home-heading h1{margin:5px 0}.home-menu{height:min(100%,310px)}.menu-door{border-radius:75px 75px 28px 28px;gap:8px}.menu-door svg{width:48px;height:48px}.menu-door strong{font-size:66px}.door-index{font-size:13px}.listen-scene,.read-scene{padding-top:max(8px,env(safe-area-inset-top));padding-bottom:max(8px,env(safe-area-inset-bottom))}.listen-tools{gap:8px;padding:4px 0}.listen-tools .transport{gap:8px}}@media (prefers-reduced-motion:reduce){*{transition:none!important}}
