:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Songti SC,SimSun,serif;font-weight:400;line-height:1.5}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}body{min-width:320px;min-height:100vh;margin:0}*{box-sizing:border-box;margin:0;padding:0}body{color:#e6e6e6;background:linear-gradient(#0d0d1a 0%,#1a1a2e 40%,#16213e 100%);min-height:100vh;font-family:Songti SC,SimSun,serif;overflow:auto}.app{flex-direction:column;align-items:center;min-height:100vh;padding:2rem 1rem;display:flex;position:relative}.bg-layer{z-index:0;pointer-events:none;position:fixed;inset:0;overflow:hidden}.moon{opacity:.6;background:radial-gradient(circle,#fff8e0 0%,#e9d6a3 60%,#0000 70%);border-radius:50%;width:100px;height:100px;position:absolute;top:8%;right:12%;box-shadow:0 0 80px #e9d6a366}.stars{opacity:.3;background-image:radial-gradient(1px 1px at 20% 30%,#fff,#0000),radial-gradient(1px 1px at 60% 20%,#fff,#0000),radial-gradient(1px 1px at 80% 60%,#fff,#0000),radial-gradient(1px 1px at 40% 70%,#fff,#0000),radial-gradient(1px 1px at 90% 40%,#fff,#0000),radial-gradient(1px 1px at 10% 80%,#fff,#0000);position:absolute;inset:0}.mountain{opacity:.35;border-style:solid;width:0;height:0;position:absolute;bottom:0}.m1{border-width:0 200px 280px;border-color:#0000 #0000 #2a3f5f;left:-5%}.m2{border-width:0 240px 340px;border-color:#0000 #0000 #1f3554;left:20%}.m3{border-width:0 260px 300px;border-color:#0000 #0000 #243a5a;right:10%}.m4{border-width:0 220px 380px;border-color:#0000 #0000 #1a2f4e;right:-8%}.cloud{filter:blur(40px);background:#d4af7a14;border-radius:50%;position:absolute}.c1{width:200px;height:100px;top:20%;left:10%}.c2{width:150px;height:80px;top:40%;right:20%}.river{background:linear-gradient(#0000 0%,#d4af7a0d 100%);height:60px;position:absolute;bottom:15%;left:0;right:0}.title-wrap{text-align:center;z-index:1;margin:3rem 0 2rem;position:relative}.logo{letter-spacing:.8em;color:#d4af7a;text-shadow:0 0 40px #d4af7a59;font-size:4rem;font-weight:400}.subtitle{color:#8a9ab5;letter-spacing:.4em;margin-top:.5rem;font-size:1rem}.api-warning{color:#ef9a9a;z-index:1000;background:#f4433633;border:1px solid #f4433680;border-radius:6px;padding:.8rem 1.5rem;font-size:.9rem;animation:.5s slideDown;position:fixed;top:1rem;left:50%;transform:translate(-50%)}@keyframes slideDown{0%{opacity:0;transform:translate(-50%)translateY(-100%)}to{opacity:1;transform:translate(-50%)translateY(0)}}.menu{z-index:1;width:100%;max-width:1000px;padding:0 1rem;position:relative}.menu-section{margin-bottom:2.5rem}.section-title{color:#d4af7a;letter-spacing:.1em;border-left:3px solid #d4af7a;margin-bottom:1.2rem;padding-left:.5rem;font-size:1.2rem}.menu-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;display:grid}.menu-item{text-align:center;cursor:pointer;background:#0006;border:1px solid #d4af7a26;border-radius:10px;padding:1.5rem 1rem;transition:all .3s}.menu-item:hover{background:#d4af7a0d;border-color:#d4af7a80;transform:translateY(-4px)}.menu-item.locked{opacity:.6;cursor:not-allowed}.menu-item.locked:hover{transform:none}.menu-icon{margin-bottom:.8rem;font-size:2.5rem}.menu-title{color:#d4af7a;letter-spacing:.1em;margin-bottom:.5rem;font-size:1.1rem}.menu-desc{color:#8a9ab5;font-size:.85rem;line-height:1.5}.footer{z-index:1;text-align:center;color:#5a6a85;padding:2rem 1rem;font-size:.85rem;position:relative}.footer p{margin:.3rem 0}.copyright{opacity:.6}.info-card{text-align:center;z-index:1;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#00000059;border:1px solid #d4af7a40;border-radius:10px;padding:2rem}.info-card p{color:#d4af7a;line-height:2}.info-card button{color:#d4af7a;cursor:pointer;background:0 0;border:1px solid #d4af7a;border-radius:4px;margin-top:1rem;padding:.6rem 1.5rem;font-family:inherit}.info-card button:hover{background:#d4af7a26}@media (width<=600px){.logo{font-size:3rem}.menu-grid{grid-template-columns:1fr}.mountain{transform:scale(.6)}.moon{width:80px;height:80px}}.page{z-index:1;max-width:900px;min-height:100vh;margin:0 auto;padding:1rem 1.5rem 2rem;position:relative}.page-header{border-bottom:1px solid #d4af7a33;align-items:center;gap:1rem;margin-bottom:1.5rem;padding:1rem 0;display:flex}.back-btn{color:#d4af7a;cursor:pointer;background:0 0;border:1px solid #d4af7a4d;border-radius:4px;padding:.4rem 1rem;font-family:inherit;font-size:.9rem;transition:all .3s}.back-btn:hover{background:#d4af7a1a;border-color:#d4af7a}.page-title{color:#d4af7a;letter-spacing:.2em;font-size:1.5rem;font-weight:400}.page-desc{color:#8a9ab5;text-align:center;margin-bottom:1.5rem;font-size:.95rem}.search-bar{gap:.5rem;margin-bottom:1rem;display:flex}.search-input{color:#fff;background:#ffffff14;border:1px solid #d4af7a4d;border-radius:4px;outline:none;flex:1;padding:.8rem;font-family:inherit;font-size:1rem}.search-input:focus{border-color:#d4af7a}.search-btn{color:#d4af7a;cursor:pointer;background:#d4af7a26;border:1px solid #d4af7a;border-radius:4px;padding:.8rem 1.5rem;font-family:inherit;transition:all .3s}.search-btn:hover{color:#0d1117;background:#d4af7a}.poem-results{gap:.8rem;max-height:400px;display:grid;overflow-y:auto}.poem-card{cursor:pointer;background:#00000059;border:1px solid #d4af7a26;border-radius:8px;padding:1rem 1.2rem;transition:all .3s}.poem-card:hover{background:#d4af7a0d;border-color:#d4af7a80}.poem-title{color:#d4af7a;margin-bottom:.3rem;font-size:1.1rem}.poem-meta{color:#8a9ab5;margin-bottom:.5rem;font-size:.85rem}.poem-content-preview{color:#aaa;font-size:.9rem;line-height:1.6}.answer-area{gap:.5rem;margin:1.5rem 0;display:flex}.answer-input{color:#fff;background:#ffffff14;border:1px solid #d4af7a4d;border-radius:4px;outline:none;flex:1;padding:.8rem;font-family:inherit;font-size:1rem}.answer-input:focus{border-color:#d4af7a}.answer-area button{color:#d4af7a;cursor:pointer;background:#d4af7a26;border:1px solid #d4af7a;border-radius:4px;padding:.8rem 1.5rem;font-family:inherit}.answer-area button:hover:not(:disabled){color:#0d1117;background:#d4af7a}.answer-area button:disabled{opacity:.4}.result{text-align:center;border-radius:8px;margin:1rem 0;padding:1rem;font-size:1rem}.result.valid{color:#a5d6a7;background:#4caf5026;border:1px solid #4caf5066}.result.invalid{color:#ef9a9a;background:#f4433626;border:1px solid #f4433666}.result p{opacity:.8;margin-top:.5rem;font-size:.85rem}.reset-btn{color:#8a9ab5;cursor:pointer;background:0 0;border:1px solid #d4af7a4d;border-radius:4px;margin:1rem auto;padding:.6rem 1.5rem;font-family:inherit;transition:all .3s;display:block}.reset-btn:hover{color:#d4af7a;border-color:#d4af7a}.jielong-setup,.jielong-game{margin-top:1rem}.tips{background:#d4af7a0d;border:1px solid #d4af7a26;border-radius:8px;margin-top:2rem;padding:1rem}.tips h4{color:#d4af7a;margin-bottom:.5rem}.tips ul{color:#8a9ab5;font-size:.9rem;line-height:1.8;list-style:none}.tips li:before{content:"• ";color:#d4af7a}.history-list{background:#0000004d;border:1px solid #d4af7a26;border-radius:8px;max-height:200px;margin-bottom:1rem;padding:1rem;overflow-y:auto}.history-item{color:#e6d7b8;border-bottom:1px solid #d4af7a1a;padding:.3rem 0;font-size:.95rem}.history-item:last-child{border-bottom:none}.history-item.start{color:#d4af7a}.use-line{color:#d4af7a;cursor:pointer;background:#d4af7a26;border:1px solid #d4af7a4d;border-radius:3px;margin-left:.5rem;padding:.2rem .6rem;font-size:.8rem}.use-line:hover{color:#0d1117;background:#d4af7a}.difficulty-bar,.type-bar{justify-content:center;align-items:center;gap:.5rem;margin-bottom:1rem;display:flex}.difficulty-bar span,.type-bar span{color:#8a9ab5}.difficulty-bar button,.type-bar button{color:#8a9ab5;cursor:pointer;background:0 0;border:1px solid #d4af7a33;border-radius:4px;padding:.4rem 1rem;font-family:inherit}.difficulty-bar button.active,.difficulty-bar button:hover,.type-bar button.active,.type-bar button:hover{color:#d4af7a;background:#d4af7a26;border-color:#d4af7a}.poem-preview{text-align:center;background:#d4af7a0d;border-radius:4px;margin-bottom:1rem;padding:.8rem}.poem-preview p{color:#8a9ab5;font-size:.9rem}.clues-list{margin:1.5rem 0}.clue-item{background:#0000004d;border:1px solid #d4af7a26;border-radius:6px;gap:1rem;margin-bottom:.8rem;padding:.8rem 1rem;animation:.5s fadeIn;display:flex}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.clue-num{color:#d4af7a;white-space:nowrap;font-size:.85rem}.clue-text{color:#e6d7b8;line-height:1.6}.more-clues{color:#d4af7a;cursor:pointer;background:#d4af7a14;border:1px dashed #d4af7a4d;border-radius:4px;width:100%;margin:1rem 0;padding:.8rem;font-family:inherit;display:block}.more-clues:hover{background:#d4af7a26}.puzzles-list{gap:1rem;margin:1.5rem 0;display:grid}.puzzle-item{cursor:pointer;background:#0000004d;border:1px solid #d4af7a26;border-radius:8px;padding:1.2rem;transition:all .3s}.puzzle-item:hover{border-color:#d4af7a80}.puzzle-item.selected{background:#d4af7a1a;border-color:#d4af7a}.puzzle-title{color:#d4af7a;margin-bottom:.5rem;font-size:.9rem}.puzzle-text{color:#e6d7b8;font-size:1.05rem;line-height:1.8}.filter-bar{color:#8a9ab5;flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:1rem;font-size:.9rem;display:flex}.filter-bar button{color:#8a9ab5;cursor:pointer;background:0 0;border:1px solid #d4af7a33;border-radius:4px;padding:.3rem .8rem;font-family:inherit;font-size:.85rem;transition:all .3s}.filter-bar button.active,.filter-bar button:hover{color:#d4af7a;background:#d4af7a26;border-color:#d4af7a}.results-info{color:#8a9ab5;margin-bottom:1rem;font-size:.85rem}.results-list{gap:.8rem;display:grid}.detail-overlay{z-index:100;background:#000000d9;justify-content:center;align-items:center;padding:2rem;display:flex;position:fixed;inset:0}.detail-card{background:linear-gradient(#1a1a2e 0%,#16213e 100%);border:1px solid #d4af7a4d;border-radius:12px;width:100%;max-width:600px;max-height:80vh;padding:2rem;position:relative;overflow-y:auto}.close-btn{color:#8a9ab5;cursor:pointer;background:0 0;border:none;font-size:1.5rem;position:absolute;top:1rem;right:1rem}.detail-title{color:#d4af7a;margin-bottom:.5rem;font-size:1.8rem}.detail-author{color:#8a9ab5;margin-bottom:1.5rem}.detail-dynasty{margin-right:.5rem}.detail-content{letter-spacing:.1em;color:#e6d7b8;margin-bottom:1.5rem;font-size:1.3rem;line-height:2.2}.detail-section{border-top:1px solid #d4af7a26;margin-top:1rem;padding-top:1rem}.detail-section h4{color:#d4af7a;margin-bottom:.5rem}.detail-section p{color:#aaa;font-size:.95rem;line-height:1.8}.chat-page{flex-direction:column;height:100vh;padding-bottom:0;display:flex}.poet-list{gap:1rem;margin-top:1rem;display:grid}.poet-card{cursor:pointer;background:#00000059;border:1px solid #d4af7a33;border-radius:10px;align-items:center;gap:1rem;padding:1.2rem;transition:all .3s;display:flex}.poet-card:hover{background:#d4af7a0d;border-color:#d4af7a;transform:translate(4px)}.poet-icon{font-size:2rem}.poet-name{color:#d4af7a;margin-bottom:.2rem;font-size:1.2rem}.poet-desc{color:#8a9ab5;font-size:.85rem}.scores-bar{color:#d4af7a;background:#d4af7a14;border-radius:4px;gap:1rem;margin-bottom:.5rem;padding:.5rem 1rem;font-size:.85rem;display:flex}.chat-messages{flex-direction:column;flex:1;gap:.8rem;padding:1rem 0;display:flex;overflow-y:auto}.msg{border-radius:12px;max-width:80%;padding:.8rem 1.2rem;line-height:1.8;animation:.5s fadeIn}.msg.poet{color:#e6d7b8;background:#d4af7a26;border:1px solid #d4af7a4d;align-self:flex-start}.msg.user{color:#ccc;background:#ffffff14;align-self:flex-end}.msg.loading{opacity:.6;font-style:italic}.chat-input-bar{border-top:1px solid #d4af7a26;gap:.5rem;padding:1rem 0;display:flex}.chat-input{color:#fff;background:#ffffff14;border:1px solid #d4af7a4d;border-radius:4px;outline:none;flex:1;padding:.8rem;font-family:inherit;font-size:1rem}.chat-input:focus{border-color:#d4af7a}.send-btn{color:#d4af7a;cursor:pointer;background:#d4af7a26;border:1px solid #d4af7a;border-radius:4px;padding:.8rem 1.5rem;font-family:inherit;transition:all .3s}.send-btn:hover:not(:disabled){color:#0d1117;background:#d4af7a}.send-btn:disabled{opacity:.4;cursor:not-allowed}.feihualing-setup{text-align:center;margin-bottom:2rem}.setup-bar{justify-content:center;gap:.5rem;margin-top:1rem;display:flex}.keyword-input{text-align:center;color:#fff;background:#ffffff14;border:1px solid #d4af7a4d;border-radius:4px;outline:none;width:80px;padding:.8rem;font-family:inherit;font-size:1.2rem}.setup-bar button{color:#d4af7a;cursor:pointer;background:#d4af7a26;border:1px solid #d4af7a;border-radius:4px;padding:.8rem 1.5rem;font-family:inherit}.setup-bar button:hover:not(:disabled){color:#0d1117;background:#d4af7a}.setup-bar button:disabled{opacity:.4}.feihualing-game{margin-top:1.5rem}.round-info{text-align:center;color:#d4af7a;background:#d4af7a14;border-radius:4px;margin-bottom:1.5rem;padding:.5rem;font-size:1.1rem}.ai-lines{background:#0000004d;border:1px solid #d4af7a26;border-radius:8px;margin-bottom:1.5rem;padding:1rem}.ai-lines h4{color:#8a9ab5;margin-bottom:.8rem;font-size:.85rem;font-weight:400}.ai-line{color:#e6d7b8;margin:.5rem 0;font-size:1.05rem}.line-source{color:#8a9ab5;margin-left:.5rem;font-size:.8rem}.user-input-area{gap:.5rem;margin-bottom:1rem;display:flex}.user-line-input{color:#fff;background:#ffffff14;border:1px solid #d4af7a4d;border-radius:4px;outline:none;flex:1;padding:.8rem;font-family:inherit;font-size:1rem}.user-line-input:focus{border-color:#d4af7a}.user-input-area button{color:#d4af7a;cursor:pointer;background:#d4af7a26;border:1px solid #d4af7a;border-radius:4px;padding:.8rem 1.5rem;font-family:inherit}.user-input-area button:hover:not(:disabled){color:#0d1117;background:#d4af7a}.user-input-area button:disabled{opacity:.4}.mode-tabs{gap:.5rem;margin-bottom:1rem;display:flex}.mode-tabs button{color:#8a9ab5;cursor:pointer;background:0 0;border:1px solid #d4af7a33;border-radius:4px;padding:.5rem 1rem;font-family:inherit;transition:all .3s}.mode-tabs button.active,.mode-tabs button:hover{color:#d4af7a;background:#d4af7a26;border-color:#d4af7a}.author-filter-input{color:#fff;background:#ffffff14;border:1px solid #d4af7a4d;border-radius:4px;outline:none;flex:1;max-width:200px;padding:.4rem;font-family:inherit;font-size:.9rem}.author-filter-input:focus{border-color:#d4af7a}.poem-type{color:#8a9ab5;margin-left:.3rem}.poem-id{color:#666;margin-left:.3rem;font-size:.8rem}.pagination{flex-wrap:wrap;justify-content:center;align-items:center;gap:.8rem;margin-top:1.5rem;display:flex}.pagination button{color:#8a9ab5;cursor:pointer;background:0 0;border:1px solid #d4af7a33;border-radius:4px;padding:.4rem 1rem;font-family:inherit;transition:all .3s}.pagination button:hover:not(:disabled){color:#d4af7a;background:#d4af7a26;border-color:#d4af7a}.pagination button:disabled{opacity:.3;cursor:not-allowed}.page-info{color:#d4af7a;font-size:.9rem}.rec-list{gap:.5rem;margin-top:.5rem;display:grid}.rec-item{cursor:pointer;background:#0000004d;border:1px solid #d4af7a1a;border-radius:4px;align-items:center;gap:.6rem;padding:.5rem .8rem;font-size:.9rem;transition:all .3s;display:flex}.rec-item:hover{background:#d4af7a0d;border-color:#d4af7a80}.rec-title{color:#d4af7a;white-space:nowrap}.rec-author{color:#8a9ab5;white-space:nowrap;font-size:.85rem}.rec-preview{color:#888;text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.85rem;overflow:hidden}.query-bar{justify-content:center;margin-bottom:1rem;display:flex}.game-topbar{background:#d4af7a14;border:1px solid #d4af7a33;border-radius:8px;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;padding:.6rem 1rem;display:flex}.game-topbar .round-info{color:#d4af7a;text-align:left;flex:1;font-size:1rem}.timer{color:#e6d7b8;font-variant-numeric:tabular-nums;text-align:center;min-width:70px;font-size:1.3rem;font-weight:700}.timer-danger{color:#ef5350;animation:.5s infinite alternate timerPulse}@keyframes timerPulse{0%{opacity:1;transform:scale(1)}to{opacity:.7;transform:scale(1.1)}}.giveup-btn{color:#ef9a9a;cursor:pointer;background:#f443361a;border:1px solid #f4433666;border-radius:4px;padding:.5rem 1.2rem;font-family:inherit;font-size:.9rem;transition:all .2s}.giveup-btn:hover{color:#ef5350;background:#f4433633;border-color:#ef5350}.hint-area{align-items:center;min-height:50px;margin-bottom:1.5rem;display:flex}.hint-btn{color:#ffd54f;cursor:pointer;background:#ffc1071a;border:1px solid #ffc10766;border-radius:4px;padding:.6rem 1.5rem;font-family:inherit;font-size:.95rem;transition:all .2s}.hint-btn:hover:not(:disabled){background:#ffc10733;border-color:#ffc107}.hint-btn:disabled{opacity:.4;cursor:not-allowed}.hint-card{color:#e6d7b8;background:#ffc10714;border:1px solid #ffc10740;border-radius:8px;flex-wrap:wrap;align-items:center;gap:.5rem;width:100%;padding:.8rem 1rem;font-size:1.05rem;display:flex}.hint-label{color:#ffd54f;white-space:nowrap;font-weight:700}.result-hint{opacity:.7;margin-top:.3rem;font-size:.85rem;display:inline-block}.game-settled{margin-top:1rem}.settled-title{text-align:center;color:#d4af7a;margin-bottom:1.5rem;font-size:1.4rem}.settled-stats{justify-content:center;gap:2rem;margin-bottom:2rem;display:flex}.stat-item{background:#d4af7a14;border:1px solid #d4af7a33;border-radius:8px;flex-direction:column;align-items:center;min-width:100px;padding:1rem 1.5rem;display:flex}.stat-num{color:#d4af7a;font-size:2rem;font-weight:700}.stat-label{color:#8a9ab5;margin-top:.3rem;font-size:.85rem}.settled-detail{background:#0000004d;border:1px solid #d4af7a26;border-radius:8px;margin-bottom:1.5rem;padding:1rem}.settled-detail h4{color:#d4af7a;margin-bottom:.8rem;font-size:1rem}.record-item{border-bottom:1px solid #d4af7a1a;align-items:center;gap:.8rem;padding:.5rem 0;font-size:.95rem;display:flex}.record-item:last-child{border-bottom:none}.record-round{color:#8a9ab5;min-width:50px;font-size:.85rem}.record-status{text-align:center;min-width:24px;font-size:1.1rem}.record-content{color:#e6d7b8;flex:1}.record-detail{color:#8a9ab5;font-size:.85rem}.record-item.timeout .record-content,.record-item.giveup .record-content{color:#ef9a9a}.settled-actions{justify-content:center;gap:1rem;display:flex}.restart-btn{color:#d4af7a;cursor:pointer;background:#d4af7a26;border:1px solid #d4af7a;border-radius:4px;padding:.7rem 2rem;font-family:inherit;font-size:1rem;transition:all .2s}.restart-btn:hover{color:#0d1117;background:#d4af7a}@media (width<=600px){.game-topbar{flex-wrap:wrap;gap:.5rem}.game-topbar .round-info{text-align:center;width:100%;font-size:.85rem}.settled-stats{gap:.8rem}.stat-item{min-width:80px;padding:.7rem}.stat-num{font-size:1.5rem}.settled-actions{flex-direction:column}}.entry-narration{z-index:1;background:#00000073;border:1px solid #d4af7a40;border-radius:12px;max-width:700px;margin:1rem auto;padding:2rem;position:relative}.entry-scene{text-align:center;color:#bfa07a;letter-spacing:.1em;background:#d4af7a14;border-left:3px solid #d4af7a;border-right:3px solid #d4af7a;margin-bottom:1.5rem;padding:.8rem 1rem;font-size:.95rem}.entry-text{color:#e6d7b8;text-indent:2em;letter-spacing:.05em;font-size:1.05rem;line-height:2.2}.reveal-btn{color:#0d1117;letter-spacing:.2em;cursor:pointer;background:linear-gradient(135deg,#d4af7a 0%,#c19a6b 100%);border:none;border-radius:30px;padding:.9rem 2.2rem;font-family:inherit;font-size:1rem;font-weight:700;transition:all .3s;box-shadow:0 4px 15px #d4af7a4d}.reveal-btn:hover{transform:translateY(-2px);box-shadow:0 6px 22px #d4af7a73}.chat-rubric{background:#0000004d;border:1px solid #d4af7a33;border-radius:8px;margin-bottom:.8rem;padding:.7rem 1rem}.rubric-head{color:#8a9ab5;letter-spacing:.05em;justify-content:space-between;align-items:center;margin-bottom:.6rem;font-size:.85rem;display:flex}.rubric-head b{color:#d4af7a;margin:0 .3rem;font-size:1.2rem;transition:all .3s}.rubric-head b.pass{color:#81c784;text-shadow:0 0 10px #81c78480}.rubric-dims{gap:.4rem;display:grid}.dim-row{grid-template-columns:110px 1fr 45px;align-items:center;gap:.6rem;font-size:.8rem;display:grid}.dim-name{color:#c9b693;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.dim-bar{background:#ffffff0f;border-radius:5px;height:10px;overflow:hidden}.dim-fill{background:linear-gradient(90deg,#8a6d3b 0%,#d4af7a 60%,#f0d9ad 100%);border-radius:5px;height:100%;transition:width .6s}.dim-val{color:#e6d7b8;text-align:right;font-variant-numeric:tabular-nums}.gift-popup{color:#f0d9ad;z-index:200;text-align:center;background:linear-gradient(135deg,#2a1a3a 0%,#3a2a4a 100%);border:1px solid #d4af7a;border-radius:10px;max-width:80%;padding:1rem 1.8rem;font-size:.95rem;line-height:1.6;animation:.5s giftIn;position:fixed;top:25%;left:50%;transform:translate(-50%);box-shadow:0 0 30px #d4af7a66}@keyframes giftIn{0%{opacity:0;transform:translate(-50%)scale(.8)}to{opacity:1;transform:translate(-50%)scale(1)}}.msg.gift{background:linear-gradient(135deg,#d4af7a33,#d4af7a14);border-color:#d4af7a99}.gift-mark{color:#d4af7a;letter-spacing:.2em;opacity:.9;margin-top:.4rem;font-size:.75rem}.reveal-page{min-height:100vh;position:relative;overflow-y:auto}.reveal-bg{z-index:-1;background:radial-gradient(at 50% 40%,#d4af7a2e 0%,#000000e6 70%);position:absolute;inset:0}.reveal-card{z-index:10;background:linear-gradient(#141422 0%,#1a1a2e 100%);border:1px solid #d4af7a66;border-radius:14px;max-width:680px;margin:1.5rem auto;padding:2.5rem 2.5rem 2rem;animation:1s revealFadeIn;position:relative;box-shadow:0 0 60px #d4af7a1f}@keyframes revealFadeIn{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.reveal-result{text-align:center;letter-spacing:.3em;border-radius:10px;margin-bottom:1.8rem;padding:1rem;font-size:1.2rem}.reveal-result.pass{color:#f0d9ad;background:linear-gradient(90deg,#d4af7a26,#81c78426);border:1px solid #d4af7a}.reveal-result.fail{color:#8a9ab5;background:#8a9ab514;border:1px solid #8a9ab54d}.reveal-sub{letter-spacing:.15em;opacity:.8;margin-top:.5rem;font-size:.85rem}.reveal-title{text-align:center;letter-spacing:.4em;color:#d4af7a;margin-bottom:.4rem;font-size:2.2rem;animation:1.2s revealTitle}@keyframes revealTitle{0%{opacity:0;letter-spacing:1em}to{opacity:1;letter-spacing:.4em}}.reveal-author{text-align:center;color:#8a9ab5;letter-spacing:.15em;margin-bottom:2rem;font-size:.95rem}.reveal-content{text-align:center;background:#d4af7a0a;border-top:1px solid #d4af7a33;border-bottom:1px solid #d4af7a33;margin:0 0 2rem;padding:1.5rem 1rem}.reveal-line{color:#e6d7b8;letter-spacing:.15em;opacity:0;font-size:1.35rem;line-height:2.4;animation:1s forwards lineIn}.reveal-line.line-0{animation-delay:.4s}.reveal-line.line-1{animation-delay:.8s}.reveal-line.line-2{animation-delay:1.2s}.reveal-line.line-3{animation-delay:1.6s}.reveal-line.line-4{animation-delay:2s}.reveal-line.line-5{animation-delay:2.4s}.reveal-line.line-6{animation-delay:2.8s}.reveal-line.line-7{animation-delay:3.2s}@keyframes lineIn{0%{opacity:0;color:#555;transform:translate(-20px)}to{opacity:1;color:#e6d7b8;transform:translate(0)}}.reveal-notes{background:#0000004d;border-left:3px solid #d4af7a;border-radius:4px;margin-top:1rem;padding:.9rem 1.1rem}.reveal-notes h4{color:#d4af7a;letter-spacing:.1em;margin-bottom:.4rem;font-size:.9rem}.reveal-notes p{color:#b5a88c;font-size:.92rem;line-height:1.8}.reveal-actions{flex-wrap:wrap;justify-content:center;gap:.8rem;margin-top:2rem;display:flex}@media (width<=600px){.dim-row{grid-template-columns:90px 1fr 38px;font-size:.75rem}.reveal-card{margin:1rem .5rem;padding:1.5rem 1rem}.reveal-title{font-size:1.6rem}.reveal-line{font-size:1.1rem}.entry-narration{padding:1.2rem}}.reveal-page .reveal-card{animation:.8s cubic-bezier(.22,1,.36,1) both revealCardRise}@keyframes revealCardRise{0%{opacity:0;transform:translateY(40px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.reveal-page .reveal-title{animation:1.2s ease-out .4s both revealTitleGlow}@keyframes revealTitleGlow{0%{opacity:0;filter:blur(8px);text-shadow:none;transform:scale(.8)}60%{opacity:1;filter:blur();text-shadow:0 0 20px #d4af3780,0 0 40px #d4af3733}to{opacity:1;text-shadow:0 0 8px #d4af3726;transform:scale(1)}}.reveal-page .reveal-author{animation:.6s ease-out .8s both fadeInDown}.reveal-page .reveal-line{animation:.5s ease-out both revealLineFade}.reveal-page .reveal-line.line-0{animation-delay:1s}.reveal-page .reveal-line.line-1{animation-delay:1.2s}.reveal-page .reveal-line.line-2{animation-delay:1.4s}.reveal-page .reveal-line.line-3{animation-delay:1.6s}.reveal-page .reveal-line.line-4{animation-delay:1.8s}@keyframes revealLineFade{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.reveal-page .reveal-notes{animation:.5s ease-out 2s both fadeInUp}.reveal-page .reveal-notes:nth-of-type(2){animation-delay:2.2s}.reveal-page .reveal-notes:nth-of-type(3){animation-delay:2.4s}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.reveal-page .reveal-actions{animation:.5s ease-out 2.6s both fadeInUp}.reveal-page .bookmark-preview{animation:.5s ease-out 2.4s both fadeInUp}.scene-placeholder{background:linear-gradient(135deg,#0a0e1a99 0%,#141c2d66 50%,#0a0e1a99 100%);border:1px solid #d4af3726;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;max-width:600px;height:160px;margin:0 auto 1.5rem;display:flex;position:relative;overflow:hidden}.scene-placeholder:before{content:"";background:radial-gradient(at 70% 30%,#f5f0e80f 0%,#0000 50%),radial-gradient(at 30% 70%,#d4af370a 0%,#0000 50%);position:absolute;inset:0}.scene-placeholder-icon{filter:drop-shadow(0 0 12px #f5f0e84d);font-size:2.5rem;animation:6s ease-in-out infinite sceneIconFloat}.scene-placeholder-text{color:#c8d0e066;letter-spacing:.3rem;font-size:.85rem}.scene-placeholder-small{height:100px;margin-bottom:1rem}.scene-placeholder-small .scene-placeholder-icon{font-size:1.8rem}@keyframes sceneIconFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.scene-img-wrap{border:1px solid #d4af3726;border-radius:12px;max-width:600px;margin:0 auto 1.5rem;overflow:hidden;box-shadow:0 4px 24px #0006}.scene-img-wrap-small{max-width:600px;height:140px;margin-bottom:1rem}.scene-img{object-fit:cover;width:100%;display:block}.scene-img-wrap-small .scene-img{object-position:center;height:140px}.scene-img-wrap .scene-img{object-position:center;max-height:220px}.poet-portrait-wrap{justify-content:center;margin-bottom:1rem;display:flex}.poet-portrait{object-fit:cover;border:1px solid #d4af374d;border-radius:8px;width:200px;height:auto;max-height:280px;display:block;box-shadow:0 4px 20px #00000080}.poet-portrait-fallback{color:#c8d0e0;padding:1rem;font-size:1.2rem;display:none}.bookmark-card-mini{border-radius:8px;position:relative;overflow:hidden;box-shadow:0 4px 20px #0000004d}.bookmark-art{border-radius:8px;width:100%;display:block}.bookmark-text-overlay{text-align:center;background:linear-gradient(#0000 0%,#0a0e1ae6 100%);padding:1rem;position:absolute;bottom:0;left:0;right:0}.bookmark-text-overlay .bookmark-poem-title{color:#d4af37;margin-bottom:.5rem;font-size:1rem}.bookmark-text-overlay .bookmark-gift-text{color:#c8d0e0;font-size:.8rem;font-style:italic;line-height:1.6}.reveal-ink-transition{z-index:100;pointer-events:none;background:radial-gradient(#f5f0e84d 0%,#d4af371a 30%,#0000 70%);animation:1.5s ease-out forwards inkSweep;position:fixed;inset:0}@keyframes inkSweep{0%{opacity:0;transform:scale(.3)}30%{opacity:1;transform:scale(1)}60%{opacity:.8;filter:blur(4px);transform:scale(1.2)}to{opacity:0;filter:blur(12px);transform:scale(1.5)}}.reveal-scroll-wrap{max-width:600px;margin:2rem auto;padding:0 20px;animation:.8s cubic-bezier(.22,1,.36,1) both scrollUnroll;position:relative}@keyframes scrollUnroll{0%{clip-path:inset(0 48%);opacity:0}to{clip-path:inset(0);opacity:1}}.reveal-scroll-roller{z-index:5;background:linear-gradient(90deg,#3a2a1a,#5c3a1a,#3a2a1a);border-radius:8px;width:16px;animation:.8s cubic-bezier(.22,1,.36,1) both rollerSlide;position:absolute;top:0;bottom:0;box-shadow:0 0 8px #0006,inset 0 0 4px #d4af3733}.reveal-scroll-roller.left{animation-name:rollerLeft;left:0}.reveal-scroll-roller.right{animation-name:rollerRight;right:0}@keyframes rollerLeft{0%{left:48%}to{left:0}}@keyframes rollerRight{0%{right:48%}to{right:0}}.reveal-scroll-wrap .reveal-card{background:linear-gradient(#0f1420fa,#0a0e1afa);border:1px solid #d4af3733;border-radius:4px;animation:.8s cubic-bezier(.22,1,.36,1) .3s both revealCardRise}.narrate-page{background:linear-gradient(#0a0e1a 0%,#111827 100%);min-height:100vh;position:relative;overflow:hidden}.narrate-page:before{content:"";z-index:0;background:radial-gradient(circle at 35% 35%,#f5f0e8 0%,#e8dcc8 30%,#e8dcc826 60%,#0000 80%);border-radius:50%;width:100px;height:100px;animation:8s ease-in-out infinite moonFloat;position:absolute;top:8%;right:12%;box-shadow:0 0 60px 20px #f5f0e81f,0 0 120px 40px #d4af370f}.narrate-page:after{content:"";z-index:0;background-image:radial-gradient(1.5px 1.5px at 15% 20%,#ffffffb3,#0000),radial-gradient(1px 1px at 35% 15%,#ffffff80,#0000),radial-gradient(1.5px 1.5px at 55% 25%,#fff9,#0000),radial-gradient(1px 1px at 75% 12%,#fff6,#0000),radial-gradient(1.5px 1.5px at 88% 28%,#ffffff80,#0000),radial-gradient(1px 1px at 25% 35%,#ffffff4d,#0000),radial-gradient(1px 1px at 68% 40%,#ffffff59,#0000),radial-gradient(1.5px 1.5px at 92% 18%,#fff6,#0000);animation:4s ease-in-out infinite alternate starsTwinkle;position:absolute;inset:0}@keyframes moonFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes starsTwinkle{0%{opacity:.5}to{opacity:1}}.narrate-container{z-index:1;max-width:600px;margin:0 auto;padding:2rem 1.5rem;position:relative}.narrate-page-indicator{justify-content:center;gap:.5rem;margin-bottom:2.5rem;display:flex}.narrate-dot{background:#fff3;border-radius:50%;width:8px;height:8px;transition:all .3s}.narrate-dot.active{background:#d4af37;border-radius:4px;width:24px}.narrate-text{min-height:200px;margin-bottom:2rem}.narrate-text p{color:#c8d0e0;text-align:justify;margin:0 0 .5rem;font-size:1.05rem;line-height:2}.narrate-text p.narrate-blank{height:.8rem}.narrate-actions{text-align:center}.scenario-page{background:linear-gradient(#0a0e1a 0%,#0f1520 100%);min-height:100vh}.scenario-container{max-width:600px;margin:0 auto;padding:1.5rem}.scenario-loading{text-align:center;color:#6a7a95;padding:3rem 0;font-size:1.1rem;animation:1.5s infinite pulse}.scenario-scene{color:#c8d0e0;background:#ffffff0a;border:1px solid #ffffff14;border-radius:12px;margin-bottom:1.5rem;padding:1.5rem;font-size:1rem;line-height:1.9}.scenario-options{flex-direction:column;gap:.75rem;display:flex}.scenario-option{color:#d0d8e8;text-align:left;cursor:pointer;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:10px;padding:1rem 1.25rem;font-size:.95rem;transition:all .2s}.scenario-option:hover{color:#f0f0f0;background:#d4af371f;border-color:#d4af374d}.scenario-history{border-top:1px solid #ffffff14;margin-top:2rem;padding-top:1rem}.history-choice{color:#5a6a85;padding:.25rem 0;font-size:.82rem}.qa-page{background:linear-gradient(#0a0e1a 0%,#0f1520 100%);flex-direction:column;min-height:100vh;display:flex}.qa-container{flex:1;width:100%;max-width:600px;margin:0 auto;padding:1.5rem;overflow-y:auto}.qa-loading{text-align:center;color:#6a7a95;padding:2rem;animation:1.5s infinite pulse}.qa-reply{color:#c8d0e0;background:#ffffff0a;border-radius:12px 12px 12px 4px;margin-bottom:1rem;padding:1rem 1.25rem;line-height:1.8}.qa-question{color:#e8d090;background:#d4af3714;border:1px solid #d4af3726;border-radius:12px;margin-bottom:1.5rem;padding:1.25rem;font-size:1.05rem;line-height:1.8}.qa-history{margin-top:1.5rem}.history-qa{margin-bottom:.75rem}.history-qa-q{color:#5a6a85;margin-bottom:.25rem;font-size:.8rem}.history-qa-a{color:#8a9ab5;background:#ffffff08;border-radius:4px;padding:.5rem .75rem;font-size:.85rem}.grade-page{background:linear-gradient(#0a0e1a 0%,#0f1520 100%);min-height:100vh}.grade-container{text-align:center;max-width:500px;margin:0 auto;padding:2rem 1.5rem}.grade-loading{color:#6a7a95;padding:3rem 0;font-size:1.05rem;animation:1.5s infinite pulse}.grade-result{border-radius:16px;margin-bottom:2rem;padding:2rem 1rem}.grade-result.unlock{background:linear-gradient(135deg,#d4af371f,#d4af370a);border:1px solid #d4af3740}.grade-result.nolock{background:#ffffff08;border:1px solid #ffffff14}.grade-name{color:#d4af37;letter-spacing:.3em;margin-bottom:.5rem;font-size:2.2rem;font-weight:700}.grade-result.nolock .grade-name{color:#8a9ab5}.grade-score{color:#c8d0e0;margin-bottom:.5rem;font-size:1rem}.grade-desc{color:#8a9ab5;font-size:.9rem}.grade-comment{text-align:left;background:#ffffff0a;border-radius:12px;margin-bottom:1.5rem;padding:1.5rem}.grade-comment-label{color:#8a9ab5;margin:0 0 .5rem;font-size:.85rem}.grade-comment-text{color:#c8d0e0;margin:0;font-size:.98rem;line-height:1.9}.grade-gift{background:linear-gradient(135deg,#d4af371a,#d4af3708);border:1px solid #d4af3733;border-radius:12px;margin-bottom:2rem;padding:1.5rem}.grade-gift-label{color:#d4af37;margin:0 0 .5rem;font-size:.9rem}.grade-gift-text{color:#e8d090;margin:0;font-size:1rem;font-style:italic;line-height:1.9}.grade-actions{margin-top:1rem}.bookmark-preview{text-align:center;margin:1.5rem 0}.bookmark-label{color:#d4af37;margin:0 0 .75rem;font-size:.85rem}.bookmark-card-mini{background:linear-gradient(135deg,#d4af3714,#d4af3705);border:1px solid #d4af3733;border-radius:8px;width:200px;padding:1.25rem 1rem;display:inline-block;position:relative}.bookmark-card-mini .bookmark-front,.bookmark-card-mini .bookmark-back{backface-visibility:visible;width:auto;height:auto;position:static!important;transform:none!important}.bookmark-card-mini .bookmark-back{display:none}.bookmark-card-mini .bookmark-front{display:block}.bookmark-front .bookmark-poem-title{color:#e8d090;margin-bottom:.5rem;font-size:1rem}.bookmark-front .bookmark-poem-line{color:#c8d0e0;margin-bottom:.5rem;font-size:.85rem;line-height:1.6}.bookmark-front .bookmark-poem-author{color:#8a9ab5;font-size:.75rem}.bookmark-back .bookmark-gift{color:#e8d090;font-size:.85rem;font-style:italic;line-height:1.7}.bookmark-page{background:linear-gradient(#0a0e1a 0%,#111827 100%);min-height:100vh}.bookmark-empty{text-align:center;padding:4rem 2rem}.bookmark-empty-icon{opacity:.5;margin-bottom:1rem;font-size:3rem}.bookmark-empty p{color:#8a9ab5;margin:.5rem 0}.bookmark-empty-hint{opacity:.7;font-size:.85rem!important}.bookmark-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1.5rem;max-width:900px;margin:0 auto;padding:1.5rem;display:grid}.bookmark-card{perspective:1000px;cursor:pointer;height:320px;position:relative}.bookmark-card-inner{width:100%;height:100%;transform-style:preserve-3d;transition:transform .6s;position:relative}.bookmark-card.flipped .bookmark-card-inner{transform:rotateY(180deg)}.bookmark-front,.bookmark-back{backface-visibility:hidden;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;padding:1.5rem;display:flex;position:absolute}.bookmark-front{background:linear-gradient(135deg,#1a1f2e,#111827);border:1px solid #d4af3733}.bookmark-back{background:linear-gradient(135deg,#1a1a2e,#0f0f1a);border:1px solid #d4af3726;transform:rotateY(180deg)}.bookmark-grade-tag{color:#d4af37;background:#d4af371a;border-radius:4px;padding:.15rem .5rem;font-size:.7rem;position:absolute;top:.75rem;right:.75rem}.bookmark-poem-title{color:#e8d090;margin-bottom:.5rem;font-size:1.15rem;font-weight:600}.bookmark-poem-dynasty{color:#8a9ab5;margin-bottom:1rem;font-size:.8rem}.bookmark-poem-line{color:#c8d0e0;text-align:center;margin-bottom:1rem;font-size:.95rem;line-height:1.8}.bookmark-poem-author{color:#8a9ab5;font-size:.78rem}.bookmark-gift-label{color:#d4af37;margin-bottom:.75rem;font-size:.8rem}.bookmark-gift-text{color:#e8d090;text-align:center;font-size:.92rem;font-style:italic;line-height:1.8}.bookmark-flip-hint{color:#4a5a75;font-size:.7rem;position:absolute;bottom:.75rem}.bookmark-remove{color:#fff;cursor:pointer;z-index:10;opacity:0;background:#e74c3c;border:none;border-radius:50%;width:24px;height:24px;font-size:14px;transition:opacity .2s;position:absolute;top:-8px;right:-8px}.bookmark-card:hover .bookmark-remove{opacity:1}@keyframes pulse{0%,to{opacity:.5}50%{opacity:1}}.history-page{background:linear-gradient(#0a0e1a 0%,#111827 100%);min-height:100vh}.history-container{max-width:600px;margin:0 auto;padding:1.5rem}.history-card{cursor:pointer;background:#ffffff0a;border:1px solid #ffffff14;border-radius:10px;margin-bottom:.8rem;padding:1rem 1.25rem;transition:all .2s}.history-card:hover{background:#ffffff12;border-color:#d4af7a4d}.history-card.expanded{border-color:#d4af7a80}.history-card-header{justify-content:space-between;align-items:center;display:flex}.history-card-left{align-items:center;gap:1rem;display:flex}.history-attempt{color:#d4af7a;font-size:.9rem;font-weight:700}.history-grade{border-radius:4px;padding:.2rem .6rem;font-size:.8rem}.history-grade.知音{color:#f0d9ad;background:#d4af7a33}.history-grade.识者{color:#a5d6a7;background:#81c78426}.history-grade.萍水{color:#8a9ab5;background:#8a9ab51a}.history-grade.陌路{color:#ef9a9a;background:#ef9a9a1a}.history-score{color:#c8d0e0;font-size:.85rem}.history-duration{color:#8a9ab5;font-size:.8rem}.history-detail{border-top:1px solid #ffffff14;margin-top:.8rem;padding-top:.8rem}.history-detail-label{color:#d4af7a;margin-bottom:.3rem;font-size:.85rem}.history-detail-text{color:#b5a88c;margin-bottom:.6rem;font-size:.9rem;line-height:1.7}.history-empty{text-align:center;color:#8a9ab5;padding:3rem 1rem}.history-btn{color:#8a9ab5;cursor:pointer;white-space:nowrap;background:#ffffff0f;border:1px solid #ffffff1f;border-radius:6px;padding:.3rem .6rem;font-size:.75rem;transition:all .2s}.history-btn:hover{color:#d4af7a;background:#d4af7a1a}.poet-card{align-items:center;gap:.8rem;display:flex}.poet-info{flex:1}.reveal-notes p{margin:.2rem 0}.bookmark-star{color:gold;text-shadow:0 0 8px #ffd70080;margin-left:.3rem;font-size:1.1rem}.history-guess-badge{color:gold;background:linear-gradient(135deg,#ffd70026,#ffc10714);border:1px solid #ffd70066;border-radius:999px;margin-left:.6rem;padding:.15rem .5rem;font-size:.75rem;display:inline-block}.freechat-page{background:linear-gradient(#0a0e1a 0%,#0f1520 100%);min-height:100vh}.freechat-page .page-title{color:#e8d090;letter-spacing:2px;margin-bottom:.5rem;font-size:1.4rem}.freechat-intro{text-align:center;max-width:600px;margin:0 auto;padding:1rem 1.5rem 0}.freechat-intro-title{color:#d4af37;letter-spacing:4px;margin:0 0 .5rem;font-size:1.3rem}.freechat-intro-text{color:#8a9ab5;margin:0 0 .8rem;font-size:.9rem;line-height:1.8}.freechat-counter{color:#d4af7a;background:#d4af371a;border:1px solid #d4af3733;border-radius:20px;margin-bottom:.5rem;padding:.2rem .8rem;font-size:.82rem;display:inline-block}.freechat-page .chat-container{background:#ffffff08;border:1px solid #ffffff0f;border-radius:12px;flex-direction:column;gap:.8rem;max-width:600px;height:380px;margin:1rem auto;padding:1.2rem;display:flex;overflow-y:auto}.freechat-page .chat-container::-webkit-scrollbar{width:5px}.freechat-page .chat-container::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:3px}.chat-empty-hint{text-align:center;color:#4a5a75;padding:2rem 1rem;font-size:.88rem;line-height:1.8}.chat-msg{white-space:pre-wrap;word-break:break-word;border-radius:12px;max-width:80%;padding:.8rem 1.1rem;font-size:.93rem;line-height:1.8;animation:.35s ease-out fadeInMsg}.chat-msg p{margin:0 0 .3rem}.chat-msg p:last-child{margin-bottom:0}@keyframes fadeInMsg{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.chat-msg.user{color:#f0e0b0;background:linear-gradient(135deg,#d4af3733,#b8982d1f);border:1px solid #d4af3740;border-bottom-right-radius:3px;align-self:flex-end}.chat-msg.poet{color:#c8d0e0;background:#ffffff0d;border:1px solid #ffffff14;border-bottom-left-radius:3px;align-self:flex-start}.freechat-page .chat-input-bar{width:100%;max-width:600px;margin:0 auto}.freechat-page .chat-input{color:#e0e0e0;background:#ffffff14;border:1px solid #d4af7a40;border-radius:8px}.freechat-page .chat-input:focus{border-color:#d4af3780;box-shadow:0 0 0 3px #d4af371a}.freechat-page .chat-input::placeholder{color:#4a5a75}.poet-says-box{background:linear-gradient(135deg,#d4af3714,#d4af3705);border:1px solid #d4af3733;border-radius:14px;margin:1.5rem 0 2rem;padding:1.5rem 1.8rem;position:relative}.poet-says-label{color:#d4af7a;letter-spacing:2px;margin-bottom:.8rem;font-size:.85rem}.poet-says-text{color:#c8d0e0;white-space:pre-wrap;font-size:1rem;font-style:italic;line-height:2}.poet-says-text p{margin:0 0 .3rem}.poet-says-text p:last-child{margin-bottom:0}.scenario-prompt{color:#8a9ab5;margin:0 0 .5rem;font-size:.88rem}.guess-page .guess-card{background:#fffdf8;border:1px solid #d4af7a40;border-radius:18px;padding:2.5rem 2rem;position:relative;overflow:hidden;box-shadow:0 10px 30px #8a6d4a1a}.guess-page .guess-card:before{content:"";pointer-events:none;background:radial-gradient(circle,#d4af3724 0%,#0000 70%);width:220px;height:220px;position:absolute;top:-80px;right:-80px}.guess-page .guess-title{text-align:center;color:#5c3a21;letter-spacing:4px;margin-bottom:.5rem;font-size:1.8rem;position:relative}.guess-page .guess-subtitle{text-align:center;color:#8a6d4a;margin-bottom:2.5rem;font-size:.95rem;position:relative}.guess-page .guess-field{gap:.8rem;max-width:480px;margin:0 auto 1.5rem;display:flex;position:relative}.guess-page .guess-input{color:#3d2e1f;text-align:center;letter-spacing:3px;background:#fffdf8e6;border:1.5px solid #8a6d4a40;border-radius:12px;outline:none;flex:1;padding:.9rem 1.1rem;font-family:inherit;font-size:1.05rem;transition:border-color .2s,box-shadow .2s}.guess-page .guess-input:focus{border-color:#d4af37b3;box-shadow:0 0 0 4px #d4af371f}.guess-page .guess-input:disabled{opacity:.6}.guess-page .guess-btn{color:#fff;cursor:pointer;letter-spacing:2px;background:linear-gradient(135deg,#d4af37,#b8982d);border:none;border-radius:12px;padding:.9rem 1.6rem;font-weight:600;transition:transform .15s,box-shadow .15s}.guess-page .guess-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 7px 18px #b8982d4d}.guess-page .guess-btn:disabled{opacity:.5;cursor:not-allowed}.guess-page .guess-skip{color:#8a6d4a;cursor:pointer;letter-spacing:2px;background:0 0;border:1px dashed #8a6d4a59;border-radius:12px;width:100%;max-width:480px;margin:0 auto;padding:.75rem;font-family:inherit;font-size:.95rem;transition:background .2s;display:block}.guess-page .guess-skip:hover{background:#8a6d4a0f}.guess-page .guess-skip:disabled{opacity:.5;cursor:not-allowed}.guess-page .guess-result{text-align:center;border-radius:12px;margin-top:2rem;padding:1.2rem 1.5rem;font-size:1rem;animation:.4s ease-out fadeInMsg;position:relative}.guess-result.success{color:#2e7d32;background:linear-gradient(135deg,#4caf501f,#4caf500a);border:1px solid #4caf504d}.guess-result.fail{color:#b71c1c;background:linear-gradient(135deg,#f443361a,#f443360a);border:1px solid #f4433640}.guess-result.skipped{color:#6a4f33;background:#8a6d4a14;border:1px solid #8a6d4a33}.guess-page .reveal-btn{color:#f5ebd8;cursor:pointer;letter-spacing:3px;background:linear-gradient(135deg,#5c3a21,#4a2e1a);border:none;border-radius:12px;width:200px;margin-top:1.5rem;margin-left:auto;margin-right:auto;padding:.9rem 1.3rem;font-weight:600;display:block;position:relative}.guess-page .reveal-btn:hover{transform:translateY(-1px);box-shadow:0 8px 22px #5c3a214d}.bookmark-item .bm-title-row .star-mark{color:gold;text-shadow:0 0 8px #ffd70080,0 1px 3px #b4820a4d;justify-content:center;align-items:center;margin-left:6px;font-size:1.05rem;animation:2s ease-in-out infinite starGlow;display:inline-flex}@keyframes starGlow{0%,to{filter:brightness();transform:scale(1)}50%{filter:brightness(1.2);transform:scale(1.12)}}.history-item .guess-tag{color:#a97e0e;letter-spacing:1px;background:linear-gradient(135deg,#ffd7002e,#ffd7000f);border:1px solid #ffd70059;border-radius:12px;margin-top:.4rem;padding:.15rem .6rem;font-size:.78rem;display:inline-block}.grade-detail{text-align:left;background:#d4af7a0d;border:1px solid #d4af7a33;border-radius:6px;margin:1rem 0;padding:1rem 1.2rem}.grade-detail-label{color:#d4af7a;letter-spacing:.15em;text-align:center;border-bottom:1px dashed #d4af7a4d;margin-bottom:.8rem;padding-bottom:.5rem;font-size:1rem}.grade-detail-section{background:#0003;border-radius:4px;margin-bottom:.8rem;padding:.5rem .8rem}.grade-detail-title{color:#e0c896;margin-bottom:.4rem;font-size:.95rem}.grade-dim-list{margin:.3rem 0 0;padding-left:1rem;list-style:none}.grade-dim-list li{color:#a8b3c7;border-left:2px solid #d4af7a33;margin-bottom:.2rem;padding-left:.5rem;font-size:.85rem;line-height:1.7}.grade-detail-formula{color:#d4af7a;text-align:center;border-top:1px dashed #d4af7a4d;margin-top:.8rem;padding-top:.6rem;font-size:.9rem;font-style:italic}.bookmark-meta{color:#8a9ab5;text-align:center;margin-bottom:.4rem;font-size:.72rem}
