:root{font-family:PingFang SC,Microsoft YaHei,sans-serif;color:#443b2e;font-synthesis:none;font-weight:400;--ink:#3e473d;--gold:#bd9854;--paper:#fff7e0;--green:#304f49;--serif:"Noto Serif SC","Songti SC","STSong",serif}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer;border:0;color:inherit;background:none}button:disabled{cursor:not-allowed;opacity:.4}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #739fa9;outline-offset:4px}button{touch-action:manipulation}input{min-width:0}button svg{flex-shrink:0}button{transition:transform .2s,background .2s,box-shadow .2s}button:hover:not(:disabled){filter:brightness(1.03)}.app{min-height:100dvh;position:relative;isolation:isolate}.library{background:#e5d3b0}.room-background{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-2;background:linear-gradient(180deg,#365752 0,#718175 280px,#d0b187 329px,#be9666 333px,#d5b587 357px,#d7b88d 800px,#e0c99e)}.room-background:after{content:"";position:absolute;top:335px;right:0;bottom:0;left:0;background:repeating-linear-gradient(2deg,transparent 0,rgba(108,72,36,.11) 1px,transparent 3px,transparent 28px),repeating-linear-gradient(179deg,transparent 0,rgba(255,246,195,.1) 1px,transparent 2px,transparent 6px);opacity:.6}.window-glow{position:absolute;left:-10%;top:0;width:62%;height:32%;background:linear-gradient(130deg,#e7d3a77d,transparent 65%);filter:blur(15px)}.wall-lines{position:absolute;inset:0 0 auto;height:320px;background:repeating-linear-gradient(90deg,transparent 0,transparent 179px,#d7d4b711 180px,#d7d4b711 183px,transparent 184px)}.topbar{height:97px;display:flex;align-items:center;gap:30px;padding:20px 4.5%;position:relative;z-index:10;color:#fff2ce}.brand{display:flex;gap:12px;align-items:center;text-align:left;white-space:nowrap}.brand-seal{font-family:var(--serif);font-size:30px;border:2px solid #e5c787;border-radius:8px 3px 7px 4px;box-shadow:inset 0 0 0 3px #c6a35e33;color:#f3d794;padding:0 5px;line-height:1.35}.brand-name{font-family:var(--serif);font-size:30px;line-height:1.1;letter-spacing:6px;font-weight:800;text-shadow:0 2px 2px #20362d50}.brand-name small{display:block;font-family:inherit;font-size:10px;letter-spacing:3px;margin-top:8px;font-weight:500;color:#e6d4ac}.journey-pill{display:flex;align-items:center;gap:9px;border:1px solid #e7d6a43a;border-radius:24px;padding:10px 15px;background:#233c3c80;box-shadow:inset 0 1px #ffffff16,0 3px 8px #162a1a15;font-size:13px;font-variant-numeric:tabular-nums;color:#edd29b}.journey-pill small{font-size:10px;opacity:.6}.journey-pill i{width:1px;height:16px;background:#e2c58a40;margin:0 5px}.header-actions{display:flex;gap:13px;margin-left:auto}.round{width:48px;height:48px;display:grid;place-items:center;background:radial-gradient(ellipse at 36% 30%,#fffbed,#f5e7c0 67%,#dfc994 70%,#fff1bd 74%,#b69352 81%,#ebd7a0 86%);border:1px solid #b79862;border-radius:50%;box-shadow:0 3px #877044,0 6px 9px #20241d25,inset 0 0 0 3px #ffefc6;color:#637971}.round:hover{transform:translateY(-2px)}.round.small{width:37px;height:37px}.round.profile-icon span{font-family:var(--serif);font-size:23px;font-weight:800;color:#a96e47}.shelf-main{max-width:1330px;margin:0 auto;padding:0 55px 24px}.shelf-heading{text-align:center;color:#fff2d2;padding:33px 0 57px}.shelf-kicker{display:flex;align-items:center;justify-content:center;gap:13px;font-size:11px;letter-spacing:4px;color:#ebd7ad}.shelf-kicker span{width:26px;height:1px;background:#e7d3a56b}.shelf-heading h1{font-family:var(--serif);font-size:clamp(25px,3.2vw,43px);font-weight:600;letter-spacing:4px;margin:15px 0 13px;text-shadow:0 3px 5px #30463c40}.shelf-heading p{font-size:12px;letter-spacing:2px;color:#d7decd;margin:0 0 22px}.continue-button{display:inline-flex;align-items:center;gap:14px;border:1px solid #dfc79388;color:#faf1d7;font-size:12px;padding:11px 22px;border-radius:30px;background:#243e3340;box-shadow:inset 0 0 0 3px #e9d5a10a}.continue-button:hover{background:#d7b97c33}.bookcase{border-radius:15px;position:relative;padding:0 18px 15px;background:#f3e3bc12}.shelf-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;gap:16px;border-bottom:1px solid #82694333;padding:0 6px 14px}.shelf-tabs{display:flex;align-items:center;gap:25px;white-space:nowrap}.shelf-tabs button{font-size:12px;color:#7d6c54;padding:8px 0;position:relative}.shelf-tabs .selected{color:#3f5347;font-weight:650}.shelf-tabs .selected:after{content:"";height:2px;background:#4f6653;position:absolute;bottom:-15px;left:0;right:0}.shelf-tabs span{font-size:9px;background:#69775622;padding:2px 6px;margin-left:6px;border-radius:4px}.shelf-tools{display:flex;align-items:center;gap:15px}.search-box{display:flex;align-items:center;gap:8px;background:#fff4d432;border:1px solid #7e624422;border-radius:24px;padding:8px 12px;color:#846e4d}.search-box input{background:none;border:0;outline:none;width:160px;font-size:11px;color:#554f3b}.search-box input::placeholder{color:#8c7657}.search-box button{padding:0;display:flex}.text-button{display:flex;align-items:center;gap:7px;font-size:11px;color:#786143;white-space:nowrap}.books-grid{display:grid;grid-template-columns:repeat(4,1fr);column-gap:42px;row-gap:35px;padding:6px 15px 0;background:repeating-linear-gradient(180deg,transparent 0,transparent 268px,#8c68431a 269px,#79552e38 275px,#edc68c8a 281px,transparent 289px,transparent 360px)}.book-card{display:flex;flex-direction:column;align-items:center;padding:0 0 13px;min-width:0;text-align:center;perspective:1100px}.book-object{height:243px;width:178px;position:relative;transform:rotateY(-13deg) rotate(-2deg);transform-style:preserve-3d;transition:transform .5s;filter:drop-shadow(10px 12px 6px #5b3c303b)}.book-card:nth-child(3n+2) .book-object{transform:rotateY(-10deg) rotate(2deg)}.book-card:nth-child(4n) .book-object{transform:rotateY(-12deg) rotate(1deg)}.book-card:hover .book-object{transform:rotateY(-4deg) rotate(0) translateY(-10px)}.book-cover{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:3px 8px 8px 3px;overflow:hidden;background:#294951;border:1px solid #d3b770;box-shadow:inset 6px 0 6px #051a2259,inset 0 0 0 5px #e5ce9440;z-index:2;color:#fff0c6}.cover-art{position:absolute;top:0;right:0;bottom:0;left:0;background-size:cover;background-position:center;opacity:.85;background-color:var(--theme-bg,#284d64)}.cover-art:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#142b4259,transparent 34%,#19314408 57%,#0b253375)}.theme-moon{--theme-bg:#2b4868;--theme-accent:#eedbb1}.theme-spring{--theme-bg:#658375;--theme-accent:#efb5ae}.theme-mountain{--theme-bg:#a78e66;--theme-accent:#e7d9ac}.theme-snow{--theme-bg:#7595a6;--theme-accent:#eef0e5}.theme-river{--theme-bg:#527c80;--theme-accent:#c8d7c2}.theme-bamboo{--theme-bg:#3e6756;--theme-accent:#c9cc86}.book-title{position:absolute;left:28px;top:53px;font-family:var(--serif);font-size:27px;font-weight:700;letter-spacing:5px;writing-mode:vertical-rl;max-height:163px;line-height:1.5;text-shadow:0 2px 4px #192c29a6}.book-author{position:absolute;left:81px;top:66px;writing-mode:vertical-rl;font-size:10px;letter-spacing:4px;opacity:.86}.book-edition{position:absolute;top:21px;left:24px;font-size:8px;letter-spacing:2px;opacity:.85}.cover-frame{position:absolute;top:9px;right:9px;bottom:9px;left:9px;border:1px solid #e8d5a462;border-radius:1px 5px 5px 1px}.cover-seal{position:absolute;right:21px;bottom:21px;border:1px solid #f7dc9aa6;font-family:var(--serif);font-size:13px;padding:1px 3px;border-radius:2px}.book-spine{position:absolute;left:-12px;top:1px;bottom:0;width:13px;background:linear-gradient(90deg,#162f31,#496157,#102c2f);transform:rotateY(-25deg);transform-origin:right;box-shadow:inset 0 0 0 1px #baa37b}.book-edge{position:absolute;right:-7px;bottom:2px;top:3px;width:10px;background:repeating-linear-gradient(0deg,#ded1b6 0,#eadfc7 1px,#9a8a6b,#f5ead1 3px);transform:rotateY(30deg);border-radius:0 4px 4px 0}.book-lock,.book-complete{position:absolute;right:13px;top:13px;width:26px;height:26px;border-radius:50%;background:#19332d6b;border:1px solid #e8dbbd77;display:grid;place-items:center;color:#e7d8b0}.book-complete{background:#536d44;color:#ffe8a0}.locked .cover-art{filter:saturate(.65);opacity:.78}.book-meta{margin-top:24px;display:flex;flex-direction:column;gap:7px;width:180px}.book-meta>span{font-family:var(--serif);font-size:14px;font-weight:600;color:#4d4737;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.book-meta small{font-size:9px;color:#89714f;letter-spacing:1px}.book-progress{height:3px;width:65px;margin:0 auto;background:#987c4c21;border-radius:8px;overflow:hidden}.book-progress i{height:100%;display:block;background:#6b7954}.shelf-pagination{display:flex;justify-content:space-between;align-items:center;color:#8a724e;font-size:11px;margin-top:18px;padding:16px 5px 0;border-top:1px solid #8e784733}.shelf-pagination>div{display:flex;align-items:center;gap:13px}.shelf-pagination button{display:flex;border:1px solid #9e865447;padding:5px;border-radius:50%}.shelf-footer{display:flex;justify-content:space-between;align-items:center;color:#8d795c;font-size:10px;letter-spacing:1px;padding-top:28px}.shelf-footer button{display:flex;align-items:center;gap:6px;font-size:10px}.reading{height:100dvh;overflow:hidden;background:#c39d6b}.poetry-scene{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;touch-action:none}.poetry-scene canvas{display:block;width:100%;height:100%}.scene-loading{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:#e2cb9e;font-family:var(--serif);font-size:20px;letter-spacing:3px}.reading .topbar{height:88px;background:linear-gradient(180deg,#28392b40,transparent);padding:16px 3%}.reading .brand-name{font-size:25px}.reading .brand-name small{display:none}.reading .brand-seal{font-size:25px}.reading .topbar{gap:18px}.top-poem-progress{position:absolute;left:50%;transform:translate(-50%);display:flex;gap:7px;background:#34433545;border:1px solid #f9e8b92b;border-radius:25px;padding:10px 12px;color:#e6c47b;max-width:32%;justify-content:center;flex-wrap:wrap}.top-poem-progress button{padding:0;display:flex;color:#d8bd7c55}.top-poem-progress button.active{color:#ffe296;transform:scale(1.25)}.top-poem-progress button.done{color:#f4d386}.top-poem-progress>span{font-size:12px}.reader-main{height:calc(100dvh - 88px);position:relative;pointer-events:none}.reader-main button,.reader-main .poem-card{pointer-events:auto}.back-shelf{position:absolute;left:3.5%;top:0;display:flex;gap:7px;align-items:center;font-size:11px;color:#685a40;background:#fff1d03d;border:1px solid #8e734e30;border-radius:20px;padding:8px 12px}.poem-card{position:absolute;left:4%;top:14%;width:37%;max-width:490px;min-width:340px;padding:26px 32px 18px;border:1px solid #c9b37b;background:radial-gradient(ellipse at 20% 20%,#ffffed70,transparent 65%),linear-gradient(110deg,#fcf5dc,#f6edce);box-shadow:0 8px 17px #42312135,inset 0 0 0 4px #fffbea,inset 0 0 0 6px #c6af756b,inset 0 0 45px #dbc58d22;border-radius:8px;animation:cardIn .7s both}.poem-card:before,.poem-card:after{position:absolute;content:"❧";font-size:25px;color:#b49a60;left:15px;top:10px}.poem-card:after{left:auto;top:auto;right:15px;bottom:10px;transform:rotate(180deg)}.card-topline{display:flex;justify-content:space-between;font-size:9px;letter-spacing:2px;color:#9d865d}.poem-card h1{font-family:var(--serif);font-size:30px;font-weight:800;letter-spacing:3px;color:#5e513a;margin:17px 0 8px}.poet{font-size:10px;letter-spacing:1px;color:#9b8864;display:flex;gap:9px}.poem-line{margin:28px 0 20px;display:flex;align-items:flex-end;gap:3px;flex-wrap:wrap;position:relative;color:#34483e}.line-decoration{font-family:var(--serif);position:absolute;left:-15px;top:-22px;font-size:27px;color:#b9a07060}.poem-char{font-family:var(--serif);font-size:clamp(28px,3vw,40px);line-height:1.7;font-weight:600;padding:0 1px;border-radius:7px;border-bottom:1px dashed #b9a47066}.poem-char ruby rt{font-family:Georgia,serif;font-size:11px;font-weight:400;letter-spacing:.3px;color:#8b805f;line-height:1.5}.poem-char:hover{background:#e5cf9366}.poem-char.highlighted{background:#e9ca80;color:#4b522f;box-shadow:0 0 20px #ffe29e}.punctuation{font-size:30px;line-height:1.9;font-family:var(--serif);margin-left:-3px}.meaning-panel{padding:0 0 9px}.meaning-panel>span{font-size:9px;color:#a39169;letter-spacing:2px}.meaning-panel p{font-size:13px;line-height:1.9;color:#766b54;margin:8px 0 0}.card-divider{position:relative;color:#bca878;display:flex;justify-content:center;margin:10px 0 15px}.card-divider:before,.card-divider:after{content:"";height:1px;background:#c4ac7338;width:44%;position:absolute;top:50%;left:0}.card-divider:after{left:auto;right:0}.card-actions{display:flex;flex-direction:column;gap:16px;align-items:center}.read-done{display:flex;align-items:center;justify-content:center;gap:7px;background:linear-gradient(#ffedb9,#e7c477);color:#705b34;font-size:11px;border:1px solid #d9b36b;border-radius:22px;padding:10px 17px;box-shadow:inset 0 1px 1px #fffbe1,0 3px 5px #8e6f3e26}.card-toggles{display:flex;gap:17px;font-size:10px;color:#af9e7d}.card-toggles .on{color:#6b7861}.card-toggles button{position:relative;padding:0 0 3px}.card-toggles .on:after{position:absolute;content:"";bottom:0;left:0;right:0;height:1px;background:#72836666}.card-footnote{color:#ae9b73;text-align:center;font-size:9px;letter-spacing:1px;margin:13px 0 0}.full-poem{position:absolute;top:7px;right:7px;bottom:7px;left:7px;overflow:auto;background:#fcf4da;z-index:2;padding:25px 20px;border-radius:5px;box-shadow:inset 0 0 0 1px #cfb983}.full-poem h3{font-family:var(--serif);text-align:center;margin:0 0 14px}.full-poem button{display:flex;gap:5px;justify-content:center;align-items:center;font-family:var(--serif);font-size:16px;width:100%;padding:6px;border-radius:4px}.full-poem button.selected{background:#e2d2a654}.scene-caption{position:absolute;top:11%;right:6%;display:flex;align-items:center;gap:12px;color:#fff1c7;text-shadow:0 2px 4px #23372c80}.scene-caption>span{font-family:Georgia,serif;font-size:40px;font-style:italic;border-right:1px solid #ead9a944;padding-right:12px}.scene-caption small{display:block;font-size:8px;letter-spacing:2px;margin-bottom:5px}.scene-caption strong{font-family:var(--serif);font-size:18px;font-weight:500;letter-spacing:3px}.interaction-hint{position:absolute;right:3%;bottom:15%;display:flex;gap:9px;align-items:center;max-width:310px;background:#fff6d7e3;border:1px solid #a68d5f80;box-shadow:inset 0 0 0 3px #ead4a759,0 5px 12px #34261e16;padding:12px 16px;border-radius:8px;font-size:11px;color:#78613f;line-height:1.65}.interaction-hint svg{color:#bf9a51}.reader-controls{position:absolute;bottom:5%;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:30px}.nav-arrow{width:59px;height:59px;flex-shrink:0;color:#ba9250}.reader-center{display:flex;flex-direction:column;gap:12px;align-items:center}.narrate{height:51px;min-width:206px;padding:8px 28px;display:flex;align-items:center;justify-content:center;gap:13px;background:linear-gradient(#fff8e8,#f8efd8);border:2px solid #ba9659;border-radius:28px;box-shadow:inset 0 0 0 3px #f7dfab,inset 0 0 0 5px #c6a76d77,0 4px #95753f66,0 8px 13px #58442c2b;font-family:var(--serif);font-weight:800;font-size:17px;color:#63563b}.narrate svg{color:#bf744f}.reading-mode{display:flex;align-items:center;padding:4px;border-radius:22px;gap:5px;background:#fff0cecc;border:1px solid #bca16d88;white-space:nowrap;box-shadow:0 2px 5px #42322125}.reading-mode button{display:flex;align-items:center;gap:5px;font-size:10px;padding:7px 11px;border-radius:17px}.reading-mode .selected{background:#9c6349;color:#fff2d3;box-shadow:inset 0 1px #eed6a54d}.collection-float{position:absolute;left:3%;bottom:5%;display:flex;gap:8px;align-items:center;font-size:10px;background:#2c4847dd;color:#ebd6a4;padding:11px 15px;border:1px solid #d5bc7c66;border-radius:25px;box-shadow:0 4px 8px #3b3b2222}.collection-float b{font-weight:500;padding-left:5px;border-left:1px solid #dec08d55}.modal{padding:0;border:1px solid #bca272;background:#fbf3db;border-radius:15px;max-height:85dvh;width:min(570px,calc(100vw - 30px));color:#5c533f;box-shadow:0 25px 100px #142b2b70,inset 0 0 0 5px #fff8e8}.modal.wide{width:min(820px,calc(100vw - 30px))}.modal::backdrop{background:#1a302d75;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.modal-inner{padding:30px;overflow:auto}.modal header{display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid #b7a3743a;padding-bottom:20px;margin-bottom:22px}.eyebrow{font-size:9px;letter-spacing:2px;color:#a38b59}.modal h2{font-family:var(--serif);font-size:22px;line-height:1.5;margin:9px 0 0;color:#52604b}.modal h3{font-family:var(--serif);font-size:18px}.modal-lead{font-size:12px;line-height:1.9;color:#958166}.gold-button,.outline-button{display:inline-flex;justify-content:center;align-items:center;gap:9px;border-radius:22px;padding:11px 21px;font-size:12px;font-weight:500;line-height:1.7}.gold-button{background:linear-gradient(#f5dfaa,#dfbe77);border:1px solid #c7a05c;color:#635437;box-shadow:inset 0 1px 1px #fff4d4,0 3px 6px #8d6e3830}.outline-button{border:1px solid #b6a07888;color:#85704c;background:#faf1d999}.empty-state{text-align:center;padding:44px 15px 55px;color:#9c8967}.empty-state>svg{color:#b49c6e}.empty-state h3{font-family:var(--serif);font-size:20px;color:#6c7258}.empty-state p{font-size:12px;line-height:1.9}.empty-star{font-size:70px;font-family:Georgia;line-height:1;color:#cbb479}.guide-grid article{padding:15px 0;border-bottom:1px solid #b29e7426}.guide-grid article>svg{color:#ad9762;width:22px;float:left;margin-right:15px}.guide-grid h3{font-size:14px;margin:0 0 8px}.guide-grid p{font-size:12px;line-height:1.9;color:#93856a;margin-left:37px}.source-note{font-size:10px;line-height:1.9;color:#a08c67;padding-top:20px;margin:0}.locked-message{text-align:center;padding:10px 10px 25px}.locked-message p{font-size:13px;color:#918165;line-height:2;margin-bottom:24px}.medallion{width:82px;height:82px;display:grid;place-items:center;border:1px solid #c4aa75;border-radius:50%;box-shadow:inset 0 0 0 4px #eddcae;background:#f8eccb;color:#a68f60;margin:0 auto}.settings-list label{padding:15px 0;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid #b6a37a33;font-size:12px}.settings-list strong{font-weight:500}.settings-list small{display:block;font-size:10px;color:#a38d68;margin-top:6px}.settings-list input[type=checkbox]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:38px;height:22px;border-radius:15px;background:#b9b29e;position:relative;flex-shrink:0;cursor:pointer}.settings-list input[type=checkbox]:before{content:"";position:absolute;width:16px;height:16px;border-radius:50%;top:3px;left:3px;background:#fff7dd;transition:transform .2s}.settings-list input:checked{background:#64816c}.settings-list input:checked:before{transform:translate(16px)}.settings-list input[type=range]{width:120px;accent-color:#7d936c}.backup-actions{display:flex;gap:12px;margin-top:23px;flex-wrap:wrap}.profiles-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.profile-card{position:relative;display:flex;flex-direction:column;align-items:center;gap:9px;padding:18px 8px;border:1px solid #c6b78f5c;border-radius:12px;background:#fffae550}.profile-card.active{border-color:#739179;background:#d6e0be35}.profile-card>svg{position:absolute;right:8px;top:8px;color:#64876b}.avatar{font-family:var(--serif);font-size:31px;width:60px;height:60px;display:grid;place-items:center;background:radial-gradient(#fff2ca,#e4cea2);border-radius:50%;color:#a17250}.profile-card strong{font-size:12px;max-width:100%;overflow:hidden;text-overflow:ellipsis}.profile-card small{font-size:9px;color:#9c8864}.profile-form{border-top:1px solid #c7b5854a;margin-top:24px;padding-top:6px}.profile-form h3{font-size:14px}.avatar-options{display:flex;gap:10px;margin-bottom:15px}.avatar-options button{width:37px;height:37px;border:1px solid #b9a47a4d;border-radius:50%;font-family:var(--serif);font-size:19px}.avatar-options .selected{background:#e3cda0;border-color:#b69662}.profile-input{display:flex;gap:10px}.profile-input input{width:100%;border:1px solid #b7a27775;background:#fff9e6;border-radius:20px;padding:10px 15px;font-size:12px}.profile-input button{flex-shrink:0}.collection-summary{display:flex;justify-content:space-around;text-align:center;border-bottom:1px solid #b7a37433;padding:0 0 20px}.collection-summary span{font-size:10px;color:#9d8861}.collection-summary b{display:block;font-family:Georgia;font-weight:400;font-size:31px;color:#657456;margin-bottom:5px}.souvenirs{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;padding-top:20px}.souvenirs button{display:flex;flex-direction:column;align-items:center;gap:10px;padding:20px 8px;background:#e9ddbd3d;border:1px solid #cab88c42;border-radius:12px}.souvenir-art{width:80px;height:80px;display:grid;place-items:center;border-radius:50%;background:radial-gradient(var(--theme-bg),#faf0d8);box-shadow:inset 0 0 0 4px #dfc58866;color:var(--theme-accent)}.souvenir-art svg{width:39px;height:39px;filter:drop-shadow(0 3px 2px #273b3466)}.souvenirs strong{font-family:var(--serif);font-size:13px}.souvenirs small{font-size:9px;color:#a18d66}.genre-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding-top:10px}.genre-grid button{display:flex;flex-direction:column;gap:12px;border:1px solid #c4b18569;background:#f6eccf;padding:18px;text-align:left;border-radius:10px}.genre-grid button.selected{border-color:#7a9170;background:#e1e7ca88}.genre-grid svg{color:#9a986d}.genre-grid strong{font-family:var(--serif);font-size:15px}.genre-grid span{display:flex;justify-content:space-between;font-size:10px;color:#9f8c64}.finish-content,.quiz-finish{text-align:center;padding:6px 0 20px}.finish-medal{width:116px;height:116px;display:grid;place-items:center;margin:0 auto 26px;color:#edcc7c;background:radial-gradient(var(--theme-bg),#294e44);border:5px solid #e1c587;outline:1px solid #b2985c;border-radius:50%;box-shadow:0 8px 15px #4d473126,inset 0 0 0 4px #fbe4a94d}.finish-content h3{font-size:23px;margin:12px 0}.finish-content p,.quiz-finish p{font-size:12px;line-height:2;color:#9c8967}.finish-actions{display:flex;gap:13px;justify-content:center;margin-top:25px;flex-wrap:wrap}.quiz-finish>svg{color:#c6a769}.quiz h3{font-size:20px;line-height:1.8}.quiz-options{display:flex;flex-direction:column;gap:12px}.quiz-options button{text-align:left;display:flex;align-items:center;gap:13px;padding:13px 16px;border:1px solid #c7b88e80;background:#fffae9;border-radius:10px;font-size:13px;line-height:1.8}.quiz-options button span{color:#a6946d;font-family:Georgia}.quiz-options .correct{background:#dfe8cb;border-color:#779768;opacity:1}.quiz-options .incorrect{background:#eddbd0;border-color:#c98d74;opacity:1}.quiz-explanation p{font-size:12px;line-height:1.9;color:#8c7b5c}.quiz-explanation .gold-button{margin-top:5px}.toast{position:fixed;z-index:200;bottom:25px;left:50%;transform:translate(-50%);max-width:calc(100vw - 28px);display:flex;align-items:center;gap:8px;padding:12px 20px;border-radius:30px;background:#304e47ed;border:1px solid #c9b67c77;box-shadow:0 5px 25px #11231b33;color:#f3e5bd;font-size:12px;line-height:1.7;animation:toastIn .3s}.toast svg{flex-shrink:0;color:#dac28c}.storage-warning{position:fixed;top:90px;left:15px;right:15px;z-index:100;background:#ffedb9;padding:10px;font-size:12px;text-align:center}.scene-fallback{height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(#cbd6bd,#cbaa76);color:#4d634e}.scene-fallback p{position:absolute;bottom:28%;right:5%;width:40%;font-size:12px;line-height:2}.reduced-motion *{animation:none!important;transition:none!important;scroll-behavior:auto!important}@keyframes cardIn{0%{opacity:0;transform:translateY(15px) rotate(-1deg)}to{opacity:1;transform:none}}@keyframes toastIn{0%{opacity:0;bottom:12px}to{opacity:1;bottom:25px}}@media(min-width:1600px){.poem-card{top:20%;left:6%}.reader-controls{bottom:8%}.shelf-main{max-width:1450px}.books-grid{column-gap:75px}}@media(max-width:1100px){.shelf-main{padding:0 28px 25px}.books-grid{column-gap:25px}.topbar{gap:18px}.reading .journey-pill{display:none}.poem-card{width:38%;min-width:310px;padding:28px 26px 20px;top:12%}.poem-card h1{font-size:26px}.poem-char{font-size:30px}.poem-line{gap:1px;margin:30px 0 24px}.reader-controls{left:58%;gap:20px}.collection-float{bottom:4%}.shelf-tools .text-button span{display:none}.book-object{width:163px;height:231px}.book-meta{width:165px}.books-grid{background:none}.interaction-hint{right:2%;max-width:235px}.header-actions{gap:9px}.round{width:44px;height:44px}}@media(max-width:760px){.topbar{padding:17px 20px;height:88px;gap:14px}.brand-name{font-size:25px;letter-spacing:4px}.brand-seal{font-size:26px}.brand-name small{font-size:8px}.journey-pill{padding:8px 10px;gap:5px;font-size:11px}.journey-pill i,.journey-pill i~svg,.journey-pill i~span{display:none}.header-actions{gap:8px}.round{width:39px;height:39px}.header-actions svg{width:18px}.shelf-main{padding:0 20px 20px}.shelf-heading{padding:23px 0 38px}.shelf-heading h1{font-size:26px;letter-spacing:2px}.shelf-heading p{font-size:10px;letter-spacing:1px}.shelf-kicker{font-size:9px;letter-spacing:2px}.shelf-toolbar{flex-wrap:wrap;padding-bottom:13px}.shelf-tools{width:100%;justify-content:space-between}.search-box{flex:1}.search-box input{width:100%}.shelf-tabs{gap:23px}.shelf-tabs .selected:after{bottom:-5px}.bookcase{padding:0 0 12px}.books-grid{grid-template-columns:repeat(3,1fr);gap:28px 18px;padding:4px 0}.book-object{width:139px;height:199px}.book-title{font-size:23px;left:21px;top:46px;max-height:145px;letter-spacing:3px}.book-author{left:62px;top:53px;font-size:9px}.book-edition{left:20px;top:19px;font-size:7px}.book-meta{width:140px;margin-top:19px}.book-meta>span{font-size:12px}.book-meta small{font-size:8px;letter-spacing:0}.shelf-footer{font-size:9px}.shelf-footer>span{display:none}.shelf-pagination>span{max-width:55%;line-height:1.7;font-size:10px}.reading .topbar{height:76px;padding:14px 15px}.reading .brand{gap:7px}.reading .brand-name{font-size:22px}.reading .brand-seal{font-size:24px}.reading .header-actions{gap:7px}.reading .round{width:38px;height:38px}.top-poem-progress{display:none}.reader-main{height:calc(100dvh - 76px)}.poem-card{left:3%;top:9%;width:42%;min-width:270px;padding:23px 21px 17px}.poem-card h1{font-size:25px}.card-topline{font-size:8px;letter-spacing:1px}.poet{font-size:9px}.poem-char{font-size:28px}.poem-line{gap:0;margin:28px 0 20px}.poem-char ruby rt{font-size:9px}.meaning-panel p{font-size:11px}.card-footnote{font-size:8px}.reader-controls{left:55%;bottom:3%;gap:14px}.reading .nav-arrow{width:48px;height:48px}.narrate{height:46px;min-width:174px;font-size:15px}.reading-mode button{font-size:9px;padding:6px 8px}.collection-float{display:none}.interaction-hint{font-size:10px;bottom:23%;max-width:185px;padding:8px 10px}.scene-caption{right:4%;top:5%}.scene-caption>span{font-size:29px}.scene-caption strong{font-size:15px}.scene-caption small{font-size:7px}.back-shelf{font-size:10px;top:-2px}.modal-inner{padding:23px}.modal h2{font-size:20px}.modal .source-note{font-size:9px}}@media(max-width:520px){.journey-pill{display:none}.shelf-heading h1{font-size:23px;letter-spacing:1px}.shelf-heading{padding-top:22px}.shelf-main{padding:0 23px 20px}.topbar{padding:14px 18px}.books-grid{grid-template-columns:repeat(2,1fr);gap:28px 22px}.book-object{width:143px;height:206px}.shelf-toolbar{margin-bottom:22px}.shelf-tabs{gap:27px}.room-background{background:linear-gradient(180deg,#365752 0,#6c7d70 25%,#c3a173 29%,#d5b587 32%,#dec398 80%,#e0c99e)}.book-meta{width:140px}.book-title{font-size:25px;max-height:151px}.shelf-footer{padding-top:16px}.reading .topbar{height:72px}.reader-main{height:calc(100dvh - 72px)}.reading .brand-name{font-size:23px}.reading .header-actions .round{width:35px;height:35px}.reading .header-actions{gap:6px}.poem-card{top:auto;bottom:137px;left:4%;width:92%;max-width:none;min-width:0;padding:19px 24px 16px;max-height:47%;overflow:auto}.poem-card h1{font-size:22px;margin:10px 0 5px}.poet{font-size:9px}.poem-line{margin:22px 0 13px;justify-content:center}.poem-char{font-size:32px;line-height:1.4;padding:0 3px}.poem-char ruby rt{font-size:9px}.punctuation{font-size:27px;line-height:1.5}.meaning-panel{padding-bottom:0;text-align:center}.meaning-panel>span{display:none}.meaning-panel p{font-size:11px;margin:0;line-height:1.7}.card-divider{margin:10px 0}.card-actions{gap:10px;flex-direction:row;justify-content:space-between}.read-done{font-size:10px;padding:8px 10px;gap:4px}.read-done svg{width:13px}.card-toggles{gap:10px;font-size:9px}.card-footnote{display:none}.reader-controls{bottom:22px;left:50%;width:94%;justify-content:center;gap:17px}.narrate{height:44px;min-width:168px;font-size:14px}.reader-center{gap:10px}.reading-mode{padding:3px}.reading-mode button{padding:6px 7px;font-size:9px;gap:4px}.reading-mode button svg{width:12px}.reading .nav-arrow{width:41px;height:41px;margin-bottom:32px}.reader-controls .nav-arrow svg{width:26px}.interaction-hint{right:5%;top:24%;bottom:auto;max-width:210px;font-size:9px;padding:7px 11px;border-radius:20px}.scene-caption{top:5%;right:6%}.scene-caption strong{font-size:17px}.back-shelf{left:5%;top:0}.modal-inner{padding:22px 20px}.modal h2{font-size:19px}.profile-card{padding:15px 7px}.profile-input{flex-wrap:wrap}.profile-input .gold-button{width:100%}.genre-grid{grid-template-columns:repeat(2,1fr);gap:10px}.genre-grid button{padding:15px}.souvenirs{grid-template-columns:repeat(2,1fr)}.profiles-grid{gap:8px}.profile-card strong{font-size:11px}.avatar{width:48px;height:48px;font-size:26px}.toast{font-size:11px;bottom:12px;border-radius:14px;width:max-content;max-width:92%;padding:10px 14px}.full-poem{position:static;margin-top:10px;max-height:180px;padding:15px}.full-poem button{font-size:15px}.full-poem h3{display:none}.collection-summary b{font-size:28px}.collection-summary span{font-size:9px}.finish-actions{flex-direction:column}.poetry-scene{bottom:27%}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}.full-poem .full-poem-close{position:absolute;right:12px;top:12px;width:30px;height:30px;display:grid;place-items:center;padding:0;border:0}.full-poem{padding-top:36px}.access-wait{min-height:100dvh;display:grid;align-content:center;text-align:center;gap:12px;background:#f6ecd4;color:#263c38;padding:24px}.reward-journey{padding:20px;border-radius:18px;background:#faf0d9;margin-bottom:20px}.reward-journey p{line-height:1.8}.reward-badges{display:flex;gap:10px;flex-wrap:wrap}.reward-badges span{padding:8px 12px;border-radius:20px;background:#e9d9aa}*,*:before,*:after{scrollbar-width:none!important;-ms-overflow-style:none!important}*::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}.header-actions{padding-right:180px}@media(max-width:700px){.header-actions{padding-right:60px}}:root{--comet-ink:#292840;--comet-gold:#dfb55d;--comet-spring:cubic-bezier(.2,1.35,.3,1)}html,body,#root{height:100%;overflow:hidden}body{font-family:ui-rounded,PingFang SC,Microsoft YaHei,sans-serif}.app{height:100dvh;min-height:0;overflow:hidden;color:var(--comet-ink)}button{font-family:inherit}.room-background{display:none}.topbar{position:fixed;top:18px;left:22px;right:22px;height:58px;padding:0;z-index:20;gap:14px;align-items:center}.brand{gap:7px;color:#fff2b5;text-shadow:1px 2px 0 #9b6e2c;filter:drop-shadow(0 2px 1px #5c451b55)}.brand-name,.reading .brand-name{font-family:inherit;font-weight:900;font-size:21px;letter-spacing:-.8px;white-space:nowrap}.brand-comet{font-size:30px}.journey-pill{background:#303859;border:2px solid #b4914d;color:#fff4c3;box-shadow:0 3px 6px #38251366;padding:5px 11px;gap:6px;height:35px;font-size:13px}.journey-pill small{font-size:11px;color:#fff4c3}.header-actions{gap:11px;margin-left:auto}.round,.wood-circle{width:58px;height:58px;border:0;border-radius:50%;padding:0;background:url(https://tulingos-dev.oss-cn-beijing.aliyuncs.com/yuyan/assets/wood-button-v1.webp) center/100% 100% no-repeat;box-shadow:0 5px 9px #342d3066;display:grid;place-items:center;color:#657b80;transition:transform .26s var(--comet-spring);cursor:pointer}.round:hover,.wood-circle:hover{transform:translateY(-3px) scale(1.08) rotate(-3deg)}.round:active,.wood-circle:active{transform:translateY(1px) scale(.94);transition-duration:80ms}.round svg{width:27px;height:27px;stroke-width:2.8;filter:drop-shadow(0 1px 0 white)}.profile-icon span{font-size:28px;font-family:inherit}.wood-circle:disabled{opacity:.45;cursor:default}.comet-shelf{position:absolute;top:0;right:0;bottom:0;left:0;isolation:isolate;touch-action:pan-y}.shelf-room-photo{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:url(https://tulingos-dev.oss-cn-beijing.aliyuncs.com/yuyan/assets/library-room-v1.webp) center/100% 100% no-repeat}.display-books{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;perspective:1800px}.display-book{position:absolute;bottom:25%;left:calc(15% + var(--book-index)*27%);width:min(18vw,31vh);height:36vh;padding:0;border:0;background:none;perspective:1200px;pointer-events:auto;outline-offset:12px;animation:book-arrive .65s var(--comet-spring) both;animation-delay:calc(var(--book-index)*65ms);transform:rotate(-1deg)}.display-book:nth-child(2){transform:rotate(.8deg)}.display-book:nth-child(3){transform:rotate(-1deg)}.display-book-solid{position:absolute;top:0;right:0;bottom:0;left:0;transform-style:preserve-3d;transform:rotateY(-8deg);transition:transform .5s var(--comet-spring);filter:drop-shadow(14px 20px 11px #37221366)}.display-book:hover .display-book-solid{transform:translateY(-17px) rotateY(-17deg) rotate(-2deg) scale(1.035)}.display-book:active .display-book-solid{transform:translateY(-8px) rotateY(-5deg) scale(.98)}.display-book-front{position:absolute;top:0;right:0;bottom:0;left:0;background-size:100% 100%;border-radius:1px 3px 3px 1px;box-shadow:inset 7px 0 9px #0004,inset 1px 1px #fff8;transform:translateZ(13px);overflow:hidden}.display-book-pages{position:absolute;top:-5px;left:0;right:0;height:25px;background:repeating-linear-gradient(#eae6d7,#eae6d7 2px,#b9b29d 3px);transform:rotateX(90deg);transform-origin:top center}.display-book-side{position:absolute;left:-20px;top:0;width:26px;height:100%;background:linear-gradient(90deg,#1a2340,#405072,#222a44);transform:rotateY(-90deg);transform-origin:right center}.unillustrated-cover-title{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(#243a51e8,#304454e8);color:#ffe5a1;gap:15px}.unillustrated-cover-title strong{font-size:clamp(21px,3vw,43px);writing-mode:vertical-rl;max-height:75%;letter-spacing:5px}.unillustrated-cover-title small{font-size:15px}.selection-dock{position:absolute;bottom:2.1%;left:50%;width:min(674px,64vw);transform:translate(-50%);z-index:5}.pick-book-label{position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);color:#fff8d5;font-size:23px;font-weight:900;white-space:nowrap;text-shadow:0 2px 3px #44321e;display:flex;align-items:center;gap:10px}.pick-book-label button{background:none;border:none;color:#fff4ca;padding:4px;display:grid;place-items:center}.selection-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:4px}.selection-card{height:18vh;min-height:106px;max-height:144px;border:3px solid #2a2d4a;border-radius:18px;background:#faf3d9 url(https://tulingos-dev.oss-cn-beijing.aliyuncs.com/yuyan/assets/paper-card-v1.webp) center/110% 110%;box-shadow:0 4px 8px #2a223655;padding:8px 15px 11px;display:flex;flex-direction:column;color:#777460;transition:transform .24s var(--comet-spring),box-shadow .24s}.selection-card:hover{transform:translateY(-6px);box-shadow:0 7px 13px #2a223677}.selection-title{font-size:clamp(21px,2.5vw,35px);font-weight:900;line-height:1.4;color:#dfc377;text-shadow:1px 2px 0 #94783f,0 -1px 0 white;flex:1;display:grid;place-items:center;white-space:nowrap}.title-spring{color:#edbaa1;text-shadow:1px 2px 0 #ad8651,0 -1px 0 white}.title-mountain{color:#a5d4cf;text-shadow:1px 2px 0 #547c78,0 -1px 0 white}.selection-progress{display:flex;align-items:center;gap:6px;margin:3px 0 7px}.selection-progress>i{height:7px;background:#ded5b5;border-radius:9px;box-shadow:inset 0 1px 3px #7c715044;flex:1;overflow:hidden}.selection-progress b{height:100%;background:#d3ad51;display:block}.selection-progress>span{display:flex;gap:2px;color:#b2a98b}.selection-meta{display:flex;justify-content:space-between;font-size:12px;align-items:center;gap:5px}.selection-meta>span:last-child{display:flex;gap:4px;align-items:center;color:#b1ac93}.selection-meta svg{height:19px;width:19px;fill:#b8b19666}.selection-meta small{font-size:9px;white-space:nowrap}.shelf-arrow{position:absolute;top:33%;width:56px;height:56px;color:#6e4320}.shelf-arrow svg{stroke-width:4;width:23px}.shelf-arrow.previous{left:-68px}.shelf-arrow.next{right:-68px}.shelf-dots{height:24px;display:flex;gap:6px;align-items:end;justify-content:center;position:relative}.shelf-dots>button:not(.all-poems-link){width:12px;height:12px;padding:0;border:2px solid #8e7147;border-radius:50%;background:#d1c6a7;box-shadow:0 1px 2px #38281966}.shelf-dots>button.active{background:#f5dc8c}.all-poems-link{position:absolute;right:0;bottom:0;border:0;background:#f8edcebb;border-radius:12px;padding:3px 8px;display:flex;gap:5px;align-items:center;color:#725531;font-size:10px}@keyframes book-arrive{0%{opacity:0;translate:80px 0;rotate:0 1 0 15deg}to{opacity:1;translate:0 0;rotate:0 1 0 0deg}}.book-intro-veil{position:fixed;top:0;right:0;bottom:0;left:0;z-index:25;display:flex;align-items:center;justify-content:center;background:#3b241515;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px)}.book-intro{width:470px;min-height:460px;max-height:85dvh;overflow:auto;padding:36px 42px 25px;text-align:center;border:5px solid #2b2d46;border-radius:14px;background:#fff7de url(https://tulingos-dev.oss-cn-beijing.aliyuncs.com/yuyan/assets/paper-card-v1.webp) center/110% 110%;box-shadow:0 18px 36px #261b2555;animation:intro-pop .65s var(--comet-spring)}.intro-stars{color:#c49e50;letter-spacing:15px;font-size:23px}.book-intro h1{font-family:inherit;font-weight:900;font-size:64px;color:#e4c776;margin:24px 0 5px;text-shadow:1px 2px 0 #806839,0 -1px 0 #fff}.intro-author{color:#99743e;letter-spacing:5px;font-size:18px}.book-intro p{line-height:1.85;font-size:19px;color:#565041;margin:32px 0 25px}.wood-pill{display:flex;align-items:center;justify-content:center;gap:10px;padding:10px 24px;margin:14px auto 0;border:7px ridge #ddb777;border-radius:40px;color:#292840;background:#fff8df url(https://tulingos-dev.oss-cn-beijing.aliyuncs.com/yuyan/assets/paper-card-v1.webp) center/110% 130%;box-shadow:0 5px 8px #47342655,inset 0 0 0 1px #fff;font-weight:900;font-size:20px;transition:transform .24s var(--comet-spring)}.wood-pill:hover{transform:translateY(-3px) scale(1.03)}.wood-pill.small{font-size:14px;border-width:5px;padding:7px 17px}.catalog-search{display:flex;align-items:center;gap:10px;background:#efe4c9;border-radius:15px;padding:12px 16px;margin:15px 0}.catalog-search input{border:0;background:none;outline:none;width:100%;font-size:16px}.catalog-results{display:grid;grid-template-columns:1fr 1fr;gap:7px;max-height:40vh;overflow:auto;margin-bottom:20px}.catalog-results button{border:1px solid #d7c393;background:#fff9e9;border-radius:10px;padding:12px;display:flex;align-items:center;justify-content:space-between;text-align:left;color:#514831}.catalog-results small{display:block;font-size:11px;color:#948363;margin-top:4px}@keyframes intro-pop{0%{opacity:0;transform:translateY(30px) scale(.86)}to{opacity:1;transform:translateY(0) scale(1)}}.reading .topbar{top:18px}.reading .journey-pill{display:flex}.top-poem-progress{left:50%;top:12px;background:#6b563c66;border-radius:25px;padding:6px 14px;gap:8px}.top-poem-progress button{width:18px;height:18px;background:transparent;color:#e2b451;border:0;box-shadow:none}.top-poem-progress button.active{transform:scale(1.2);background:none;color:#ffe188}.top-poem-progress button svg{width:17px;height:17px}.poem-card{position:absolute;left:3.4%;top:26%;width:37%;max-width:510px;min-height:0;padding:42px 45px 29px;border:0;border-radius:0;background:url(https://tulingos-dev.oss-cn-beijing.aliyuncs.com/yuyan/assets/paper-card-v1.webp) center/100% 100% no-repeat;box-shadow:none;filter:drop-shadow(0 14px 12px #30222155);color:#292840;animation:intro-pop .65s var(--comet-spring);transform:none}.poem-card:before,.poem-card:after{display:none}.card-topline{color:#806135;font-size:11px;font-weight:800;letter-spacing:2px}.poem-card h1{font-family:inherit;font-size:29px;font-weight:900;letter-spacing:0;margin:10px 0 7px;color:#805127}.poet{font-size:12px;color:#9b825c}.poem-line{margin:24px 0 13px;gap:0;flex-wrap:wrap;justify-content:flex-start}.poem-char{font-family:inherit;font-size:36px;font-weight:500;border-radius:4px;border-bottom:2px dotted #c6ad79;padding:0 2px;line-height:1.7;color:#25263d}.poem-char:hover{background:#efcf7044;transform:translateY(-2px)}.poem-char rt{font-size:13px;color:#8a7046}.line-decoration{display:none}.punctuation{font-size:30px}.meaning-panel{background:none;padding:0;border:0;margin:10px 0 15px}.meaning-panel>span{display:none}.meaning-panel p{font-family:inherit;font-size:21px;line-height:1.65;color:#373442}.card-divider{display:none}.card-actions{padding:0;gap:8px;justify-content:space-between}.read-done{font-family:inherit;font-size:12px;background:#f0dab0;border:1px solid #d1b26f;box-shadow:0 2px 3px #7c602b22;padding:7px 10px;color:#75532f}.read-done svg{width:12px;height:12px}.card-toggles{gap:8px}.card-toggles button{font-size:10px}.card-footnote{font-size:10px;text-align:left;color:#9e9170;margin:15px 0 6px;letter-spacing:1px}.back-shelf,.scene-caption{display:none}.reader-controls{bottom:20px;left:25%;width:50%;transform:none;gap:0;justify-content:space-between;align-items:end}.reader-controls .nav-arrow{width:78px;height:78px;box-shadow:0 6px 9px #33202855}.nav-arrow:first-child{color:#599bb6}.nav-arrow:last-child{color:#e3b94d}.nav-arrow svg{width:34px;height:34px;stroke-width:4;filter:drop-shadow(1px 1px 0 #715330)}.reader-center{gap:12px;align-items:center;display:flex;flex-direction:column}.narrate{font-family:inherit;min-width:235px;height:62px;border:7px ridge #d8b271;background:#fff6d8 url(https://tulingos-dev.oss-cn-beijing.aliyuncs.com/yuyan/assets/paper-card-v1.webp) center/110% 140%;color:#282941;font-size:22px;font-weight:900;box-shadow:0 6px 8px #33202877;border-radius:40px;gap:10px}.narrate svg{color:#e46e51;stroke:#864e2b;stroke-width:1.5}.reading-mode{padding:0;background:none;border:0;box-shadow:none;gap:8px}.reading-mode button{font-family:inherit;border:4px ridge #dab479;border-radius:30px;padding:5px 10px;font-size:12px;font-weight:700;background:#fff6df;color:#363548;box-shadow:0 3px 5px #33202844;white-space:nowrap}.reading-mode button.selected{background:#dc8263;color:#fff7cf;border-color:#e3bb71}.reading-mode button svg{width:13px}.interaction-hint{right:2%;bottom:24px;left:auto;max-width:285px;width:24%;padding:12px 15px;background:#fff9e7;border:2px dashed #a3a399;outline:5px solid #fffae4;border-radius:14px;box-shadow:0 6px 6px #35282055;color:#4a493c;font-size:12px;line-height:1.5}.collection-float{display:none}.book-intro-veil~.toast{z-index:35}.full-poem{background:#fff6df}.reduced-motion *{animation:none!important;transition:none!important}@media(max-width:1000px){.brand-name,.reading .brand-name{font-size:16px}.brand-comet{font-size:25px}.journey-pill{font-size:11px;padding:4px 7px}.topbar{left:15px;right:15px;gap:8px}.header-actions{gap:7px}.round{width:50px;height:50px}.top-poem-progress{top:6px}.reading .journey-pill{display:none}.poem-card{padding:35px 32px 25px;width:39%;top:25%}.meaning-panel p{font-size:18px}.poem-char{font-size:31px}.reader-controls{left:24%;width:52%}.narrate{min-width:190px;font-size:18px;height:55px}.reader-controls .nav-arrow{width:62px;height:62px}.interaction-hint{width:20%;padding:9px;font-size:10px}.selection-dock{width:66vw}.selection-title{font-size:27px}}@media(max-width:600px){.topbar{top:10px!important;height:44px;left:10px;right:10px}.brand-name,.reading .brand-name{font-size:13px;letter-spacing:-.4px}.brand-comet{font-size:20px}.journey-pill{display:none}.round{width:42px;height:42px}.round svg{width:21px;height:21px}.header-actions{gap:5px}.profile-icon span{font-size:20px}.shelf-room-photo{background-size:auto 100%;background-position:center}.display-book{bottom:35%;width:34vw;height:32vh;left:calc(-12% + var(--book-index)*44%)}.display-book:first-child,.display-book:nth-child(3){opacity:.85}.display-book-solid{transform:rotateY(-8deg)}.display-book:nth-child(2){z-index:2}.selection-dock{width:82vw;bottom:7%}.selection-cards{gap:6px}.selection-card{min-height:130px;height:17vh;border-width:2px;border-radius:12px;padding:9px 5px}.selection-title{font-size:19px;white-space:normal}.selection-meta{font-size:10px}.selection-meta>span:last-child svg{width:12px;height:12px}.selection-meta small{display:none}.selection-progress{gap:2px}.selection-progress>span{gap:0}.selection-progress svg{width:9px}.shelf-arrow{width:36px;height:36px}.shelf-arrow.previous{left:-33px}.shelf-arrow.next{right:-33px}.pick-book-label{font-size:21px;bottom:calc(100% + 14px)}.shelf-dots{height:30px}.all-poems-link{bottom:-25px;right:50%;transform:translate(50%);white-space:nowrap}.book-intro{width:90vw;padding:28px;min-height:0}.book-intro h1{font-size:49px}.book-intro p{font-size:17px}.reading .top-poem-progress{top:52px;left:50%;padding:5px 10px;gap:8px}.poem-card{left:4%;top:auto;bottom:132px;width:92%;max-width:none;padding:28px 28px 22px;max-height:39vh;overflow:auto}.poem-card h1{font-size:24px;margin:5px 0}.card-topline{font-size:9px}.poet{font-size:10px}.poem-line{margin:12px 0 7px}.poem-char{font-size:30px;line-height:1.3}.poem-char rt{font-size:10px}.meaning-panel{margin:7px 0}.meaning-panel p{font-size:16px;line-height:1.45}.card-footnote{display:none}.card-actions{flex-direction:row}.reader-controls{left:6%;width:88%;bottom:16px}.reader-controls .nav-arrow{width:53px;height:53px;margin-bottom:27px}.narrate{height:51px;font-size:18px;min-width:180px}.reader-center{gap:8px}.reading-mode{gap:4px}.reading-mode button{font-size:10px;padding:4px 6px;border-width:3px}.interaction-hint{bottom:auto;top:43%;right:5%;width:auto;max-width:65%;font-size:10px;padding:6px 10px;outline-width:3px}.catalog-results{grid-template-columns:1fr}.reading .scene{top:0;right:0;bottom:31%;left:0}.reading-mode button svg{display:none}}@media(prefers-reduced-motion:reduce){.display-book,.book-intro,.poem-card{animation:none}.display-book-solid,.round,.wood-circle{transition:none}}.reading .topbar{height:58px;padding:0;background:none;gap:12px}.reader-main{position:absolute;top:0;right:0;bottom:0;left:0;height:100dvh}.poem-card{padding-bottom:36px}.card-expand-control{position:absolute;right:28px;top:27px;width:24px;height:24px;display:grid;place-items:center;background:none;border:none;color:#b39c6e;opacity:0;transition:opacity .2s}.poem-card:hover .card-expand-control,.card-expand-control:focus-visible{opacity:1}.poem-card.card-expanded{position:fixed;z-index:24;left:50%;top:50%;bottom:auto;transform:translate(-50%,-50%);width:min(700px,92vw);max-width:700px;min-height:410px;padding:60px 65px;filter:drop-shadow(0 0 100px #1b172ddd);animation:none}.card-expanded .poem-char{font-size:50px}.card-expanded .meaning-panel p{font-size:27px}.card-expanded .card-expand-control{opacity:1;top:35px;right:35px}.card-expanded .card-footnote{font-size:12px}.card-toggles{display:flex}.reader-controls{z-index:8}.book-intro-veil{z-index:26}@media(max-width:600px){.reading .topbar{height:44px}.reading .poetry-scene{bottom:31%}.poem-card.card-expanded{padding:35px 30px;min-height:0;max-height:75dvh}.card-expanded .poem-char{font-size:36px}.card-expanded .meaning-panel p{font-size:22px}.card-expand-control{opacity:1;right:19px;top:15px}}.shelf-room-photo{background:url(https://tulingos-dev.oss-cn-beijing.aliyuncs.com/yuyan/assets/wallpaper-v1.webp) center/580px 580px repeat;bottom:34%;border-bottom:24px solid #f1eadb}.shelf-desktop{position:absolute;top:66%;right:0;bottom:0;left:0;background:url(https://tulingos-dev.oss-cn-beijing.aliyuncs.com/yuyan/assets/desk-v1.webp) center/cover;z-index:-1}.shelf-display-plank{position:absolute;left:5%;right:3%;top:67%;height:16px;background:url(https://tulingos-dev.oss-cn-beijing.aliyuncs.com/yuyan/assets/desk-v1.webp) center/cover;border-bottom:6px solid #b0773a;box-shadow:0 6px 6px #36241566;transform:perspective(400px) rotateX(17deg);z-index:-1}.display-book{bottom:32%;height:26vh;width:min(17vw,24vh);left:calc(15% + var(--book-index)*27%)}.shelf-toys-layer{position:absolute;top:15%;height:23%;left:0;right:0;z-index:2;pointer-events:none}.shelf-toys-webgl{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:auto;touch-action:none}.toy-word-tip{position:absolute;transform:translate(-50%,-65%);font-size:25px;color:#fff2ad;text-shadow:1px 2px 0 #705021,0 0 9px #f3d991;white-space:nowrap;font-weight:900;pointer-events:none}.toy-keyboard-access{position:absolute;top:0;left:0}.toy-keyboard-access button{position:absolute;clip-path:inset(50%);width:1px;height:1px;overflow:hidden}.toy-keyboard-access button:focus-visible{clip-path:none;width:auto;height:auto;white-space:nowrap;background:#fff3cd;border:2px solid #c99845;padding:9px;pointer-events:auto;z-index:9}.pointer-magic{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;z-index:100}.selection-dock{bottom:2.5%}.pick-book-label{bottom:calc(100% + 17px)}@media(max-width:600px){.shelf-toys-layer{top:15%;height:20%}.shelf-room-photo{bottom:36%;background-size:420px}.shelf-desktop{top:64%}.shelf-display-plank{top:63%}.display-book{bottom:36%;height:27vh;width:31vw;left:calc(-10% + var(--book-index)*44%)}.toy-word-tip{font-size:18px}.selection-dock{bottom:7%}}.scene-object-label{position:absolute;pointer-events:none;transform:translate(-50%,-100%);font-size:26px;font-weight:900;color:#ffeab4;text-shadow:0 2px 0 #765134,0 0 10px #9f6917;opacity:0;transition:opacity .15s;white-space:nowrap;z-index:5}.comet-shelf:has(.selection-card:nth-child(1):hover) .display-book:nth-child(1) .display-book-solid,.comet-shelf:has(.selection-card:nth-child(2):hover) .display-book:nth-child(2) .display-book-solid,.comet-shelf:has(.selection-card:nth-child(3):hover) .display-book:nth-child(3) .display-book-solid{transform:translateY(-17px) rotateY(-17deg) rotate(-2deg) scale(1.035)}@font-face{font-family:YuyanPlay;src:url(https://tulingos-dev.oss-cn-beijing.aliyuncs.com/yuyan/fonts/YuyanPlay.woff2) format("woff2");font-weight:400 900;font-display:swap}@font-face{font-family:YuyanRead;src:url(https://tulingos-dev.oss-cn-beijing.aliyuncs.com/yuyan/fonts/YuyanRead.woff2) format("woff2");font-weight:400 900;font-display:swap}@font-face{font-family:YuyanBrush;src:url(https://tulingos-dev.oss-cn-beijing.aliyuncs.com/yuyan/fonts/YuyanBrush.woff2) format("woff2");font-weight:400 900;font-display:swap}@font-face{font-family:PatrickHand;src:url(https://tulingos-dev.oss-cn-beijing.aliyuncs.com/yuyan/fonts/PatrickHand-Regular.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}:root{--ui-font:YuyanPlay,"PingFang SC",sans-serif;--read-font:YuyanRead,"Kaiti SC",serif;--display-font:YuyanBrush,"Kaiti SC",serif;--english-hand-font:PatrickHand,"Comic Sans MS","Bradley Hand",cursive;--serif:var(--read-font)}body,button,input,select,.brand-name{font-family:var(--ui-font)}.poem-char,.punctuation,.poem-line,.meaning-panel p,.full-poem button,.book-intro p,.modal p,.settings-list small,.source-note{font-family:var(--read-font)}.poem-card h1,.full-poem h3,.poem-lettering{font-family:var(--display-font);font-weight:400}.poem-char{font-weight:400;font-size:38px}.poem-char rt{font-family:var(--read-font);font-size:13px}.meaning-panel p{font-size:23px;line-height:1.7}.poet{font-family:var(--read-font);font-size:14px}.card-topline{font-family:var(--ui-font);font-size:12px;font-weight:400}.poem-card h1{font-size:35px;color:#745126}.card-footnote{font-family:var(--read-font);font-size:12px}.read-done{font-size:13px}.card-toggles button{font-size:12px}.narrate,.reading-mode button,.pick-book-label,.wood-pill,.selection-title,.toy-word-tip,.scene-object-label{font-family:var(--ui-font);font-weight:400}.toy-word-tip,.scene-object-label{text-shadow:0 -1px 0 #fff9d5,0 2px 0 #8c6234,0 3px 0 #72502d,0 5px 8px #5d3a4277}.brand{position:relative;gap:0;min-width:169px;height:57px;filter:drop-shadow(0 2px 1px #5c451b66)}.brand-art{width:139px;height:55px;object-fit:contain}.brand-subtitle{font-family:var(--ui-font);font-size:13px;writing-mode:vertical-rl;letter-spacing:1px;color:#fff0bd;line-height:1.1;height:50px;margin-left:-5px}.header-actions{gap:13px}.round{width:58px;height:58px}.profile-icon .avatar-picture{width:33px;height:40px;display:block;background-size:auto 120%;background-repeat:no-repeat;background-position:50% 25%;font-family:var(--ui-font);font-size:25px;line-height:40px}.poem-wordmark{display:block;width:100%;height:100%;object-fit:contain;object-position:center;-webkit-user-select:none;user-select:none;filter:drop-shadow(0 2px 1px #65502b33)}.selection-title{height:62px;min-height:62px;flex:none;display:block;text-shadow:none}.selection-title .poem-wordmark{width:100%;height:62px}.poem-lettering{display:grid;place-items:center;height:100%;font-size:33px;letter-spacing:1px;color:#f4d98e;text-shadow:0 -1px 0 #fff7d3,1px 1px 0 #a5783c,2px 2px 0 #8f6634,2px 3px 0 #7a5530,0 5px 4px #543d3944;transform:rotate(-2deg)}.title-spring .poem-lettering{color:#f3c1a4}.title-mountain .poem-lettering{color:#b5dad1}.poem-title-treatment{position:relative;isolation:isolate;display:grid;place-items:center;width:100%;height:100%;overflow:visible}.poem-title-ornament{position:absolute;z-index:0;top:-10%;right:-4%;bottom:-10%;left:-4%;width:108%;height:120%;object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none;filter:drop-shadow(0 2px 2px #30231944)}.poem-title-treatment .poem-lettering{position:relative;z-index:1;width:100%;padding:0 12%;box-sizing:border-box;color:var(--title-ink,#f4d98e);text-shadow:0 -1px 0 var(--title-highlight,#fff7d3),1px 1px 0 var(--title-shadow,#8f6634),2px 2px 0 var(--title-shadow,#8f6634),0 5px 4px #30231955;transform:rotate(var(--title-rotation,0deg)) scale(var(--title-scale,1));white-space:nowrap}.book-intro h1 .poem-title-ornament{top:-18%;right:-8%;bottom:-18%;left:-8%;width:116%;height:136%}.book-intro h1 .poem-title-treatment .poem-lettering{padding:0 17%}.poem-title-treatment .poem-lettering[data-title-size=paragraph]{padding:0 13%;white-space:normal;overflow-wrap:anywhere;text-align:center;line-height:1.08}.book-intro h1{height:130px;margin:5px auto 14px;width:95%;display:flex;align-items:center;justify-content:center}.book-intro h1 .poem-lettering{font-size:68px}.book-intro h1 .poem-lettering[data-title-size=long]{font-size:48px;letter-spacing:0}.book-intro h1 .poem-lettering[data-title-size=extra-long]{font-size:34px;letter-spacing:0}.book-intro h1 .poem-lettering[data-title-size=paragraph]{padding:0 9%;font-size:19px;line-height:1.2;letter-spacing:0}.book-intro .intro-author{font-family:var(--read-font);font-size:19px}.book-intro p{font-size:23px;line-height:1.7}.intro-stars{font-size:17px;margin-top:0}.book-intro{min-height:460px;width:470px;padding:30px 38px 24px}.wood-pill{font-size:24px}.wood-pill.small{font-size:16px}.shelf-toys-layer{top:3.8%;height:24%}.shelf-room-photo{bottom:31%;background-size:730px 730px;filter:brightness(1.45) sepia(.2)}.shelf-desktop{top:69%}.display-book{bottom:24%;height:35vh;width:min(17vw,31vh);left:calc(15% + var(--book-index)*26.5%)}.display-book-solid{transform:rotateY(-7deg) rotateX(1deg)}.shelf-display-plank{top:70%;height:50px;left:4%;right:-5%;border-bottom:9px solid #a96c2e;border-top:2px solid #f3d19a;transform:perspective(500px) rotateX(15deg);background-size:450px;box-shadow:0 10px 10px #6b442988}.wall-brackets{position:absolute;top:26.3%;left:0;right:0;height:7%;z-index:-1;pointer-events:none}.wall-brackets i{position:absolute;width:23px;height:54px;background:linear-gradient(95deg,#ad6e30,#e8b46a 45%,#9d5f27);transform:skew(22deg);box-shadow:6px 3px #5a3d2c55}.wall-brackets i:nth-child(1){left:15%}.wall-brackets i:nth-child(2){left:55%}.wall-brackets i:nth-child(3){left:95%}.selection-dock{bottom:3.6%;width:668px;max-width:68vw}.selection-cards{gap:12px}.selection-card{border:0;border-radius:14px;background-size:125% 125%;box-shadow:0 0 0 1px #d4b982,0 0 0 4px #252b49,0 10px 24px #30202888;height:124px;padding:7px 14px 9px;min-height:0;max-height:none}.selection-progress{margin:3px 0 5px}.selection-progress>span{gap:3px}.quiz-dot{font-family:var(--ui-font);display:grid;place-items:center;font-style:normal;border-radius:50%;height:13px;width:13px;background:#c9bea0;color:#f5e9cb;font-size:9px;box-shadow:inset 0 0 0 1px #0001}.quiz-dot.won{background:#74b77a;color:#fffce5}.pick-book-label{font-size:23px;bottom:calc(100% + 11px);text-shadow:0 2px 0 #765131,0 5px 12px #38200cbb}.shelf-dots{height:21px;gap:8px}.shelf-dots>button:not(.all-poems-link){width:9px;height:9px;border:0;box-shadow:0 0 0 2px #38292388}.shelf-arrow{background:radial-gradient(circle at 35% 30%,#ffe8b8,#e9b56b 70%,#c98a44);box-shadow:0 0 0 3px #242943,0 8px 18px #30202888,inset 0 -3px #a86a2c;width:52px;height:52px}.all-poems-link{bottom:-19px;background:none;color:#eddbb5;font-family:var(--read-font);font-size:12px;text-shadow:0 1px 2px #583c29}.selection-meta{font-family:var(--read-font);font-size:12px}.modal{border:0;border-radius:12px;width:630px;max-width:94vw;max-height:94dvh;padding:0;background:#fbf3d9 url(https://tulingos-dev.oss-cn-beijing.aliyuncs.com/yuyan/assets/paper-card-v1.webp) center/100% 100%;color:#48331f;box-shadow:0 0 0 6px #252943,0 20px 80px #080f29aa}.modal::backdrop{background:#13192bd1;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal-inner{padding:40px 44px 35px}.modal-inner>header{padding-bottom:24px;margin-bottom:14px;border-bottom:1px solid #c3a96a88;position:relative;align-items:center;gap:20px}.modal-inner>header:after{content:"✦";position:absolute;bottom:-9px;left:50%;color:#d5b35e;background:#faf0d3;padding:0 13px;font-size:18px}.modal .eyebrow{font-family:var(--ui-font);font-size:11px;letter-spacing:3px;color:#a17b3d}.modal h2{font-family:var(--ui-font);font-weight:400;font-size:34px;color:#3b2b1d;letter-spacing:0;margin:7px 0}.modal .round.small{width:49px;height:49px;flex-shrink:0}.settings-list label{position:relative;padding:19px 0 19px 55px;border-bottom:1px dashed #c9b88266;gap:20px;min-height:82px}.settings-list label:before{content:"♪";position:absolute;left:0;top:20px;width:38px;height:38px;display:grid;place-items:center;font-family:var(--ui-font);font-size:26px;color:#998450;background:url(https://tulingos-dev.oss-cn-beijing.aliyuncs.com/yuyan/assets/wood-button-v1.webp) center/contain no-repeat}.settings-list label:nth-child(2):before{content:"♫";color:#578faa}.settings-list label:nth-child(3):before{content:"字";font-size:20px;color:#b97d48}.settings-list label:nth-child(4):before{content:"☾"}.settings-list label:nth-child(5):before{content:"»";color:#c99c4a}.settings-list strong{font-family:var(--ui-font);font-size:20px;font-weight:400;color:#4b3523}.settings-list small{font-size:14px;line-height:1.4;color:#9b835c}.settings-list input[type=checkbox]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:47px;height:27px;flex-shrink:0;border:2px solid #d4ba81;border-radius:20px;background:#dfd3b4;box-shadow:inset 0 2px 3px #79653e44;cursor:pointer;position:relative;transition:background .2s}.settings-list input[type=checkbox]:before{content:"";position:absolute;left:2px;top:2px;width:19px;height:19px;border-radius:50%;background:#fff7df;box-shadow:0 2px 3px #5b493b55;transition:transform .25s var(--comet-spring)}.settings-list input[type=checkbox]:checked{background:#91b999}.settings-list input[type=checkbox]:checked:before{transform:translate(20px)}.settings-list input[type=range]{accent-color:#c5a15b}.backup-actions{margin-top:26px;gap:12px}.outline-button,.gold-button{font-family:var(--ui-font);font-size:16px;border-radius:24px;border:2px solid #c9a770;background:#fff6de;color:#6c4c2c;box-shadow:0 3px #ae854d55;padding:10px 18px}.modal .source-note{font-size:13px;line-height:1.7;color:#9d8863}.modal .modal-lead{font-size:21px}.modal h3{font-family:var(--ui-font);font-weight:400}.profile-card strong,.souvenirs strong{font-family:var(--ui-font);font-size:18px}.profile-card small,.souvenirs small{font-family:var(--read-font);font-size:13px}.profile-input input{font-family:var(--read-font);font-size:17px}.collection-summary b{font-family:var(--ui-font);color:#bd9342}.collection-summary span{font-family:var(--read-font);font-size:15px}.quiz h3{font-size:25px}.quiz-options button{font-family:var(--read-font);font-size:21px}.toast{font-family:var(--read-font);background:#fff1caed;border:2px solid #c6a05f;color:#60462c;font-size:16px;box-shadow:0 5px 20px #40281344}.interaction-hint{font-family:var(--read-font);font-size:14px}@media(max-width:1000px){.brand{min-width:145px}.brand-art{width:116px}.brand-subtitle{font-size:11px;height:45px}.selection-dock{width:66vw;max-width:none}.selection-cards{gap:10px}.selection-card{padding:8px 11px;height:124px}.selection-title,.selection-title .poem-wordmark{height:59px;min-height:59px}.poem-char{font-size:34px}.meaning-panel p{font-size:21px}.round{width:50px;height:50px}.poem-card h1{font-size:32px}.shelf-toys-layer{top:6%;height:24%}.wall-brackets{top:28%}.poem-card{padding:36px 32px}.interaction-hint{font-size:12px}}@media(max-width:600px){.brand{min-width:105px;height:42px}.brand-art{width:94px;height:42px}.brand-subtitle{display:none}.round{width:42px;height:42px}.shelf-toys-layer{top:10%;height:21%}.wall-brackets{top:29%;height:4%}.wall-brackets i{height:29px;width:15px}.shelf-room-photo{bottom:34%;background-size:510px}.shelf-desktop{top:66%}.display-book{bottom:33%;height:29vh;width:33vw;left:calc(-10% + var(--book-index)*44%)}.shelf-display-plank{top:65%;height:30px}.selection-dock{width:81vw;bottom:7%}.selection-cards{gap:7px}.selection-card{height:115px;padding:7px 5px;border-radius:10px;box-shadow:0 0 0 1px #d4b982,0 0 0 3px #252b49,0 8px 14px #30202888}.selection-title,.selection-title .poem-wordmark{height:55px;min-height:55px}.poem-lettering{font-size:23px}.selection-meta{font-size:11px}.selection-meta svg{width:12px}.shelf-arrow{width:33px;height:33px}.shelf-arrow.previous{left:-34px}.shelf-arrow.next{right:-34px}.pick-book-label{font-size:21px}.all-poems-link{bottom:-22px}.poem-char{font-size:33px}.meaning-panel p{font-size:19px}.poem-card h1{font-size:29px}.poem-card{padding:26px}.card-topline{font-size:10px}.poet{font-size:12px}.card-toggles button,.read-done{font-size:11px}.modal-inner{padding:27px 22px}.modal h2{font-size:27px}.settings-list label{padding-left:47px}.settings-list strong{font-size:18px}.settings-list small{font-size:13px}.backup-actions{flex-wrap:wrap}.book-intro{width:89vw;padding:24px}.book-intro h1{height:100px}.book-intro p{font-size:21px}.book-intro h1 .poem-lettering{font-size:54px}.wood-pill{font-size:20px}.interaction-hint{font-size:12px}.poem-card.card-expanded .poem-char{font-size:40px}}.round[aria-label=关闭声音],.round[aria-label=开启声音],.round[aria-label=设置],.round[aria-label=靠近诗境],.round[aria-label=恢复视角],.reader-controls .nav-arrow{background:none;box-shadow:none;position:relative;isolation:isolate;filter:drop-shadow(0 4px 3px #47342666)}.round[aria-label=关闭声音]:before,.round[aria-label=开启声音]:before,.round[aria-label=设置]:before,.round[aria-label=靠近诗境]:before,.round[aria-label=恢复视角]:before,.reader-controls .nav-arrow:before{content:"";position:absolute;top:-5%;right:-5%;bottom:-5%;left:-5%;background-image:url(https://tulingos-dev.oss-cn-beijing.aliyuncs.com/yuyan/assets/control-atlas-v1.webp);background-size:300% 200%;background-position:0 0;clip-path:circle(44% at 50% 50%);z-index:-1}.round[aria-label=设置]:before{background-position:50% 0}.round[aria-label=靠近诗境]:before,.round[aria-label=恢复视角]:before{background-position:100% 0}.reader-controls .nav-arrow:first-child:before{background-position:0 100%}.reader-controls .nav-arrow:last-child:before{background-position:50% 100%}.round[aria-label=关闭声音]>svg,.round[aria-label=设置]>svg,.round[aria-label=靠近诗境]>svg,.round[aria-label=恢复视角]>svg,.reader-controls .nav-arrow>svg{visibility:hidden}.round[aria-label=开启声音]:after{content:"";position:absolute;width:52%;height:3px;background:#a95539;transform:rotate(-45deg);box-shadow:0 0 0 1px #ffe6c0}.round[aria-label=开启声音]>svg{visibility:hidden}.modal{background-size:113% 115%}.shelf-room-photo{filter:brightness(1.5) contrast(.83) sepia(.22)}.display-book{height:min(35vh,20vw)}.brand-art{width:155px}.brand{min-width:181px}.selection-dock .all-poems-link{bottom:-17px}.selection-card:hover .poem-wordmark{filter:drop-shadow(0 3px 2px #8b682b55);transform:rotate(-2deg) scale(1.05);transition:transform .3s var(--comet-spring)}@media(max-width:1000px)and (min-width:601px){.shelf-toys-layer{top:12%;height:23%}.wall-brackets{top:33%;height:5%}.wall-brackets i{height:39px}.display-book{bottom:32%;height:20vw}.shelf-display-plank{top:67%;height:35px}.shelf-room-photo{bottom:34%}.shelf-desktop{top:66%}.selection-dock{bottom:3.6%}.brand{min-width:152px}.brand-art{width:125px}}@media(max-width:600px){.display-book{height:29vh}.brand{min-width:104px}.brand-art{width:100px}.brand-subtitle{display:none}.selection-dock .all-poems-link{bottom:-23px}}.selection-title{display:flex;align-items:center;justify-content:center}.selection-title .poem-wordmark{aspect-ratio:auto}.book-intro h1 .poem-wordmark{height:auto;aspect-ratio:auto;width:120%;max-width:none;flex-shrink:0}.book-intro h1{overflow:visible}.book-intro{background-size:116% 115%}.book-waiting .poem-card,.book-waiting .reader-controls,.book-waiting .interaction-hint,.book-closing .poem-card,.book-closing .reader-controls,.book-closing .interaction-hint{opacity:0;pointer-events:none;transform:translateY(18px);transition:opacity .25s,transform .4s}.book-ready .poem-card{animation:reading-arrive .8s cubic-bezier(.2,1.1,.3,1) 1.7s both}.book-ready .reader-controls{animation:reading-arrive .65s ease 1.9s both}.book-ready .interaction-hint{animation:reading-arrive .65s ease 2.2s both}.book-intro-veil{-webkit-backdrop-filter:none;backdrop-filter:none;background:none}@keyframes reading-arrive{0%{opacity:0;translate:0 22px}to{opacity:1;translate:0 0}}@media(prefers-reduced-motion:reduce){.book-ready .poem-card,.book-ready .reader-controls,.book-ready .interaction-hint{animation:none}}@media(min-width:701px){.poem-card:not(.card-expanded){top:22.5%;min-height:52vh;padding-top:46px;padding-bottom:70px}.poem-card:not(.card-expanded) .card-footnote{position:absolute;left:32px;right:32px;bottom:38px}}html,body,#root,.app{width:100%;height:100%;min-height:0;margin:0;overflow:hidden}.app{height:100dvh;isolation:isolate;background:#d6b68c}.poetry-scene.persistent-world,.reading .poetry-scene.persistent-world{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100dvh;z-index:0;overflow:hidden;touch-action:none}.persistent-world .world-canvas{display:block;width:100%;height:100%;object-fit:fill}.topbar,.reading .topbar{position:fixed;top:18px;left:22px;right:22px;height:58px;display:flex;gap:14px;z-index:20;padding:0;pointer-events:none}.topbar button,.topbar nav{pointer-events:auto}.brand{min-width:152px;flex:none}.brand-art{object-fit:contain}.header-actions{display:flex;gap:12px;margin-left:auto;flex:none}.round{width:58px;height:58px;flex:0 0 58px;aspect-ratio:1;object-fit:contain}.comet-shelf{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:3;isolation:auto}.selection-dock{position:absolute;left:0;right:0;bottom:26px;width:auto;max-width:none;transform:none;display:flex;align-items:center;flex-direction:column;gap:10px;pointer-events:none}.selection-dock>*{pointer-events:auto}.pick-book-label{position:static;transform:none;font-size:22px;line-height:1.2;display:flex;gap:10px;align-items:center;white-space:nowrap}.selection-row{display:flex;align-items:center;justify-content:center;gap:14px;width:100%;padding:0 16px}.selection-cards{display:flex;flex-direction:row;gap:12px;min-width:0;justify-content:center}.selection-card{flex:0 0 214px;width:214px;min-width:0;max-width:214px;height:124px;min-height:124px;padding:10px 16px 9px;gap:5px;border-radius:14px;background-size:cover;overflow:visible;transition:transform .22s var(--comet-spring),box-shadow .22s}.selection-card:hover{transform:translateY(-4px) scale(1.03)}.selection-title,.selection-title .poem-wordmark{width:100%;height:58px;min-height:0;min-width:0;flex:none;white-space:normal}.selection-title .poem-lettering{font-size:clamp(18px,2.3vw,31px);line-height:1.05;max-width:100%;overflow:hidden;overflow-wrap:anywhere}.selection-progress{margin:0;gap:7px;min-width:0}.selection-progress>i{min-width:16px}.selection-progress>span{flex:none}.selection-meta{margin-top:0;min-width:0;line-height:1.3}.selection-meta>span{min-width:0}.selection-meta small{white-space:nowrap;font-size:9px}.shelf-arrow{position:static;flex:0 0 52px;width:52px;height:52px;aspect-ratio:1}.shelf-dots{height:12px;display:flex;align-items:center;margin:0;gap:8px}.all-poems-link{right:20px;bottom:0;transform:none;white-space:nowrap}.toy-keyboard-access button{pointer-events:auto}.toy-keyboard-access button:focus-visible{left:24px;top:90px}.reader-main,.reading .reader-main{position:fixed;top:0;right:0;bottom:0;left:0;height:100dvh;z-index:3;pointer-events:none}.poem-card{position:absolute;left:3.5vw;top:50%;bottom:auto;width:clamp(340px,37vw,560px);max-width:none;min-width:0;min-height:0;max-height:calc(100dvh - 150px);overflow:auto;overscroll-behavior:contain;translate:0 -50%;transform:none;padding:36px 38px 28px;border-radius:8px;background:#fff5db url(https://tulingos-dev.oss-cn-beijing.aliyuncs.com/yuyan/assets/paper-card-v1.webp) center/cover;filter:none;box-shadow:0 0 0 1px #d4b982,inset 0 0 0 5px #fff9ec,inset 0 0 0 6px #d4b98266,0 14px 34px #05081a55,0 3px 10px #05081a44;animation:none;transition:left .42s ease,top .42s ease,width .42s ease,box-shadow .5s,opacity .35s;scrollbar-width:thin;scrollbar-color:#cdb887 transparent;cursor:zoom-in}.poem-card h1{font-family:var(--ui-font);font-size:30px;margin:8px 0}.poem-line{margin:22px 0 14px;gap:1px}.poem-char{font-size:clamp(28px,3vw,40px);line-height:1.65}.poem-char rt{font-size:12px}.meaning-panel p{font-size:clamp(19px,1.8vw,25px);line-height:1.6}.card-topline{font-size:11px}.poet{font-size:13px}.card-actions{display:flex;flex-wrap:wrap;gap:10px}.card-toggles{display:flex;gap:10px}.card-footnote{margin:13px 0 0}.card-expand-control{opacity:.6}.poem-card.card-expanded{position:fixed;left:50%;top:50%;bottom:auto;translate:-50% -50%;transform:none;min-height:0;width:min(680px,90vw);max-width:680px;max-height:85dvh;padding:44px 50px;box-shadow:0 0 0 100vmax #10152a99,0 16px 60px #0007;z-index:24;cursor:zoom-out}.reader-controls{position:absolute;left:50%;right:auto;bottom:20px;width:min(660px,80vw);translate:-50% 0;transform:none;display:flex;justify-content:space-between;gap:18px;align-items:end;pointer-events:none}.reader-controls button{pointer-events:auto}.reader-controls .nav-arrow{width:76px;height:76px;flex:0 0 76px}.reader-center{min-width:0;gap:12px}.narrate{min-width:220px;height:62px;font-size:22px;max-width:100%;padding:5px 20px}.reading-mode{gap:7px}.reading-mode button{padding:5px 10px;font-size:12px;min-width:0}.interaction-hint{position:absolute;right:24px;left:auto;bottom:28px;top:auto;width:200px;max-width:22vw;font-size:13px;padding:10px 12px;pointer-events:none}.book-waiting .poem-card,.book-closing .poem-card{opacity:0;transform:translateY(18px);pointer-events:none}.book-ready .poem-card{animation:card-arrive .7s cubic-bezier(.2,1.2,.3,1) both}.book-ready .reader-controls{animation:controls-arrive .7s cubic-bezier(.2,1.2,.3,1) both}@keyframes card-arrive{0%{opacity:0;transform:translate(-28px) rotate(-2deg)}to{opacity:1;transform:none}}@keyframes controls-arrive{0%{opacity:0;transform:translateY(25px)}to{opacity:1;transform:none}}.asset-progress{display:flex;align-items:center;flex-direction:column;gap:6px;margin:12px auto;width:75%;color:#957544;font-family:var(--read-font)}.asset-progress progress{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:8px;border:0;border-radius:20px;overflow:hidden}.asset-progress progress::-webkit-progress-bar{background:#daccaa}.asset-progress progress::-webkit-progress-value{background:linear-gradient(90deg,#d8a657,#f4cd76);border-radius:20px}.asset-progress small{font-size:13px}.book-intro-veil{-webkit-backdrop-filter:none;backdrop-filter:none;background:#17203b25}.book-intro{max-height:88dvh;min-height:0}.book-intro p{margin:20px 0 18px}.book-intro h1{height:100px}.book-intro-veil .wood-pill:disabled{opacity:.55}.scene-object-label{position:fixed;z-index:10;padding:8px 18px;border-image:url(https://tulingos-dev.oss-cn-beijing.aliyuncs.com/yuyan/assets/story-tag-v1.webp) 60 fill / 22px / 0 stretch;color:#2c2a3e;font-family:var(--read-font);font-size:22px;font-weight:700;line-height:1.6;text-shadow:none;white-space:nowrap;pointer-events:none;opacity:0;transform:translate(-50%,-100%);box-shadow:0 6px 12px #05081a80;will-change:transform,opacity}.scene-object-label.is-visible{opacity:1;animation:scene-tip-in .26s var(--comet-spring)}@keyframes scene-tip-in{0%{opacity:0;transform:translate(-50%,-100%) translateY(14px) scale(.9) rotate(2deg)}to{opacity:1;transform:translate(-50%,-100%)}}.scene-magic-word{position:fixed;z-index:11;transform:translate(-50%,-50%);pointer-events:none;font-family:var(--ui-font);font-size:56px;font-weight:800;line-height:1.2;width:max-content;max-width:min(88vw,520px);text-align:center;color:#f8f0dd;text-shadow:0 0 18px #ffd97a,0 3px 0 #a86a2c,0 8px 22px #05081a;opacity:0;will-change:transform,opacity}.scene-magic-word.is-visible{animation:scene-magic-word 1.4s var(--comet-spring) forwards}@keyframes scene-magic-word{0%{opacity:0;transform:translate(-50%,-30%) scale(.4) rotate(-6deg)}20%{opacity:1;transform:translate(-50%,-60%) scale(1.1) rotate(2deg)}70%{opacity:1;transform:translate(-50%,-80%) scale(1)}to{opacity:0;transform:translate(-50%,-120%) scale(1.05)}}.scene-focus-vignette{--focus-x:72%;--focus-y:46%;position:fixed;top:0;right:0;bottom:0;left:0;z-index:2;pointer-events:none;background:radial-gradient(circle 17vmax at var(--focus-x) var(--focus-y),transparent 0 35%,#17203916 62%,#0b10265c 100%);opacity:0;transition:opacity .32s ease}.poem-char.object-highlighted{position:relative;color:#55411f;background:radial-gradient(circle,#ffe49f 12%,#e7bc5e99 74%);box-shadow:0 0 0 1px #d2a64f88,0 0 20px #ffe5a7;transform:translateY(-3px) scale(1.06);text-shadow:0 1px 0 #fff3c1;transition:transform .2s cubic-bezier(.2,1.35,.3,1),background .2s,box-shadow .2s}.pointer-magic{border:0;margin:0;padding:0;background:transparent;max-width:none;max-height:none;overflow:visible}@media(max-width:1100px){.reading .journey-pill{display:none}.interaction-hint{max-width:170px;font-size:11px}.reader-controls{width:56vw;gap:12px}.reader-controls .nav-arrow{width:62px;height:62px;flex-basis:62px}.narrate{min-width:190px;font-size:20px}.poem-card{padding:32px 30px}.header-actions{gap:10px}}@media(max-aspect-ratio:1.05){.poem-card{left:3vw;right:3vw;top:auto;bottom:118px;width:auto;max-width:none;max-height:40dvh;translate:0 0;padding:26px 26px 20px;transition:opacity .35s,box-shadow .5s}.reader-controls{left:50%;width:88vw;bottom:14px;gap:12px}.reader-controls .nav-arrow{width:54px;height:54px;flex-basis:54px;margin-bottom:20px}.reader-center{gap:8px}.narrate{height:53px;min-width:190px;font-size:20px}.reading-mode button{padding:4px 8px;font-size:11px}.interaction-hint{display:none}.poem-card h1{font-size:25px}.poem-line{margin:12px 0 8px}.meaning-panel{margin:8px 0}.meaning-panel p{font-size:19px;line-height:1.5}.poem-char{font-size:31px;line-height:1.5}.card-footnote{display:none}.poem-card.card-expanded{left:50%;right:auto;top:50%;bottom:auto;width:92vw;max-height:83dvh;translate:-50% -50%;padding:30px}.journey-pill{position:fixed;top:82px;left:50%;transform:translate(-50%);font-size:11px;height:29px}.reading .journey-pill{display:none}.top-poem-progress{position:fixed;top:86px!important;left:50%;transform:translate(-50%)}}@media(max-width:720px){.topbar,.reading .topbar{top:12px!important;left:12px;right:12px;height:48px;gap:6px}.header-actions{gap:8px}.round{width:48px;height:48px;flex-basis:48px}.brand{min-width:0;width:110px;height:48px}.brand-art{width:110px;height:48px}.brand-subtitle{display:none}.journey-pill{display:flex;top:69px}.selection-dock{bottom:14px;gap:7px}.selection-row{padding:0 16px;justify-content:space-between;gap:8px}.selection-cards{flex-direction:column;gap:9px}.selection-card{width:160px;max-width:160px;flex-basis:auto;height:98px;min-height:98px;padding:7px 10px;gap:4px}.selection-title,.selection-title .poem-wordmark{height:44px}.selection-title .poem-lettering{font-size:23px}.selection-progress>i{height:6px}.quiz-dot{height:11px;width:11px;font-size:8px}.selection-meta{font-size:11px}.selection-meta svg{width:15px;height:15px}.selection-meta small{display:none}.shelf-arrow{width:44px;height:44px;flex-basis:44px}.pick-book-label{font-size:18px}.shelf-dots{height:10px}.all-poems-link{display:none}.top-poem-progress{top:67px!important}.modal-inner{padding:28px 24px}.card-topline{font-size:10px}.card-actions{gap:7px}.read-done{font-size:12px}.card-toggles button{font-size:11px}}@media(max-width:900px){.scene-magic-word{font-size:40px}}@media(max-width:400px){.round{width:42px;height:42px;flex-basis:42px}.header-actions{gap:6px}.brand,.brand-art{width:88px}.narrate{min-width:165px;font-size:18px}.reader-controls{gap:8px}.reading-mode{gap:3px}.reading-mode button{padding:4px 6px}.poem-card{padding:20px 22px}.poem-char{font-size:28px}.meaning-panel p{font-size:17px}}@media(max-height:600px)and (min-aspect-ratio:1.05){.poem-card{max-height:calc(100dvh - 110px);padding:24px;top:46%}.poem-line{margin:10px 0}.poem-card h1{font-size:23px}.poem-char{font-size:28px}.meaning-panel p{font-size:18px}.reader-controls{bottom:12px}.reader-controls .nav-arrow{width:50px;height:50px;flex-basis:50px}.narrate{height:45px;font-size:18px}.reader-center{gap:6px}.selection-card{height:105px;min-height:105px}.selection-title,.selection-title .poem-wordmark{height:45px}.selection-dock{bottom:14px}.interaction-hint{display:none}}@media(prefers-reduced-motion:reduce){.poem-card,.book-ready .poem-card,.book-ready .reader-controls{animation:none;transition:none}}.reduced-motion .poem-card,.reduced-motion .reader-controls{animation:none;transition:none}.reduced-motion .scene-focus-vignette{display:none}.reduced-motion .poem-char.object-highlighted{transform:none}.reduced-motion .scene-magic-word.is-visible{opacity:1;transform:translate(-50%,-65%);animation:none!important}.reader-main .poem-card:not(.card-expanded){top:50%;bottom:auto;min-height:0;padding:36px 38px 28px}.reader-main .poem-card:not(.card-expanded) .card-footnote{position:static;margin-top:13px}@media(max-width:1100px){.reader-main .poem-card:not(.card-expanded){padding:30px}}@media(max-aspect-ratio:1.05){.reader-main .poem-card:not(.card-expanded){top:auto;bottom:118px;padding:24px;max-height:40dvh}}@media(max-width:400px){.reader-main .poem-card:not(.card-expanded){padding:20px 22px}}.poem-card.size-large .poem-char{font-size:46px}.poem-card.size-large .meaning-panel p{font-size:28px}.catalog-pager{display:flex;gap:20px;align-items:center;justify-content:center;margin:14px 0}.catalog-pager button{border:1px solid #c9ae75;border-radius:20px;padding:7px 16px;background:#fff7df}.scene-action-access{position:fixed;right:24px;bottom:155px;display:flex;gap:6px;z-index:4;pointer-events:auto}.scene-action-access button{position:absolute;clip-path:inset(50%);width:1px;height:1px;overflow:hidden}.scene-action-access button:focus-visible{position:relative;clip-path:none;width:auto;height:auto;padding:8px 14px;border:2px solid #d4b575;border-radius:20px;background:#fff2cf;white-space:nowrap}@media(max-aspect-ratio:1.05){.poem-card.size-large .poem-char{font-size:38px}.poem-card.size-large .meaning-panel p{font-size:23px}}.poem-card,.selection-card{background-size:220% 220%}.poem-card:before,.poem-card:after{display:block;position:absolute;width:54px;height:27px;color:#c4a25c;pointer-events:none;font-family:var(--ui-font);font-size:17px;line-height:24px;content:"☾ · ✦";border-top:1px solid #c7aa6a}.poem-card:before{left:12px;top:12px;border-left:1px solid #c7aa6a;padding-left:3px}.poem-card:after{right:12px;bottom:12px;transform:rotate(180deg);border-left:1px solid #c7aa6a;padding-left:3px}dialog.book-intro-veil{border:0;margin:0;padding:0;max-width:none;max-height:none;width:100vw;height:100dvh;background:transparent;color:inherit}dialog.book-intro-veil::backdrop{background:#17203b30}.world-loading{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:center;background:radial-gradient(ellipse at 75% 24%,#d2c49944,transparent 28%),linear-gradient(145deg,#1e3554,#496e85 60%,#97aaa4)}.world-loading-card{width:min(590px,88vw);padding:46px 36px;display:flex;flex-direction:column;align-items:center;gap:22px;background:#fff5da url(https://tulingos-dev.oss-cn-beijing.aliyuncs.com/yuyan/assets/paper-card-v1.webp) center/220% 220%;box-shadow:0 0 0 4px #2b3551,0 20px 65px #101b3966;border-radius:12px;color:#755a34;animation:intro-pop .6s var(--comet-spring)}.world-loading-card img{width:220px;max-width:75%;height:92px;object-fit:contain}.world-loading-card p{font:24px var(--read-font);margin:0}.world-loading-card progress{width:60%;height:9px;accent-color:#d5ad60}.world-loading-card small{font:15px var(--read-font)}.reader-main.page-turning .poem-card{opacity:0;transform:translate(-24px) rotate(-1deg);animation:none;pointer-events:none;transition:opacity .3s ease,transform .4s ease}.topbar .header-actions .round{width:58px;height:58px;flex-basis:58px}.profile-icon .avatar-picture{max-width:75%;max-height:82%;overflow:hidden}@media(max-width:720px){.topbar .header-actions .round{width:48px;height:48px;flex-basis:48px}}@media(max-width:400px){.topbar .header-actions .round{width:42px;height:42px;flex-basis:42px}}.pill-button{--pill-surface-inset:7px;-webkit-appearance:none;-moz-appearance:none;appearance:none;position:relative;isolation:isolate;display:flex;align-items:center;justify-content:center;gap:10px;width:236px;height:66px;min-width:236px;padding:10px 34px;border:0;border-radius:999px;background:transparent;box-shadow:0 6px 10px #05081a70;color:#2c2a3e;font-family:var(--ui-font);font-size:22px;font-weight:600;line-height:1;white-space:nowrap;filter:none;cursor:pointer;transition:transform .26s cubic-bezier(.2,1.35,.3,1),color .2s,box-shadow .26s ease,opacity .2s}.pill-button:before{content:"";position:absolute;inset:var(--pill-surface-inset);z-index:-1;border-radius:999px;background:linear-gradient(180deg,#fffef8,#fff9e9 58%,#f8e8be);box-shadow:0 0 0 2px #9c7540,0 0 0 5px #f5d58d,0 0 0 7px #d5aa61;pointer-events:none}.pill-button:after{content:"";position:absolute;left:18px;right:18px;top:9px;height:26px;z-index:-1;border-radius:999px 999px 50% 50%;border-top:1px solid rgba(255,255,255,.92);pointer-events:none}.pill-button.small{--pill-surface-inset:5px;width:auto;height:44px;min-width:127px;padding:6px 18px;gap:7px;font-size:15px}.pill-button.small:before{box-shadow:0 0 0 1px #9c7540,0 0 0 3px #f5d58d,0 0 0 5px #d5aa61}.pill-button.small:after{left:13px;right:13px;top:6px;height:16px}.pill-button>svg{position:relative;z-index:1;color:#476f8a;stroke-width:2.25;filter:drop-shadow(0 1px 0 #fff) drop-shadow(0 1px 1px rgba(77,50,27,.28))}.pill-button.primary>svg{color:#5f9ebe;fill:#7ab9d8;stroke:#3d6982}.pill-button:hover:not(:disabled){transform:translateY(-3px) scale(1.04);box-shadow:0 10px 16px #05081a80;filter:none}.pill-button:active:not(:disabled){transform:translateY(1px) scale(.98);transition-duration:80ms}.pill-button:focus-visible{outline:2px solid #f2cf82;outline-offset:2px}.pill-button:disabled{opacity:.55;cursor:default;filter:none}.book-intro .pill-button{margin:14px auto 0}.book-intro .pill-button.small{width:127px;min-width:127px}.reader-controls{width:auto;gap:22px;justify-content:flex-start}.reader-controls .nav-arrow{width:78px;height:78px;flex:0 0 78px}.reader-controls .nav-arrow:disabled{opacity:.55}.reader-center{width:381px;max-width:381px}.narrate{width:236px;min-width:236px;height:66px;padding:10px 34px;border:0;background:transparent;box-shadow:0 6px 10px #05081a70;font-size:22px;font-weight:600}.reading-mode{gap:8px}.reading-mode .pill-button{height:44px;min-width:127px;padding:6px 18px;border:0;border-radius:999px;background:transparent;box-shadow:0 6px 10px #05081a70;color:#2c2a3e;font-family:var(--ui-font);font-size:15px;font-weight:600}.reading-mode .pill-button:first-child{width:111px;min-width:111px}.reading-mode .pill-button:nth-child(2),.reading-mode .pill-button:nth-child(3){width:127px;min-width:127px}.reading-mode .pill-button.selected{border:0;background:transparent;color:#f8f0dd;box-shadow:0 6px 10px #05081a70;transform:translateY(1px)}.reading-mode .pill-button.selected:before{background:linear-gradient(180deg,#df9270,#cf775c 58%,#bd624c);box-shadow:0 0 0 1px #934f3d,0 0 0 3px #f0bd78,0 0 0 5px #cc9451}.reading-mode .pill-button.selected>svg{color:#fff2d7;stroke:#fff2d7;fill:transparent}@media(max-width:1100px){.reader-controls{width:min(660px,88vw);gap:12px;justify-content:space-between}.reader-center{width:381px;max-width:calc(88vw - 148px)}}@media(max-width:720px){.reader-controls{width:94vw;gap:8px}.reader-controls .nav-arrow{width:52px;height:52px;flex-basis:52px}.reader-center{width:302px;max-width:calc(94vw - 120px)}.narrate{--pill-surface-inset:6px;width:190px;min-width:190px;height:56px;padding:8px 24px;font-size:20px}.narrate:before{box-shadow:0 0 0 2px #9c7540,0 0 0 4px #f5d58d,0 0 0 6px #d5aa61}.reading-mode{gap:5px}.reading-mode .pill-button{--pill-surface-inset:4px;height:38px;padding:5px 10px;font-size:12px;gap:4px}.reading-mode .pill-button:before{box-shadow:0 0 0 1px #9c7540,0 0 0 2px #f5d58d,0 0 0 4px #d5aa61}.reading-mode .pill-button:first-child{width:84px;min-width:84px}.reading-mode .pill-button:nth-child(2),.reading-mode .pill-button:nth-child(3){width:104px;min-width:104px}.reading-mode .pill-button.selected:before{box-shadow:0 0 0 1px #934f3d,0 0 0 2px #f0bd78,0 0 0 4px #cc9451}}@media(max-width:450px){.reader-controls{gap:4px}.reader-controls .nav-arrow{width:44px;height:44px;flex-basis:44px}.reader-center{width:260px;max-width:calc(94vw - 96px)}.narrate{width:174px;min-width:174px;height:50px;font-size:18px}.reading-mode{gap:3px}.reading-mode .pill-button{height:34px;padding:4px 7px;font-size:11px}.reading-mode .pill-button:first-child{width:74px;min-width:74px}.reading-mode .pill-button:nth-child(2),.reading-mode .pill-button:nth-child(3){width:90px;min-width:90px}}.modal-heading{min-width:0;flex:1}.modal-header-medallion{width:56px;height:56px;display:grid;place-items:center;flex:0 0 auto;border-radius:50%;color:#b7853e;background:radial-gradient(circle at 38% 30%,#fffce9 0,#fffce9 22%,#eed8a9 56%,#c79750);border:1px solid #a87d3f;box-shadow:inset 0 0 0 4px #fff3cf,inset 0 0 0 6px #bb9658,0 5px 11px #4b321f2b}.modal-header-medallion svg{width:24px;height:24px;filter:drop-shadow(0 1px 0 #fff7d7)}.settings-folio-intro{display:flex;align-items:center;gap:14px;margin:2px 0 23px;padding:14px 17px;border:1px solid #c8ac715c;border-radius:10px;background:linear-gradient(105deg,#f4e4bc80,#fff9e8a8);box-shadow:inset 0 0 18px #d0aa5d18}.settings-folio-intro>span{width:38px;height:38px;display:grid;place-items:center;flex:0 0 auto;color:#a97c3a;border-radius:50%;background:#fff6db;border:1px solid #d3b778}.settings-folio-intro svg{width:18px}.settings-folio-intro p{margin:0;font-size:14px;line-height:1.65;color:#816a46}.settings-section{margin-top:22px}.settings-section>h3{display:flex;align-items:center;gap:9px;margin:0;padding:0 0 8px;color:#6a5233;font-size:15px;letter-spacing:2px;border-bottom:1px solid #c2a56866}.settings-section>h3 svg{width:17px;height:17px;color:#b48642}.settings-section .settings-list label{padding:13px 0;min-height:70px}.settings-section .settings-list label:before{display:none;content:none}.setting-row-icon{width:43px;height:43px;display:grid;place-items:center;flex:0 0 auto;border-radius:8px;color:#897343;background:radial-gradient(circle at 35% 25%,#fff9e9,#e5ca94);border:1px solid #b99b61;box-shadow:inset 0 0 0 3px #f8eac9,0 3px 7px #5a3d2426;transform:rotate(-1deg)}.setting-row:nth-child(2n) .setting-row-icon{transform:rotate(1deg);color:#5f8175}.setting-row-icon svg{width:22px;height:22px}.setting-copy{display:block;min-width:0;flex:1}.settings-section .settings-list strong{font-size:17px}.settings-section .settings-list small{font-size:12px;line-height:1.55;margin-top:4px}.settings-section .settings-list input[type=range]{width:min(150px,28vw)}@media(max-width:600px){.modal-header-medallion{width:46px;height:46px}.settings-folio-intro{margin-bottom:17px;padding:11px 13px}.settings-section{margin-top:16px}.setting-row-icon{width:38px;height:38px}.settings-section .settings-list label{min-height:62px;gap:12px}.settings-section .settings-list strong{font-size:16px}.settings-section .settings-list small{font-size:11px}.settings-section .settings-list input[type=range]{width:92px}}@media(max-aspect-ratio:1.05){.reading .journey-pill{display:flex!important;position:fixed;top:68px;left:50%;right:auto;transform:translate(-50%);height:29px;margin:0;white-space:nowrap}.reading .journey-pill i{display:block}.reading .journey-pill i~svg{display:block}.reading .journey-pill i~span{display:inline}.reading .top-poem-progress{display:flex!important;top:105px!important}}.poem-scroll-card{cursor:default}.poem-scroll-card h1{margin-bottom:4px}.poem-verses{display:flex;flex-direction:column;gap:3px;margin:15px 0 10px;padding:5px 0;border-top:1px solid #b8975d26;border-bottom:1px solid #b8975d26}.poem-verse{position:relative;display:grid;grid-template-columns:29px minmax(0,1fr) 15px;align-items:center;min-height:42px;padding:2px 5px 2px 0;border-radius:7px;color:#39364d;opacity:.62;transition:opacity .26s ease,background .32s ease,transform .42s var(--comet-spring),box-shadow .32s ease}.poem-verse:hover{opacity:.88;background:#f2dfaa2b}.poem-verse.active{opacity:1;background:linear-gradient(90deg,#e7c9784a,transparent 88%);box-shadow:0 2px #c99f4e;transform:translate(3px);animation:verse-focus .52s var(--comet-spring)}.poem-verse.read:not(.active){opacity:.74}.poem-verse .poem-line{display:flex;align-items:flex-end;justify-content:flex-start;flex-wrap:nowrap;gap:0;margin:0;min-width:0}.poem-verse .poem-char{flex:0 0 auto;padding:0 1px;border:0;border-radius:4px;font-family:var(--read-font);font-size:clamp(22px,2vw,28px);font-weight:600;line-height:1.45;color:inherit;transition:background .18s ease,transform .18s ease,color .18s ease}.poem-verse .poem-char:hover{background:#efcf7066;transform:translateY(-2px)}.poem-verse .poem-char rt{font-size:9px;line-height:1.25;color:#8a7046}.poem-verse .punctuation{flex:0 0 auto;margin-left:-2px;font-family:var(--read-font);font-size:22px;line-height:1.55;color:inherit}.verse-scene-switch{width:23px;height:23px;display:grid;place-items:center;padding:0;border:1px solid #b69b6666;border-radius:50%;background:#fff8e688;color:#9a8051;font:11px Georgia,serif;box-shadow:inset 0 1px #fff;transition:transform .22s var(--comet-spring),background .22s,color .22s}.verse-scene-switch:hover{transform:scale(1.12);background:#f7e4ac}.poem-verse.active .verse-scene-switch{background:#b77555;color:#fff6d9;border-color:#95593f;box-shadow:0 2px 5px #74482b38}.verse-read-mark{color:#7e9571;stroke-width:3}.poem-scroll-card .meaning-panel{margin:8px 0 11px}.poem-scroll-card .meaning-panel>span{display:block;font-size:9px;letter-spacing:1.5px;color:#9d7f51}.poem-scroll-card .meaning-panel p{margin:5px 0 0;font-size:clamp(15px,1.3vw,19px);line-height:1.55}.poem-scroll-card .card-actions{flex-direction:row;align-items:center;justify-content:space-between}.poem-scroll-card .card-footnote{text-align:left}.listen-mode-note{max-width:210px;color:#876d43;font-size:11px;line-height:1.55;text-align:left}.poem-scroll-card.size-large .poem-verse .poem-char{font-size:34px}.poem-scroll-card.size-large .poem-verse .punctuation{font-size:29px}.top-poem-progress button.spread-start{margin-left:8px;position:relative}.top-poem-progress button.spread-start:before{content:"";position:absolute;left:-8px;top:3px;bottom:3px;width:1px;background:#f4daa77d}@keyframes verse-focus{0%{transform:translate(-5px);filter:brightness(.92)}62%{transform:translate(5px);filter:brightness(1.06)}to{transform:translate(3px);filter:none}}@media(max-width:1100px){.poem-verses{margin-top:12px}.poem-verse .poem-char{font-size:24px}.poem-verse .punctuation{font-size:21px}.poem-scroll-card .meaning-panel p{font-size:15px}}@media(max-aspect-ratio:1.05){.reader-main .poem-scroll-card:not(.card-expanded){max-height:49dvh;bottom:112px}.poem-verses{gap:1px;margin:8px 0 6px}.poem-verse{min-height:36px;grid-template-columns:27px minmax(0,1fr) 14px}.poem-verse .poem-char{font-size:23px;line-height:1.35}.poem-verse .punctuation{font-size:20px;line-height:1.4}.poem-scroll-card .meaning-panel p{font-size:14px}.poem-scroll-card .card-divider{margin:7px 0}.poem-scroll-card .card-actions{gap:6px}.poem-scroll-card.size-large .poem-verse .poem-char{font-size:29px}}@media(max-width:450px){.poem-verse{grid-template-columns:25px minmax(0,1fr) 12px;padding-right:2px}.verse-scene-switch{width:20px;height:20px;font-size:9px}.poem-verse .poem-char{font-size:21px}.poem-verse .punctuation{font-size:18px}.poem-scroll-card .card-topline{letter-spacing:.6px}.poem-scroll-card .card-actions{flex-wrap:wrap}.poem-scroll-card .read-done{flex:1}.poem-scroll-card .card-toggles{width:100%;justify-content:center}}@media(prefers-reduced-motion:reduce){.poem-verse,.poem-verse.active{animation:none;transition:none}}.narrative-guide{--guide-accent:#b86d51;--guide-ink:#49392d;position:absolute;z-index:9;top:20%;right:2.6vw;width:clamp(258px,21vw,330px);pointer-events:none;filter:drop-shadow(0 16px 19px #11172d55);transform-origin:86% 14%}.narrative-guide-paper{position:relative;pointer-events:auto;padding:25px 22px 18px 25px;overflow:hidden;color:var(--guide-ink);background:linear-gradient(105deg,#fff9e7e6,#ead5a8a8),url(https://tulingos-dev.oss-cn-beijing.aliyuncs.com/yuyan/assets/paper-card-v1.webp) center/245% 245%;border:1px solid #b99a62;border-radius:7px 12px 9px 6px;box-shadow:inset 0 0 0 4px #fff6d8,inset 0 0 28px #a77a3430;clip-path:polygon(0 2%,96% 0,100% 9%,98% 94%,91% 100%,5% 98%,0 90%,2% 50%)}.narrative-guide-paper:before{content:"";position:absolute;top:8px;right:8px;bottom:8px;left:8px;pointer-events:none;border:1px solid #b18a4d52;border-radius:4px 9px 7px 4px}.narrative-guide-paper:after{content:"☾  ·  ✦";position:absolute;right:20px;top:15px;color:#bd995d;font:13px var(--ui-font);letter-spacing:2px}.narrative-guide-seal{position:absolute;z-index:2;top:-20px;left:-24px;width:57px;height:57px;display:grid;place-items:center;color:#fff0c5;background:radial-gradient(circle at 35% 28%,#df9874 0,#df9874 13%,#bc674d 42%,#7e3f35);border:2px solid #f0cf8b;border-radius:50%;box-shadow:inset 0 0 0 4px #a45242,0 5px 11px #45272466;transform:rotate(-7deg)}.narrative-guide-seal svg{width:23px;height:23px;stroke-width:2}.narrative-guide-seal i{position:absolute;left:19px;top:50px;width:18px;height:12px;background:#9f4c40;clip-path:polygon(0 0,100% 0,76% 100%,50% 63%,22% 100%)}.narrative-guide header{position:relative;z-index:1;display:flex;align-items:baseline;gap:10px;padding:0 54px 10px 1px;border-bottom:1px dashed #b0925e80}.narrative-guide header span{font:19px var(--ui-font);color:#795035;letter-spacing:1px}.narrative-guide header small{white-space:nowrap;font:11px var(--read-font);color:#9b815c}.narrative-guide p{position:relative;z-index:1;margin:13px 0 0;font:16px/1.75 var(--read-font);text-wrap:pretty}.narrative-guide .narrative-imagery{margin-top:6px;color:#8b714d;font-size:13px;line-height:1.65}.narrative-question{position:relative;z-index:1;display:flex;gap:8px;align-items:flex-start;margin:13px 0 15px;padding:9px 10px;color:#6d6041;background:#eadbac70;border:1px solid #bba05f55;border-radius:8px;font:12px/1.55 var(--read-font)}.narrative-question i{font-style:normal;color:#bd7c46;line-height:1.5}.narrative-guide footer{position:relative;z-index:1;display:flex;gap:8px}.narrative-guide footer button{-webkit-appearance:none;-moz-appearance:none;appearance:none;min-width:0;height:37px;flex:1;display:flex;align-items:center;justify-content:center;gap:5px;padding:5px 9px;color:#684f36;background:#fff9e6;border:1px solid #c6a76d;border-radius:19px;box-shadow:0 2px #99733e55;font:12px var(--ui-font);cursor:pointer;transition:transform .18s var(--comet-spring),background .18s,color .18s,box-shadow .18s}.narrative-guide footer button:hover{transform:translateY(-2px);box-shadow:0 4px #99733e55}.narrative-guide footer button:active{transform:translateY(1px);box-shadow:0 1px #99733e55}.narrative-guide footer button.selected{color:#fff8dd;background:linear-gradient(180deg,#ca7b5d,#a95143);border-color:#884438}.narrative-guide footer svg{width:15px;height:15px;flex:0 0 auto}.narrative-guide.is-inner{--guide-accent:#667f9e;--guide-ink:#30394b}.narrative-guide.is-inner .narrative-guide-seal{background:radial-gradient(circle at 35% 28%,#93adc1 0,#93adc1 13%,#637f9a 46%,#354b68);box-shadow:inset 0 0 0 4px #506c88,0 5px 11px #15243666}.narrative-guide.is-inner .narrative-guide-seal i{background:#476580}.narrative-guide.is-inner header span{color:#4c617a}.narrative-guide.is-inner .inner-voice{min-height:82px;display:flex;align-items:center;padding:7px 9px;color:#3d4e63;background:linear-gradient(90deg,#d7e0df66,transparent);border-left:3px solid #7891a6;font-size:17px}.narrative-guide.is-inner footer button.selected{background:linear-gradient(180deg,#7f9bb0,#526d89);border-color:#3f5872}.book-ready .narrative-guide{animation:guide-unfold .72s cubic-bezier(.18,1.18,.28,1) 2.05s both}.book-waiting .narrative-guide,.book-closing .narrative-guide{opacity:0;pointer-events:none;transform:translateY(15px) scale(.96)}.narrative-guide.is-speaking .narrative-guide-seal{animation:guide-seal-pulse 1.6s ease-in-out infinite}@keyframes guide-unfold{0%{opacity:0;transform:translate(18px,-12px) rotate(2deg) scale(.88)}to{opacity:1;transform:none}}@keyframes guide-seal-pulse{0%,to{filter:brightness(1);transform:rotate(-7deg) scale(1)}50%{filter:brightness(1.13);transform:rotate(-4deg) scale(1.07)}}@media(max-width:1180px)and (min-aspect-ratio:1.05){.narrative-guide{right:1.7vw;width:clamp(235px,23vw,280px)}.narrative-guide-paper{padding:21px 17px 15px 20px}.narrative-guide header span{font-size:17px}.narrative-guide p{font-size:14px;line-height:1.6}.narrative-guide .narrative-imagery{font-size:12px}}@media(max-aspect-ratio:1.05){.narrative-guide{position:fixed;top:145px;right:4vw;width:min(348px,82vw)}.narrative-guide-paper{padding:18px 17px 14px 21px}.narrative-guide-seal{left:-18px;top:-15px;width:48px;height:48px}.narrative-guide-seal svg{width:19px;height:19px}.narrative-guide-seal i{left:16px;top:42px;width:16px}.narrative-guide header{padding:0 52px 8px 2px}.narrative-guide header span{font-size:16px}.narrative-guide p{margin-top:9px;font-size:14px;line-height:1.55}.narrative-guide .narrative-imagery{font-size:11px;line-height:1.5}.narrative-question{margin:9px 0 11px;padding:6px 8px;font-size:11px}.narrative-guide footer button{height:33px;font-size:11px}.narrative-guide.is-inner .inner-voice{min-height:50px;font-size:15px}}@media(max-width:450px){.narrative-guide{top:145px;right:4.5vw;width:84vw}.narrative-guide-paper{padding:15px 13px 11px 18px}.narrative-guide-paper:after{display:none}.narrative-guide header{padding-right:4px}.narrative-guide header span{font-size:15px}.narrative-guide p{font-size:13px}.narrative-guide .narrative-imagery{display:none}.narrative-question{font-size:10px;margin:7px 0 9px}.narrative-guide footer button{height:31px;font-size:10px}}@media(max-height:650px)and (min-aspect-ratio:1.05){.narrative-guide{top:17%;width:250px}.narrative-guide .narrative-imagery{display:none}.narrative-question{margin:8px 0}}@media(prefers-reduced-motion:reduce){.book-ready .narrative-guide,.narrative-guide.is-speaking .narrative-guide-seal{animation:none}}.reduced-motion .book-ready .narrative-guide,.reduced-motion .narrative-guide.is-speaking .narrative-guide-seal{animation:none}.reader-main .poem-card h1,.reader-main .full-poem h3{font-family:var(--read-font);font-weight:600;letter-spacing:.08em;line-height:1.25;color:#70481f;text-shadow:0 1px 0 #fff9e7;text-rendering:optimizeLegibility}.selection-title .poem-lettering[data-title-size=medium]{padding-inline:6%;font-size:clamp(18px,1.75vw,25px);letter-spacing:.5px}.selection-title .poem-lettering[data-title-size=long]{padding-inline:.5%;font-size:clamp(15px,1.45vw,20px);letter-spacing:0}.selection-title .poem-lettering[data-title-size=extra-long]{padding-inline:5%;font-size:clamp(13px,1.2vw,17px);line-height:1.02;letter-spacing:0;white-space:normal;overflow-wrap:anywhere;text-wrap:balance}.selection-title .poem-lettering[data-title-size=paragraph]{padding:0 7%;font-size:clamp(8px,.78vw,11px);line-height:1.08;letter-spacing:0;white-space:normal;overflow-wrap:anywhere;text-wrap:balance}.series-cabinet{position:absolute;z-index:8;top:26.7%;left:50%;width:min(650px,68vw);height:61px;padding:7px 9px 9px;translate:-50% 0;pointer-events:auto;perspective:900px;border:1px solid #6e3f1d;border-radius:4px 4px 10px 10px;background:linear-gradient(180deg,#f0b862cc 0,#f0b862cc 7%,#a7652ae8 11%,#a7652ae8 73%,#724019f2),url(https://tulingos-dev.oss-cn-beijing.aliyuncs.com/yuyan/reference/storycomet/textures/wood-planks.jpg) center/420px auto;background-blend-mode:multiply,normal;box-shadow:inset 0 2px #ffdba1,inset 0 -5px 8px #4a250e88,0 7px 9px #2f1a0d66}.series-cabinet:before,.series-cabinet:after{content:"";position:absolute;top:9px;bottom:9px;width:7px;border-radius:2px;background:linear-gradient(90deg,#75451e,#d49a4d,#673815);box-shadow:inset 0 1px #f7cb7c}.series-cabinet:before{left:-5px}.series-cabinet:after{right:-5px;transform:scaleX(-1)}.cabinet-caption{position:absolute;left:50%;top:-15px;translate:-50% 0;padding:2px 12px;color:#5b371e;border:1px solid #8d642f;border-radius:2px;background:linear-gradient(180deg,#f7dda5,#c9994f);box-shadow:inset 0 0 0 2px #f6d68c,0 2px 3px #3b210f66;font:9px var(--ui-font);letter-spacing:2px;white-space:nowrap;text-shadow:0 1px 0 #fff0bd;pointer-events:none}.cabinet-drawers{height:100%;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.cabinet-drawers button{--series-accent:#a95e3d;-webkit-appearance:none;-moz-appearance:none;appearance:none;position:relative;min-width:0;height:45px;display:grid;grid-template-columns:minmax(0,1fr) 31px;align-items:center;gap:5px;padding:5px 7px 5px 8px;color:#583822;border:1px solid #744119;border-radius:3px 3px 6px 6px;background:linear-gradient(100deg,#d99346dd,#bd6e2de8 55%,#9d551fe8),url(https://tulingos-dev.oss-cn-beijing.aliyuncs.com/yuyan/reference/storycomet/textures/wood-planks.jpg) center/300px auto;background-blend-mode:multiply,normal;box-shadow:inset 0 1px #ffd593,inset 0 -3px 3px #66321173,0 3px #57300f,0 5px 5px #341c0d66;transform-origin:50% 0;cursor:pointer;transition:transform .3s var(--comet-spring),box-shadow .25s,filter .22s}.cabinet-drawers button[data-series=song-ci]{--series-accent:#477b75}.cabinet-drawers button[data-series=bedtime]{--series-accent:#66507f}.cabinet-drawers button[data-series=english]{--series-accent:#b75d4b}.cabinet-drawers button:before{content:"";position:absolute;top:3px;right:3px;bottom:3px;left:3px;border:1px solid #f8c8753b;border-radius:2px 2px 4px 4px;pointer-events:none}.cabinet-drawers button:hover{z-index:2;transform:translateY(4px) rotateX(-3deg);filter:brightness(1.07);box-shadow:inset 0 1px #ffdda5,inset 0 -3px 3px #66321173,0 5px #57300f,0 9px 8px #28140b77}.cabinet-drawers button:active{transform:translateY(7px) rotateX(-5deg);transition-duration:80ms}.cabinet-drawers button.active{z-index:3;transform:translateY(9px) rotateX(-6deg);filter:saturate(1.08);box-shadow:inset 0 1px #ffe4ae,inset 0 -3px 3px #66321173,0 8px #4e2a0d,0 14px 13px #21110888}.drawer-index{min-width:0;height:28px;display:flex;align-items:baseline;justify-content:center;gap:5px;padding:4px 5px;color:#4f3d2b;border:1px solid #a9844e;border-radius:2px;background:#f2dfb6 url(https://tulingos-dev.oss-cn-beijing.aliyuncs.com/yuyan/assets/paper-card-v1.webp) center/260% 260%;box-shadow:inset 0 0 0 2px #fff1ca,inset 0 1px 3px #76512c3d;transform:rotate(-.35deg)}.cabinet-drawers button:nth-child(2n) .drawer-index{transform:rotate(.35deg)}.drawer-index strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:14px var(--ui-font);letter-spacing:.5px}.drawer-index small{color:#92734e;font:8px var(--read-font);white-space:nowrap}.drawer-pull{position:relative;width:26px;height:26px;display:grid;place-items:center;color:#6b4a21;border:1px solid #76501f;border-radius:50%;background:radial-gradient(circle at 35% 27%,#fff0aa 0,#fff0aa 9%,#d3a347 35%,#8d5b20 76%,#efbd5e 80%,#efbd5e 88%,#6c4217 91%);box-shadow:inset 0 0 0 2px #e8be68,0 2px 2px #45240f77}.drawer-pull:after{content:"";position:absolute;left:6px;right:6px;bottom:3px;height:7px;border:2px solid #6b441a;border-top:0;border-radius:0 0 10px 10px;opacity:.82}.drawer-pull svg{width:11px;height:11px;stroke-width:2.6;transform:translateY(-2px);filter:drop-shadow(0 1px 0 #ffe6a1)}.drawer-tassel{position:absolute;right:18px;top:36px;width:2px;height:0;background:#8e342d;box-shadow:1px 0 #d47755;transition:height .25s var(--comet-spring)}.drawer-tassel:after{content:"";position:absolute;left:-3px;bottom:-7px;width:8px;height:8px;background:#a84437;clip-path:polygon(0 0,100% 0,75% 100%,50% 65%,25% 100%)}.cabinet-drawers button.active .drawer-tassel{height:13px}.cabinet-drawers button.active .drawer-index{color:#523426;border-color:color-mix(in srgb,var(--series-accent) 70%,#9f7943);box-shadow:inset 0 0 0 2px #fff1ca,inset 4px 0 0 var(--series-accent)}.series-shelf-note{height:18px;display:flex;align-items:center;gap:6px;margin:0;color:#eadab8cc;text-shadow:0 2px 6px #2b1c14;font:10px var(--read-font);letter-spacing:.3px;pointer-events:none}.series-shelf-note svg{color:#efc46d;flex:none}.selection-card[data-series]{position:relative}.selection-card[data-series=song-ci]{box-shadow:0 0 0 1px #b5d0c7,0 0 0 4px #24434c,0 10px 24px #1b283088}.selection-card[data-series=bedtime]{box-shadow:0 0 0 1px #ceb9dc,0 0 0 4px #28284e,0 10px 24px #17152d99}.selection-card[data-series=english]{box-shadow:0 0 0 1px #f1bd93,0 0 0 4px #17616c,0 10px 24px #16383d88}.selection-card .series-title-text{height:100%;display:flex;align-items:center;justify-content:center;padding:0 6px;color:#4a3150;font:700 clamp(14px,1.6vw,20px)/1.2 var(--read-font);text-wrap:balance}.weekly-ribbon{position:absolute;z-index:3;top:-8px;right:-8px;padding:3px 7px;color:#fff8d8;background:#68517f;border:1px solid #e7cc9a;border-radius:9px 9px 9px 2px;box-shadow:0 3px 6px #21173277;font:8px var(--ui-font);transform:rotate(3deg)}.content-english.poem-scroll-card h1,.intro-english-title{font-family:var(--read-font);font-weight:750;letter-spacing:0;color:#276871}.content-english.poem-scroll-card h1{font-size:clamp(22px,2.4vw,31px)}.content-english .poem-verse .poem-line{flex-wrap:wrap;align-items:center;gap:1px 0}.content-english .poem-verse .poem-char{font-family:var(--read-font);font-size:clamp(17px,1.55vw,22px);font-weight:650;line-height:1.55}.content-english .poem-verse .punctuation{font-family:var(--read-font);font-size:20px;white-space:pre}.content-story .poem-verse .poem-char{font-size:clamp(17px,1.55vw,22px);line-height:1.55}.content-story .poem-verse .punctuation{font-size:20px}.content-story .poem-verse .poem-line{flex-wrap:wrap}.intro-english-title{display:flex;height:100%;align-items:center;justify-content:center;font-size:clamp(30px,4vw,52px);line-height:1.1;text-wrap:balance}@media(max-width:1000px){.series-cabinet{width:min(620px,73vw)}.drawer-index strong{font-size:12px}.drawer-index small{display:none}}@media(max-aspect-ratio:1.05){.series-cabinet{top:28.6%;width:calc(100vw - 28px);height:53px;padding:6px 7px 8px}.cabinet-caption{top:-13px;font-size:8px;padding:1px 9px}.cabinet-drawers{gap:4px}.cabinet-drawers button{height:40px;grid-template-columns:minmax(0,1fr) 23px;gap:3px;padding:4px}.drawer-index{height:25px;padding:3px}.drawer-index strong{font-size:11px}.drawer-index small{display:none}.drawer-pull{width:21px;height:21px}.drawer-pull svg{width:9px;height:9px}.drawer-pull:after{left:5px;right:5px;height:5px}.drawer-tassel{right:14px;top:32px}.cabinet-drawers button.active{transform:translateY(7px) rotateX(-5deg)}.series-shelf-note{display:none}}@media(max-width:420px){.series-cabinet{top:28.9%;width:calc(100vw - 18px)}.cabinet-caption{letter-spacing:1px}.drawer-index strong{font-size:10px}.drawer-pull{display:none}.cabinet-drawers button{display:block;padding:5px}.drawer-tassel{right:50%}}@media(max-height:620px)and (min-aspect-ratio:1.05){.series-cabinet{top:24.5%;height:50px;width:min(600px,67vw)}.cabinet-drawers button{height:38px}.drawer-index{height:24px}.drawer-tassel{top:30px}.cabinet-caption{display:none}}.comet-shelf:has(.series-library-drawer.is-open){z-index:25}.series-drawer-scrim{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:fixed;z-index:41;top:0;right:0;bottom:0;left:0;padding:0;border:0;background:linear-gradient(90deg,#140c0847,#110e177a);-webkit-backdrop-filter:blur(2px) saturate(.86);backdrop-filter:blur(2px) saturate(.86);pointer-events:auto;cursor:alias;animation:series-scrim-in .42s ease both}.series-library-drawer{position:fixed;z-index:42;inset:0 auto 0 0;width:min(442px,calc(100vw - 16px));height:100vh;height:100dvh;transform:translate3d(calc(-100% + 48px),0,0);filter:drop-shadow(8px 0 16px rgba(24,12,5,.22));transition:transform .76s cubic-bezier(.2,.84,.18,1),filter .52s ease;will-change:transform;pointer-events:auto}.series-library-drawer.is-open{transform:translateZ(0);filter:drop-shadow(20px 0 34px rgba(24,12,5,.5))}.series-drawer-body{position:absolute;top:0;right:46px;bottom:0;left:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto;min-height:0;padding:18px 18px 13px 20px;overflow:hidden;border-right:3px solid #613716;color:#5d432c;background:linear-gradient(90deg,rgba(62,31,13,.27),transparent 18px,transparent calc(100% - 16px),rgba(48,23,10,.28)),linear-gradient(180deg,#ffe1a41a,#3e1e0c21),url(https://tulingos-dev.oss-cn-beijing.aliyuncs.com/yuyan/reference/storycomet/textures/wood-planks.jpg) center/390px auto,#9a5e2c;box-shadow:inset -10px 0 16px #2b140880,inset 12px 0 17px #ffc9701f,inset 0 0 0 7px #774519,inset 0 0 0 10px #c0803e}.series-drawer-body:before,.series-drawer-body:after{content:"";position:absolute;z-index:0;pointer-events:none}.series-drawer-body:before{top:10px;right:11px;bottom:10px;left:12px;border:1px solid rgba(246,197,116,.42);box-shadow:inset 0 0 0 2px #4f270e70}.series-drawer-body:after{left:14px;right:14px;top:101px;bottom:44px;background:linear-gradient(90deg,#341a0b57,#ffd38509 35%,#1f0f073b);border:1px solid rgba(66,32,12,.52);border-radius:2px;box-shadow:inset 0 9px 18px #2412085c,inset 0 -4px 10px #fac46717}.series-drawer-heading{position:relative;z-index:2;display:grid;grid-template-columns:52px minmax(0,1fr);align-items:center;gap:12px;min-height:77px;margin:0 3px 10px;padding:8px 14px 9px 11px;color:#594127;background:linear-gradient(100deg,#fffae0e0,#e4c991e6),url(https://tulingos-dev.oss-cn-beijing.aliyuncs.com/yuyan/assets/paper-card-v1.webp) center/210% 230%;border:1px solid #8b612d;border-radius:4px 9px 5px 7px;box-shadow:inset 0 0 0 3px #fff3cad1,0 4px #593014,0 7px 10px #2813074f;transform:rotate(-.25deg)}.series-cabinet-seal{width:46px;height:46px;display:grid;place-items:center;color:#f8e4ac;border:2px solid #cf9e4d;border-radius:50%;background:radial-gradient(circle at 35% 28%,#c98a4f 0,#c98a4f 10%,#9a4d35 47%,#642c27);box-shadow:inset 0 0 0 3px #79332c,0 3px 5px #3a1c0c54;transform:rotate(-6deg)}.series-cabinet-seal svg{width:22px;height:22px;stroke-width:2}.series-drawer-heading>span:last-child{min-width:0;display:flex;flex-direction:column}.series-drawer-heading small{font:9px var(--read-font);letter-spacing:3px;color:#9a7145}.series-drawer-heading strong{margin-top:3px;font:18px var(--ui-font);letter-spacing:1px;color:#5b3f27}.series-drawer-heading em{margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:10px var(--read-font);font-style:normal;color:#8b7455}.series-collection-shelves{position:relative;z-index:2;min-height:0;display:grid;grid-template-rows:repeat(4,minmax(0,1fr));gap:0;padding:5px 6px 7px}.series-collection{--series-accent:#785842;-webkit-appearance:none;-moz-appearance:none;appearance:none;position:relative;min-height:0;display:grid;grid-template-columns:auto minmax(0,1fr) 31px;align-items:center;gap:13px;padding:5px 8px 14px 13px;color:#f4e6c6;text-align:left;border:0;background:transparent;cursor:pointer;isolation:isolate}.series-collection[data-series=tang-poetry]{--series-accent:#ae674d}.series-collection[data-series=song-ci]{--series-accent:#4e817b}.series-collection[data-series=bedtime]{--series-accent:#675783}.series-collection[data-series=english]{--series-accent:#c36d55}.series-collection:before{content:"";position:absolute;z-index:-1;top:4px;right:4px;bottom:14px;left:5px;border:1px solid rgba(240,194,112,.13);border-radius:5px;background:linear-gradient(90deg,#1a0e083b,#ffd27f06,#150b0621);opacity:.76;transition:opacity .22s ease,background .28s ease,box-shadow .28s ease,transform .36s var(--comet-spring)}.series-collection:hover:before,.series-collection:focus-visible:before{opacity:1;background:linear-gradient(90deg,#1b0f0833,color-mix(in srgb,var(--series-accent) 20%,transparent),#1c0e071f);box-shadow:inset 4px 0 0 var(--series-accent),inset 0 0 26px #ffda9114;transform:translate(3px)}.series-collection.active:before{opacity:1;background:linear-gradient(90deg,color-mix(in srgb,var(--series-accent) 44%,#2d180d),#4c291447);box-shadow:inset 4px 0 #f0c56f,inset 0 0 24px color-mix(in srgb,var(--series-accent) 30%,transparent)}.series-cover-book{position:relative;z-index:3;height:clamp(78px,12.1vh,116px);aspect-ratio:3/4;flex:0 0 auto;overflow:hidden;border:1px solid #3d281b;border-radius:3px 7px 7px 3px;background:#5f3d29;box-shadow:inset 4px 0 5px #ffe8b824,inset -3px 0 3px #1e0f0857,0 5px #3d2415,0 9px 10px #160b067a;transform:perspective(350px) rotateY(5deg) rotate(-.7deg);transform-origin:left bottom;transition:transform .43s var(--comet-spring),filter .25s ease,box-shadow .36s ease}.series-cover-book:before,.series-cover-book:after{content:"";position:absolute;z-index:4;top:0;bottom:0;pointer-events:none}.series-cover-book:before{left:5px;width:2px;background:linear-gradient(180deg,#f7d8849e,#835520,#f7d8848c)}.series-cover-book:after{right:0;width:5px;background:linear-gradient(90deg,transparent,rgba(17,9,5,.5))}.series-cover-book img{width:100%;height:100%;display:block;object-fit:cover;filter:saturate(.88) contrast(1.03) brightness(.84)}.series-cover-vignette{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,rgba(8,7,11,.16),transparent 31%,rgba(10,7,5,.12) 59%,rgba(18,10,7,.76));box-shadow:inset 0 0 0 3px #e2b55e7a,inset 0 0 0 5px #23140c5c}.series-cover-copy{position:absolute;z-index:3;left:8px;right:7px;bottom:8px;display:flex;flex-direction:column;align-items:center;text-align:center;color:#fff1c9;text-shadow:0 2px 3px rgba(8,5,4,.92)}.series-cover-copy small{font:6px var(--read-font);letter-spacing:2px;color:#ecd69f}.series-cover-copy strong{margin-top:2px;font:clamp(9px,1.15vh,12px) var(--ui-font);letter-spacing:.5px;line-height:1.18}.series-cover-book>i{position:absolute;z-index:5;right:8px;top:-2px;width:9px;height:22px;background:#a9473e;clip-path:polygon(0 0,100% 0,100% 100%,50% 76%,0 100%);filter:drop-shadow(0 1px 1px #27100e)}.series-collection:hover .series-cover-book,.series-collection:focus-visible .series-cover-book{filter:brightness(1.08) saturate(1.08);transform:perspective(350px) translate3d(9px,-3px,0) rotateY(-2deg) rotate(.2deg);box-shadow:inset 4px 0 5px #ffe8b82e,0 7px #3d2415,0 13px 15px #1108048c}.series-collection.active .series-cover-book{filter:brightness(1.06) saturate(1.08);transform:perspective(350px) translate3d(6px,-2px,0) rotateY(0) rotate(0);box-shadow:inset 4px 0 5px #ffe8b82e,0 6px #3d2415,0 11px 14px #1108048c,0 0 0 2px #e3b95d}.series-collection-copy{min-width:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding-bottom:3px;text-shadow:0 2px 3px rgba(28,13,6,.7)}.series-collection-number{margin-bottom:4px;color:#dbb678;font:8px var(--read-font);letter-spacing:2px}.series-collection-copy>strong{max-width:100%;display:flex;align-items:center;gap:7px;color:#fff0c4;font:clamp(15px,1.9vh,19px) var(--ui-font);letter-spacing:.5px;white-space:nowrap}.series-collection-copy>strong svg{width:16px;height:16px;flex:0 0 auto;color:#edc67e;stroke-width:2}.series-collection-copy>em{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;margin-top:4px;overflow:hidden;color:#e5d3af;font:10px/1.5 var(--read-font);font-style:normal;text-wrap:pretty}.series-collection-copy>small{margin-top:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#c8ae87;font:8px var(--read-font)}.series-collection-copy>small b{color:#f2ce80;font-size:11px;font-weight:700}.series-collection-pull{position:relative;width:28px;height:32px;display:grid;place-items:center;color:#5c3a18;border-radius:5px;background:linear-gradient(180deg,#e3b967,#a96b2d 54%,#74421b);border:1px solid #563114;box-shadow:inset 0 2px 1px #f8dd9a,inset 0 -3px 3px #512b13,0 3px 4px #140a0575;transition:transform .3s var(--comet-spring),filter .2s ease}.series-collection-pull:before,.series-collection-pull:after{content:"";position:absolute;left:5px;right:5px;height:1px;background:#70451e;box-shadow:0 1px #f1ce81}.series-collection-pull:before{top:7px}.series-collection-pull:after{bottom:7px}.series-collection-pull>i{position:absolute;top:5px;right:5px;bottom:5px;left:5px;border:1px solid rgba(255,226,157,.3);border-radius:3px}.series-collection-pull svg{width:14px;height:14px;stroke-width:3;transition:transform .3s var(--comet-spring)}.series-collection:hover .series-collection-pull{filter:brightness(1.12);transform:translate(4px)}.series-collection:hover .series-collection-pull svg{transform:translate(2px)}.series-collection.active .series-collection-pull{color:#fff0b0;background:linear-gradient(180deg,#c77c47,#9e4f38 58%,#633025)}.series-shelf-plank{position:absolute;z-index:1;left:0;right:0;bottom:5px;height:11px;border:1px solid #45250f;border-radius:2px;background:linear-gradient(180deg,#dc9b4e 0,#dc9b4e 16%,#9a5827 22%,#9a5827 57%,#623315 64%,#623315),url(https://tulingos-dev.oss-cn-beijing.aliyuncs.com/yuyan/reference/storycomet/textures/wood-planks.jpg) center/300px auto;background-blend-mode:multiply,normal;box-shadow:inset 0 1px #f6c778,0 3px #40210d,0 6px 7px #190c0580}.series-cabinet-footer{position:relative;z-index:2;min-height:29px;display:flex;align-items:center;justify-content:center;gap:7px;margin:6px 7px 0;padding:5px 8px;color:#e3c897;border-top:1px solid rgba(241,192,107,.3);font:9px var(--read-font);letter-spacing:.4px;text-shadow:0 2px 2px #281307}.series-cabinet-footer svg{width:13px;height:13px;color:#efc86e}.series-drawer-handle{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:absolute;inset:0 0 0 auto;width:48px;display:block;padding:0;overflow:visible;color:#f2d698;border:0;border-left:2px solid #d29a4e;border-right:1px solid #4e2911;background:linear-gradient(90deg,#4b260fad,#cd853a6b 48%,#3d1d0cb3),url(https://tulingos-dev.oss-cn-beijing.aliyuncs.com/yuyan/reference/storycomet/textures/wood-planks.jpg) center/180px auto,#8a4d21;box-shadow:inset 4px 0 6px #ffcc7429,inset -6px 0 7px #2913076b,5px 0 9px #1f0f074d;cursor:pointer}.series-drawer-handle:after{content:"";position:absolute;top:7px;right:5px;bottom:7px;left:5px;border:1px solid rgba(235,179,93,.33);box-shadow:inset 0 0 0 1px #361a0a6b;pointer-events:none}.series-hinge{position:absolute;z-index:2;left:8px;width:28px;height:22px;border:1px solid #503016;border-radius:3px;background:linear-gradient(90deg,#705027,#d4ab5a 48%,#765024);box-shadow:inset 0 2px 1px #f3d387,inset 0 -3px 2px #533516,0 2px 4px #200f066b}.series-hinge:before,.series-hinge:after{content:"";position:absolute;top:7px;width:5px;height:5px;border-radius:50%;background:#4f351b;box-shadow:inset 0 1px 1px #e2ba6e}.series-hinge:before{left:4px}.series-hinge:after{right:4px}.series-hinge.top{top:10vh}.series-hinge.bottom{bottom:10vh}.series-handle-mark{position:absolute;z-index:2;top:50%;left:4px;width:39px;min-height:158px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:12px 3px;color:#68401d;border:1px solid #704219;border-radius:4px;background:linear-gradient(90deg,#c68a45,#e9bd70 48%,#a96831);box-shadow:inset 0 2px 1px #ffe1a1,inset 0 -4px 5px #75421e,0 4px 6px #2110076b;transform:translateY(-50%)}.series-handle-mark svg{width:18px;height:18px;filter:drop-shadow(0 1px #ffe4a5)}.series-handle-mark small,.series-handle-mark strong{writing-mode:vertical-rl;line-height:1}.series-handle-mark small{font:9px var(--read-font);letter-spacing:3px;color:#795128}.series-handle-mark strong{font:15px var(--ui-font);letter-spacing:2px;color:#5e3519}.series-brass-pull{position:absolute;z-index:3;top:calc(50% + 100px);left:9px;width:27px;height:27px;display:grid;place-items:center;border:2px solid #563618;border-radius:50%;background:radial-gradient(circle at 35% 30%,#f4d384,#bd7e35 55%,#704419);box-shadow:inset 0 0 0 2px #e8bb63,0 3px 4px #1e0e058c;transition:transform .48s var(--comet-spring)}.series-brass-pull>i{position:absolute;top:5px;right:5px;bottom:5px;left:5px;border:1px solid #6c431e;border-radius:50%}.series-brass-pull svg{position:relative;width:11px;height:11px;color:#5e3819;stroke-width:3;transition:transform .62s var(--comet-spring)}.series-library-drawer.is-open .series-brass-pull{transform:rotate(180deg)}.series-library-drawer.is-open .series-brass-pull svg{transform:translate(1px)}.series-drawer-handle:hover .series-handle-mark{filter:brightness(1.06)}.series-drawer-handle:hover .series-brass-pull{filter:brightness(1.12)}.series-library-drawer.is-open .series-collection{animation:series-book-arrive .65s var(--comet-spring) both}.series-library-drawer.is-open .series-collection:nth-child(2){animation-delay:55ms}.series-library-drawer.is-open .series-collection:nth-child(3){animation-delay:.11s}.series-library-drawer.is-open .series-collection:nth-child(4){animation-delay:165ms}@keyframes series-scrim-in{0%{opacity:0}to{opacity:1}}@keyframes series-book-arrive{0%{opacity:.35;transform:translate(-18px)}to{opacity:1;transform:none}}@media(max-height:720px){.series-drawer-body{padding-top:12px;padding-bottom:8px}.series-drawer-heading{min-height:66px;margin-bottom:5px}.series-drawer-heading em{display:none}.series-drawer-body:after{top:82px;bottom:36px}.series-cover-book{height:clamp(66px,11.6vh,84px)}.series-collection{gap:10px;padding-top:3px;padding-bottom:12px}.series-collection-copy>em{font-size:9px;-webkit-line-clamp:1}.series-collection-copy>small{margin-top:2px}.series-cabinet-footer{min-height:24px;margin-top:2px}}@media(max-width:520px){.series-library-drawer{width:calc(100vw - 10px);transform:translate3d(calc(-100% + 43px),0,0)}.series-drawer-body{right:41px;padding-left:14px;padding-right:12px}.series-drawer-handle{width:43px}.series-drawer-heading{grid-template-columns:43px minmax(0,1fr);gap:9px;padding-left:8px;padding-right:8px}.series-cabinet-seal{width:39px;height:39px}.series-cabinet-seal svg{width:19px}.series-drawer-heading strong{font-size:15px}.series-drawer-heading small,.series-drawer-heading em{font-size:8px}.series-collection-shelves{padding-left:2px;padding-right:2px}.series-collection{grid-template-columns:auto minmax(0,1fr) 25px;gap:9px;padding-left:8px;padding-right:5px}.series-cover-book{height:clamp(68px,11.7vh,98px)}.series-collection-number{font-size:7px;margin-bottom:2px}.series-collection-copy>strong{font-size:14px}.series-collection-copy>strong svg{width:14px}.series-collection-copy>em{font-size:8.5px;line-height:1.35;-webkit-line-clamp:2}.series-collection-copy>small{font-size:7px}.series-collection-copy>small b{font-size:9px}.series-collection-pull{width:24px;height:29px}.series-collection-pull svg{width:11px}.series-hinge{left:7px;width:26px}.series-handle-mark{left:3px;width:36px}.series-brass-pull{left:8px;width:25px;height:25px}.series-cabinet-footer{font-size:8px}}@media(max-width:350px){.series-collection-copy>em,.series-collection-copy>small{display:none}.series-cover-book{height:clamp(65px,11.5vh,88px)}.series-cabinet-footer span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}@media(prefers-reduced-motion:reduce){.series-drawer-scrim,.series-library-drawer,.series-library-drawer.is-open .series-collection,.series-cover-book,.series-collection:before,.series-collection-pull,.series-brass-pull,.series-brass-pull svg{animation:none;transition:none}}.reduced-motion .series-drawer-scrim,.reduced-motion .series-library-drawer,.reduced-motion .series-library-drawer.is-open .series-collection,.reduced-motion .series-cover-book,.reduced-motion .series-collection:before,.reduced-motion .series-collection-pull,.reduced-motion .series-brass-pull,.reduced-motion .series-brass-pull svg{animation:none;transition:none}.scene-page-card{--page-accent:#557b75;--page-accent-soft:#d7e4d7;--page-ink:#383a35;width:clamp(340px,31vw,468px);padding:31px 34px 24px!important;color:var(--page-ink);cursor:default;clip-path:polygon(1.3% 0,97.8% .7%,100% 6%,99% 94%,94% 99.3%,4% 98.5%,0 92%,.7% 8%);background:linear-gradient(108deg,#fffae7f5,#efe0bce8),url(https://tulingos-dev.oss-cn-beijing.aliyuncs.com/yuyan/assets/paper-card-v1.webp) center/230% 230%;border:1px solid color-mix(in srgb,var(--page-accent) 55%,#a8854f);box-shadow:inset 0 0 5px #fffae5e0,inset 0 0 30px color-mix(in srgb,var(--page-accent) 12%,transparent),0 16px 30px #11131b59;filter:none}.scene-page-card:before{content:"";display:block;position:absolute;top:9px;right:9px;bottom:9px;left:9px;width:auto;height:auto;padding:0;border:1px solid color-mix(in srgb,var(--page-accent) 34%,transparent);border-radius:3px 9px 5px 7px;pointer-events:none}.scene-page-card:after{content:"月  ·  光  ·  故  事";display:block;position:absolute;right:17px;bottom:14px;width:auto;height:auto;padding:0;color:color-mix(in srgb,var(--page-accent) 68%,#aa8150);border:0;font:8px var(--read-font);letter-spacing:3px;transform:none}.scene-page-card.content-story{--page-accent:#675783;--page-accent-soft:#e3dbec;--page-ink:#363347}.scene-page-card.content-ci{--page-accent:#4e817b;--page-accent-soft:#d2e4dc;--page-ink:#293f3d}.scene-page-card.content-ci:after{content:"词  ·  境  ·  入  画"}.story-page-marker{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:9px;border-bottom:1px dashed color-mix(in srgb,var(--page-accent) 34%,transparent);color:var(--page-accent);font:9px var(--ui-font);letter-spacing:1.7px}.story-page-marker strong{font:italic 11px Georgia,serif;letter-spacing:.8px}.scene-page-book-title{position:relative;z-index:1;display:flex;align-items:baseline;gap:9px;margin-top:12px;color:#8c7652;font:13px var(--read-font)}.scene-page-book-title small{padding-left:9px;border-left:1px solid #b9a4776b;color:#a18c68;font-size:9px;letter-spacing:.6px}.scene-page-card h2{position:relative;z-index:1;margin:17px 0 4px;color:var(--page-accent);font:600 clamp(22px,2.15vw,29px)/1.25 var(--read-font);letter-spacing:.08em;text-shadow:0 1px #fff9e8}.scene-page-words{position:relative;z-index:1;margin:2px 0 6px}.scene-page-words .poem-line{display:flex;align-items:flex-end;justify-content:flex-start;flex-wrap:wrap;gap:0;margin:0}.scene-page-card.content-ci .scene-page-words .poem-char{padding:0 2px;color:#283d3a;border:0;border-bottom:1px dashed #819b8a7a;font:600 clamp(24px,2.35vw,32px)/1.75 var(--read-font)}.scene-page-card.content-ci .scene-page-words .punctuation{color:#6d8077;font-size:26px;line-height:1.85}.scene-page-card.content-story .scene-page-words{margin:10px 0 8px;padding:11px 8px 8px;border-left:3px solid color-mix(in srgb,var(--page-accent) 64%,#cfb569);background:linear-gradient(90deg,color-mix(in srgb,var(--page-accent-soft) 55%,transparent),transparent 90%)}.scene-page-card.content-story .scene-page-words .poem-char{padding:0 1px;color:#383548;border:0;border-radius:3px;font:500 clamp(18px,1.55vw,23px)/1.85 var(--read-font)}.scene-page-card.content-story .scene-page-words .punctuation{color:#7c7189;font:20px/1.9 var(--read-font)}.scene-page-card .poem-char:hover{color:#41364a;background:color-mix(in srgb,var(--page-accent-soft) 76%,transparent);box-shadow:0 2px color-mix(in srgb,var(--page-accent) 35%,transparent)}.scene-page-context{position:relative;z-index:1;margin:11px 0 8px;padding:9px 11px;border:1px solid color-mix(in srgb,var(--page-accent) 22%,transparent);border-radius:8px;background:#fffbea94}.scene-page-context>span{display:block;color:var(--page-accent);font:8px var(--ui-font);letter-spacing:1.6px}.scene-page-context p{margin:4px 0 0;color:#776b57;font:12px/1.65 var(--read-font);text-wrap:pretty}.scene-page-rule{position:relative;z-index:1;height:13px;display:flex;align-items:center;gap:7px;margin:4px 0 7px;color:var(--page-accent)}.scene-page-rule svg{width:12px;height:12px}.scene-page-rule i{height:1px;flex:1;background:linear-gradient(90deg,color-mix(in srgb,var(--page-accent) 42%,transparent),transparent)}.scene-page-card .card-actions{position:relative;z-index:1;flex-direction:column;align-items:center;justify-content:center;gap:7px}.scene-page-card .listen-mode-note{max-width:none;text-align:center}.scene-page-card .card-toggles{gap:8px}.scene-page-card .card-toggles button{color:#8e7958}.scene-page-card .card-toggles button.on{color:var(--page-accent)}.scene-page-card .read-done{background:linear-gradient(#fff1c6,color-mix(in srgb,var(--page-accent-soft) 50%,#e1bd71));border-color:color-mix(in srgb,var(--page-accent) 42%,#c8a763)}.scene-page-card .card-footnote{position:relative!important;z-index:1;margin-top:10px!important;color:#9b8c70;letter-spacing:.6px}.scene-page-card.size-large.content-story .scene-page-words .poem-char{font-size:27px}.scene-page-card.size-large.content-ci .scene-page-words .poem-char{font-size:37px}.english-dialogue-layer{--bubble-edge:#273d5d;--bubble-coral:#df735e;--bubble-yellow:#f3c64f;position:absolute;top:0;right:0;bottom:0;left:0;z-index:7;pointer-events:none}.english-speech-bubble{position:absolute;width:clamp(360px,35vw,530px);min-height:192px;padding:25px 34px 36px;pointer-events:auto;color:#27344d;background:none;border:0;border-radius:0;box-shadow:none;transform-origin:42% 100%;animation:english-bubble-in .66s cubic-bezier(.18,1.38,.32,1) both}.english-speech-bubble:before{display:none}.english-bubble-art{position:absolute;z-index:0;top:-15px;right:-18px;bottom:-31px;left:-18px;width:calc(100% + 36px);height:calc(100% + 46px);object-fit:fill;pointer-events:none;-webkit-user-select:none;user-select:none;filter:drop-shadow(0 14px 17px rgba(22,28,43,.3))}.english-speech-bubble header{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 8px;padding:0 4px 7px;border-bottom:1px dashed rgba(39,61,93,.22)}.english-speech-bubble header small{color:#847254;font:9px Georgia,serif;letter-spacing:1.2px}.english-speaker{display:flex;align-items:center;gap:6px;color:#b45145;font:13px var(--ui-font);letter-spacing:.4px}.english-speaker svg{width:16px;height:16px;color:var(--bubble-coral);fill:#f6b580;stroke:#7f413b}.english-speech-words{position:relative;z-index:1;display:flex;align-items:baseline;justify-content:center;flex-wrap:wrap;column-gap:8px;row-gap:2px;padding:1px 8px 3px;color:#253854;font:400 clamp(31px,2.75vw,42px)/1.18 var(--english-hand-font);letter-spacing:.025em;text-align:center}.english-speech-words button{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0 2px 2px;color:inherit;border:0;border-bottom:3px solid transparent;border-radius:5px;background:transparent;font:inherit;cursor:pointer;transition:transform .22s var(--comet-spring),color .18s,background .18s,box-shadow .18s}.english-speech-words button:nth-of-type(3n+1){color:#c2584d}.english-speech-words button:nth-of-type(3n+2){color:#286e79}.english-speech-words button:hover,.english-speech-words button:focus-visible{outline:none;color:#253854;background:#ffdf73a8;border-bottom-color:#d7953d;box-shadow:0 3px #c6703347;transform:translateY(-4px) rotate(-1deg)}.english-speech-words button.highlighted{color:#253854;background:#ffd75e;border-bottom-color:#c6763d;box-shadow:0 0 0 4px #ffe8857a,0 4px #a85d2d45;transform:translateY(-3px) scale(1.05)}.english-translation{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;gap:6px;margin:5px 5px 6px;color:#746652;font:13px/1.55 var(--read-font);text-align:center}.english-translation svg{width:14px;height:14px;color:#52858a}.english-learning-strip{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:5px;margin:7px 4px 5px}.english-learning-strip>span{width:100%;color:#8d795c;font:9px var(--read-font);text-align:center}.english-learning-strip>span b{color:#b45145;font:600 10px var(--ui-font)}.english-learning-strip i{padding:3px 7px;color:#315b68;border:1px solid #8ab1a8;border-radius:12px;background:#e5f0df;font:normal 9px var(--ui-font);box-shadow:0 1px #fff}.english-speech-bubble footer{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:7px;padding:7px 3px 0;border-top:1px dashed rgba(39,61,93,.18)}.english-speech-bubble footer>span{display:flex;align-items:center;gap:4px;color:#8b7c63;font:9px var(--read-font)}.english-speech-bubble footer>span svg{width:13px;color:#d36d59}.english-speech-bubble footer>div{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:5px}.english-speech-bubble footer button{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:4px 8px;color:#5e5b55;border:1px solid #ceb77f;border-radius:13px;background:#fff8df;font:9px var(--ui-font);box-shadow:0 2px #7a592e2e;cursor:pointer}.english-speech-bubble footer button.on{color:#fff;background:#5b8a88;border-color:#426c70}.english-speech-bubble footer .read-done{padding:5px 9px;color:#6d4d2f;background:#f4daa0;font-size:9px}.english-speech-bubble footer .listen-mode-note{max-width:105px;color:#8b7c63;font-size:8px;line-height:1.3}.speech-tail{display:none}.dialogue-position-0 .english-speech-bubble{left:4.5%;top:11%;rotate:-1deg}.dialogue-position-1 .english-speech-bubble{left:57.5%;top:10.5%;rotate:1.3deg}.dialogue-position-2 .english-speech-bubble{left:7%;top:13%;rotate:.6deg}.dialogue-position-3 .english-speech-bubble{left:55%;top:12%;rotate:-1.2deg}.dialogue-position-0 .english-bubble-art,.dialogue-position-2 .english-bubble-art{transform:scaleX(-1)}.english-dialogue-layer .full-poem{position:absolute;left:50%;top:50%;right:auto;bottom:auto;width:min(520px,88vw);max-height:72dvh;translate:-50% -50%;pointer-events:auto;border:2px solid var(--bubble-edge);border-radius:18px;box-shadow:0 0 0 100vmax #0c142394,0 18px 45px #080f1d75}.series-english.reading .interaction-hint{top:auto;right:2.5%;bottom:122px;width:210px}.series-english.reading .reader-controls{left:50%;width:min(660px,82vw);justify-content:space-between}.book-waiting .english-dialogue-layer,.book-closing .english-dialogue-layer{opacity:0;transform:translateY(15px);pointer-events:none}.reader-main.page-turning .english-dialogue-layer{opacity:0;transform:translate(-20px) scale(.96);pointer-events:none;transition:opacity .26s ease,transform .36s ease}@keyframes english-bubble-in{0%{opacity:0;transform:translateY(24px) scale(.7) rotate(-4deg)}65%{opacity:1;transform:translateY(-4px) scale(1.035) rotate(1deg)}to{opacity:1;transform:none}}@media(max-width:1180px)and (min-aspect-ratio:1.05){.scene-page-card{width:clamp(320px,34vw,430px);padding:27px 27px 21px!important}.scene-page-card.content-story .scene-page-words .poem-char{font-size:18px}.english-speech-bubble{width:clamp(315px,38vw,440px);padding:21px 27px 31px}.dialogue-position-0 .english-speech-bubble{left:3%}.dialogue-position-1 .english-speech-bubble{left:56%}.dialogue-position-2 .english-speech-bubble{left:5%}.dialogue-position-3 .english-speech-bubble{left:54%}}@media(max-aspect-ratio:1.05){.reader-main .scene-page-card:not(.card-expanded){left:4vw;right:4vw;top:auto;bottom:116px;width:auto;max-height:43dvh;padding:22px 24px 18px!important}.scene-page-card h2{margin-top:10px;font-size:21px}.scene-page-book-title{margin-top:8px}.scene-page-context{margin:6px 0;padding:7px 9px}.scene-page-rule{display:none}.scene-page-card.content-story .scene-page-words{margin:6px 0;padding:7px 6px 5px}.scene-page-card.content-story .scene-page-words .poem-char{font-size:17px;line-height:1.65}.scene-page-card.content-ci .scene-page-words .poem-char{font-size:24px;line-height:1.55}.scene-page-card .card-actions{gap:5px}.scene-page-card .card-footnote{display:none}.english-speech-bubble{left:50%!important;right:auto;top:146px!important;width:min(520px,88vw);min-height:0;padding:21px 29px 29px;translate:-50% 0;rotate:0deg!important}.english-speech-words{font-size:clamp(23px,6vw,31px);line-height:1.28}.english-learning-strip{margin-top:4px}.english-speech-bubble footer{padding-top:5px}.english-speech-bubble footer>span{display:none}.series-english.reading .interaction-hint{display:none}.series-english.reading .reader-controls{width:92vw}}@media(max-width:560px){.story-page-marker{font-size:8px}.scene-page-book-title{font-size:11px}.scene-page-card h2{font-size:19px}.scene-page-context p{font-size:11px}.scene-page-card .card-actions{flex-wrap:wrap}.scene-page-card .card-toggles{width:100%;justify-content:center}.english-speech-bubble{top:158px!important;width:91vw;padding:18px 24px 26px}.english-speech-bubble header{margin-bottom:4px;padding-bottom:5px}.english-speaker{font-size:11px}.english-speech-bubble header small{font-size:8px}.english-speech-words{font-size:clamp(21px,6.7vw,28px);column-gap:4px}.english-translation{margin:3px;font-size:11px}.english-learning-strip>span{display:none}.english-learning-strip i{font-size:8px;padding:2px 6px}.english-speech-bubble footer{margin-top:4px}.english-speech-bubble footer .listen-mode-note{display:none}.english-speech-bubble footer>div{width:100%;justify-content:center}.english-speech-bubble footer button{font-size:8px;padding:3px 7px}}@media(max-height:680px)and (min-aspect-ratio:1.05){.scene-page-card{top:47%;max-height:calc(100dvh - 116px);padding:21px 25px 18px!important}.scene-page-card h2{margin-top:9px}.scene-page-context{margin:5px 0;padding:6px 9px}.scene-page-card .card-footnote{display:none}.english-speech-bubble{top:10%!important;padding-top:12px;padding-bottom:9px}.english-learning-strip>span{display:none}.english-speech-bubble footer{margin-top:3px}}@media(prefers-reduced-motion:reduce){.english-speech-bubble,.reader-main.page-turning .english-dialogue-layer{animation:none;transition:none}}.reduced-motion .english-speech-bubble,.reduced-motion .reader-main.page-turning .english-dialogue-layer{animation:none;transition:none}:root{--touch-spring:cubic-bezier(.2,1.35,.3,1);--touch-soft:cubic-bezier(.22,.8,.2,1);--touch-gold:#ffd97a;--touch-shadow:#21182a80}:where(.round,.wood-circle){position:relative;isolation:isolate;transform-origin:50% 72%;will-change:transform;transition:transform .26s var(--touch-spring),box-shadow .22s var(--touch-soft),filter .18s}:where(.round,.wood-circle):before{content:"";position:absolute;top:8%;right:8%;bottom:8%;left:8%;z-index:-1;border-radius:50%;opacity:0;background:radial-gradient(circle at 36% 28%,#fffbd5cc 0 8%,#ffe39455 24%,transparent 58%);box-shadow:0 0 0 2px #ffe7a400,0 0 22px #ffd36b00;transition:opacity .18s,box-shadow .22s;pointer-events:none}:where(.round,.wood-circle):hover:not(:disabled){transform:translateY(-3px) scale(1.08) rotate(-3deg);box-shadow:0 9px 14px var(--touch-shadow);filter:none}:where(.round,.wood-circle):hover:not(:disabled):before{opacity:.72;box-shadow:0 0 0 2px #ffe7a43d,0 0 22px #ffd36b5c}:where(.round,.wood-circle):active:not(:disabled){transform:translateY(2px) scale(.94);box-shadow:0 2px 4px #21182a70;transition-duration:80ms}:where(.round,.wood-circle)[data-click-pop=true]{animation:wood-click-pop .5s var(--touch-spring)}:where(.round,.wood-circle)[data-click-pop=true] svg{animation:icon-click-kick .46s var(--touch-spring)}:where(.selection-card,.pill-button,.gold-button,.outline-button,.catalog-results button,.genre-grid button,.quiz-options button,.profile-card,.souvenirs button,.read-done,.narrative-guide footer button){transform-origin:50% 80%;will-change:transform;transition:transform .24s var(--touch-spring),box-shadow .22s var(--touch-soft),filter .18s}:where(.selection-card,.catalog-results button,.genre-grid button,.quiz-options button,.profile-card,.souvenirs button):hover:not(:disabled){transform:translateY(-6px) rotate(-.7deg) scale(1.025);filter:none;box-shadow:0 0 0 1px #ffd97a99,0 12px 24px #21182a55}:where(.pill-button,.gold-button,.outline-button,.read-done,.narrative-guide footer button):hover:not(:disabled){transform:translateY(-3px) scale(1.035);filter:none}:where(.selection-card,.pill-button,.gold-button,.outline-button,.catalog-results button,.genre-grid button,.quiz-options button,.profile-card,.souvenirs button,.read-done,.narrative-guide footer button):active:not(:disabled){transform:translateY(2px) scale(.965);transition-duration:80ms}:where(.selection-card,.pill-button,.gold-button,.outline-button,.catalog-results button,.genre-grid button,.quiz-options button,.profile-card,.souvenirs button,.read-done,.narrative-guide footer button)[data-click-pop=true]{animation:paper-click-pop .5s var(--touch-spring)}.selection-card:hover .selection-title{transform:translateY(-2px) scale(1.035);filter:drop-shadow(0 3px 2px #6d4b2640)}.selection-title{transition:transform .26s var(--touch-spring),filter .2s}.selection-card:active .selection-title{transform:translateY(1px) scale(.98)}.poem-char{transform-origin:50% 75%;transition:transform .22s var(--touch-spring),background-color .16s,color .16s,box-shadow .16s}.poem-char:hover:not(:disabled){transform:translateY(-3px) scale(1.06);background:#ffd97a80;box-shadow:0 3px #e0952f55;filter:none}.poem-char:active:not(:disabled){transform:translateY(1px) scale(.94)}.poem-char[data-click-pop=true]{animation:word-click-pop .5s var(--touch-spring)}.brand,.journey-pill,.top-poem-progress button,.card-toggles button,.verse-scene-switch,.full-poem button{transform-origin:50% 70%;transition:transform .22s var(--touch-spring),filter .18s,box-shadow .18s}.brand:hover,.journey-pill:hover,.top-poem-progress button:hover:not(:disabled),.card-toggles button:hover:not(:disabled),.verse-scene-switch:hover:not(:disabled),.full-poem button:hover:not(:disabled){transform:translateY(-2px) scale(1.045);filter:brightness(1.06) drop-shadow(0 3px 5px #33231342)}.brand:active,.journey-pill:active,.top-poem-progress button:active:not(:disabled),.card-toggles button:active:not(:disabled),.verse-scene-switch:active:not(:disabled),.full-poem button:active:not(:disabled){transform:translateY(1px) scale(.95)}:where(.brand,.journey-pill,.top-poem-progress button,.card-toggles button,.verse-scene-switch,.full-poem button)[data-click-pop=true]{animation:compact-click-pop .46s var(--touch-spring)}@keyframes wood-click-pop{0%{transform:translateY(1px) scale(.94) rotate(0)}36%{transform:translateY(-8px) scale(1.15) rotate(5deg)}66%{transform:translateY(1px) scale(.97) rotate(-2deg)}to{transform:translateY(0) scale(1) rotate(0)}}@keyframes icon-click-kick{0%{transform:scale(.9)}42%{transform:scale(1.24) rotate(-9deg)}to{transform:none}}@keyframes paper-click-pop{0%{transform:translateY(1px) scale(.97)}40%{transform:translateY(-7px) scale(1.065) rotate(-1deg)}72%{transform:translateY(1px) scale(.985)}to{transform:none}}@keyframes word-click-pop{0%{transform:scale(.94)}40%{transform:translateY(-5px) scale(1.24) rotate(-3deg)}to{transform:none}}@keyframes compact-click-pop{0%{transform:scale(.95)}42%{transform:translateY(-4px) scale(1.12) rotate(2deg)}to{transform:none}}@media(hover:none){:where(.round,.wood-circle,.selection-card,.pill-button,.gold-button,.outline-button,.catalog-results button,.genre-grid button,.quiz-options button,.profile-card,.souvenirs button,.read-done,.narrative-guide footer button,.poem-char):hover:not(:disabled){transform:none}}@media(prefers-reduced-motion:reduce){[data-click-pop=true]{animation:none!important}:where(button,a,[role=button]){transition-duration:0s!important}}
