/* Scoped to .ls, including nested collection and dialog views. */
.ls{--ls-green:#285746;--ls-muted:#747e78;--ls-soft:#e9f0eb;--ls-serif:"Songti SC","Noto Serif CJK SC","STSong",serif;margin:0 -8px;color:#263e34;font-size:14px;overflow-wrap:anywhere}
.ls .ls-header{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:8px;padding:calc(22px + env(safe-area-inset-top)) 0 22px;position:relative;isolation:isolate;text-align:center}
.ls .ls-header:before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 12% 70%,#d8e5df85,transparent 48%),radial-gradient(ellipse at 94% 15%,#c5d8c47d,transparent 40%);pointer-events:none}
.ls .ls-header h1{font:600 31px/1.5 var(--ls-serif);letter-spacing:5px}.ls .ls-header p{font-size:10px;letter-spacing:2px;color:#718677;margin-top:1px}.ls .ls-header-space{width:44px}.ls .ls-header .icon-button{color:var(--ls-green)}
.ls .ls-tabs{display:grid;grid-template-columns:1fr 1fr;padding:4px;background:#eaf0ebc7;border-radius:28px;margin-bottom:14px;gap:5px}.ls .ls-tabs a{text-align:center;min-height:45px;display:grid;place-items:center;border-radius:23px;font:500 20px/1.6 var(--ls-serif);letter-spacing:3px;color:#65726b;position:relative}.ls .ls-tabs a[aria-current]{background:#dbe9df;color:#1f4d3b;font-weight:650}.ls .ls-tabs a[aria-current]:after{content:"";position:absolute;width:25px;height:3px;background:var(--ls-green);bottom:1px;border-radius:3px}
.ls .ls-filter-row{display:flex;align-items:center;justify-content:space-between;gap:3px;margin-bottom:12px}.ls .ls-filters{display:flex;gap:3px;min-width:0}.ls .ls-filters a{display:flex;align-items:center;justify-content:center;min-height:44px;padding:0 11px;font-size:13px;white-space:nowrap;border-radius:25px;color:#646f68}.ls .ls-filters a[aria-current]{background:#dcebdd;color:#285442;font-weight:650}.ls .ls-history{display:flex;align-items:center;gap:4px;font-size:12px;min-height:44px;white-space:nowrap;color:#6f7b73;padding:0 4px}.ls .ls-history .icon{width:16px;height:16px}.ls .ls-history.is-on{color:var(--ls-green);font-weight:650}
.ls .ls-banner{display:flex;align-items:center;gap:10px;padding:14px 12px;background:linear-gradient(100deg,#e7efe9,#edf2e9);border:1px solid #e2eae1;border-radius:15px;margin-bottom:11px}.ls .ls-banner>span{flex:1;min-width:0}.ls .ls-banner>svg:first-child{width:25px;height:25px;color:#648570}.ls .ls-banner>svg:last-child{width:17px;height:17px;color:#8a9e8e}.ls .ls-banner strong{font:500 15px/1.7 var(--ls-serif);color:#324e3e;display:block}.ls .ls-banner small{display:block;font-size:12px;color:#657366;margin-top:2px}
.ls .ls-list-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#657268;font-size:12px;min-height:34px;margin:4px 2px 5px}.ls .ls-list-meta h2{font-size:17px;color:var(--ls-green)}.ls .ls-list-meta>a{color:var(--ls-green);min-height:44px;display:flex;align-items:center}.ls .ls-list-meta strong{color:#3b5946;font-size:15px}
.ls .ls-letter{background:#fff;border:1px solid #e8ece3;border-radius:19px;padding:17px 15px 7px;margin-bottom:13px;position:relative;box-shadow:0 5px 20px #2b4e3410}.ls .ls-featured{padding-top:30px}.ls .ls-ribbon{position:absolute;left:-1px;top:-1px;color:#fffaf0;background:#b99a62;border-radius:18px 0 12px 0;padding:3px 12px;font-size:10px;letter-spacing:1px}
.ls .ls-author-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.ls .ls-author{display:flex;align-items:center;gap:9px;min-width:0;flex:1}.ls .ls-author>span:last-child{min-width:0}.ls .ls-avatar{width:40px;height:40px;border-radius:50%;overflow:hidden;flex-shrink:0;background:#dce6d8}.ls .ls-avatar svg{width:100%;height:100%}.ls .ls-author strong{display:block;font-size:14px;font-weight:650;line-height:1.5}.ls .ls-author small{display:block;font-size:12px;color:#657068;margin-top:3px;line-height:1.5}
.ls .ls-follow{display:inline-flex;align-items:center;justify-content:center;gap:3px;min-height:44px;min-width:73px;padding:5px 10px;border:1px solid #a9c3ac;border-radius:25px;font-size:12px;color:var(--ls-green);background:#f8fbf7;flex-shrink:0}.ls .ls-follow .icon{width:15px;height:15px}.ls .ls-follow.is-on{color:#788578;border-color:#d8e2d5;background:#f2f5ef}
.ls .ls-letter-body{display:grid;grid-template-columns:minmax(0,1fr) 92px;gap:13px;align-items:start;margin-top:17px;min-height:118px}.ls .ls-letter-body h2{font:600 19px/1.65 var(--ls-serif);letter-spacing:.2px;color:#263d30}.ls .ls-letter-body p{font-size:14px;color:#626c64;line-height:1.9;margin-top:9px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.ls .ls-cover{position:relative;border-radius:11px;overflow:hidden;height:119px;background:#dbe7dc;isolation:isolate}.ls .ls-cover>svg{position:absolute;width:100%;height:100%;inset:0;opacity:.67}.ls .ls-cover:after{content:"";position:absolute;inset:0;background:linear-gradient(95deg,transparent 24%,#f1f4eae0 75%);z-index:0;pointer-events:none}.ls .ls-cover>span{position:absolute;z-index:1;right:12px;top:12px;writing-mode:vertical-rl;font:500 16px/1.5 var(--ls-serif);letter-spacing:3px;color:#294532}.ls .ls-cover>i{position:absolute;bottom:10px;right:13px;z-index:1;font:normal 7px/1.2 var(--ls-serif);background:#a55e4ac9;color:#fff7e9;padding:3px;border-radius:2px;writing-mode:vertical-rl}
.ls .ls-letter-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px;margin-top:12px;border-top:1px solid #f2f4ef;padding-top:3px}.ls .ls-letter-foot time{font:12px/1.7 Georgia,serif;white-space:nowrap;color:#657068}.ls .ls-actions{display:flex;margin-left:auto;align-items:center;justify-content:flex-end;gap:5px}.ls .ls-actions button{min-height:44px;min-width:44px;padding:5px 1px;display:inline-flex;align-items:center;justify-content:center;gap:4px;font:12px/1.5 Georgia,serif;color:#647066;white-space:nowrap}.ls .ls-actions .icon{width:17px;height:17px}.ls .ls-actions .is-liked{color:#c75f60}.ls .is-liked .icon{fill:#e8918f;stroke:#d17472}.ls .ls-actions .is-saved{color:#7a915a}.ls .is-saved .icon{fill:#e2e9c6;stroke:#7a915a}
.ls .ls-footnote{text-align:center;color:#879283;font-size:10px;line-height:1.8;margin:24px 8px 8px}.ls .ls-warning{font-size:12px;line-height:1.8;background:#f5eddf;color:#8b6841;border-radius:10px;padding:10px 13px;margin:12px 0}.ls .ls-warning button{text-decoration:underline;min-height:44px}
.ls .ls-search{display:flex;gap:9px;align-items:center;padding:0 13px;background:#fff;border:1px solid #dce5d7;border-radius:12px;margin:13px 0}.ls .ls-search input{min-width:0;flex:1;min-height:46px;border:0;background:transparent;color:#2c4938;font-size:15px}.ls .ls-search .icon{width:18px;height:18px;color:#879881}
.ls .ls-empty{text-align:center;padding:33px 18px;color:#82907b}.ls .ls-empty>.icon{margin:0 auto 15px;width:37px;height:37px;color:#8fa183}.ls .ls-empty h2{font-size:17px;font-weight:500;color:#3d5943}.ls .ls-empty p{font-size:12px;line-height:1.9;margin:10px 0 18px}.ls .ls-suggestions{padding:15px;border:1px solid #e1e9da;background:white;border-radius:17px}.ls .ls-suggestions h3{font-size:14px;margin-bottom:14px}.ls .ls-suggestions .ls-author-row+.ls-author-row{margin-top:18px}
.ls .ls-archive{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:13px 0;padding:12px;border-radius:13px;background:#eaf0e4}.ls .ls-archive label{font-size:11px;color:#6a7d61}.ls .ls-archive input{display:block;width:160px;max-width:100%;min-height:44px;border:1px solid #d1dec8;border-radius:8px;background:#fff;color:#35553a;padding:7px;font-size:14px;margin-top:5px}.ls .ls-archive button{font-size:12px;color:var(--ls-green);min-height:44px}.ls .ls-list-title{font:500 19px/1.6 var(--ls-serif);margin:17px 0}
.ls .ls-reader{padding:20px 18px;background:#fffefa;border:1px solid #e8ecdf;border-radius:17px}.ls .ls-reader>h1{font:600 26px/1.7 var(--ls-serif);margin:23px 0 13px;color:#283f31}.ls .ls-reader-meta{display:flex;flex-wrap:wrap;align-items:center;gap:15px;font-size:12px;color:#66715e;margin-bottom:21px}.ls .ls-reader-art .ls-cover{height:180px;margin:12px 0 20px}.ls .ls-reader-art .ls-cover>span{font-size:28px;right:30px;top:19px}.ls .ls-reader-art .ls-cover>i{right:32px;bottom:17px}.ls .ls-prose{font:400 16px/2.2 var(--ls-serif);color:#455545}.ls .ls-prose p{margin:18px 0;text-align:justify}.ls .ls-signature{text-align:right;font-size:13px;line-height:2.1;color:#687562;margin:28px 0 15px}.ls .ls-reader-actions{border-top:1px solid #e4e9dc;margin-top:20px;padding-top:9px}.ls .ls-reader-actions .ls-actions{justify-content:space-around}.ls .ls-reader-actions .ls-actions button{font-size:14px;gap:8px;min-width:65px}.ls .ls-reader-actions .icon{width:21px;height:21px}.ls .ls-comment-entry{display:flex;align-items:center;gap:9px;width:100%;border:1px solid #d9e4d1;background:#eaf0e4;border-radius:13px;font-size:12px;padding:16px 12px;margin-top:15px;color:#5c7652;text-align:left}.ls .ls-comment-entry>.icon:last-child{margin-left:auto;width:16px}
.ls .ls-author-profile{padding:24px 17px;background:#e7efe2;border:1px solid #dbe6d3;border-radius:18px;margin:7px 0 18px}.ls .ls-author-profile>p{font-size:13px;line-height:2;color:#66795d;margin:19px 0 11px}.ls .ls-author-profile>span{font-size:11px;color:#85957b}.ls .ls-hall-intro{padding:18px 5px 8px}.ls .ls-hall-intro h2{font:500 24px/1.7 var(--ls-serif);color:#315740}.ls .ls-hall-intro p{font-size:12px;color:#7d8a78;margin:7px 0}
.ls .ls-media-types{display:flex;gap:9px;margin:13px 0}.ls .ls-media-types button{min-height:44px;flex:1;border-radius:23px;background:#eaf0e5;color:#69825b;font-size:13px}.ls .ls-media-types button[aria-pressed=true]{background:#315c46;color:#fff}.ls .ls-topic{display:flex;justify-content:space-between;align-items:center;padding:4px 5px;font-size:12px;color:#829177}.ls .ls-topic select{min-height:44px;border:0;background:transparent;color:#526e46;padding:5px 9px;max-width:70%;font-size:13px}
.ls .ls-study-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 14px;margin-top:10px}.ls .ls-study-card{min-width:0}.ls .ls-study-card a{display:block}.ls .ls-study-art{position:relative}.ls .ls-study-art .ls-cover{height:180px}.ls .ls-study-art .ls-cover>span{font-size:24px;right:24px;top:22px;letter-spacing:5px}.ls .ls-study-art .ls-cover>i{display:none}.ls .ls-kind{position:absolute;bottom:10px;left:10px;border-radius:8px;background:#fcfff0e8;color:#486743;padding:4px 7px;display:flex;align-items:center;gap:4px;font-size:10px}.ls .ls-kind>.icon{width:13px;height:13px}.ls .ls-study-card h2{font-size:14px;font-weight:550;line-height:1.8;margin:11px 2px 4px}.ls .ls-study-card p{font-size:12px;line-height:1.9;color:#677360;margin:0 2px}.ls .ls-kicker{font-size:12px;color:#7c8e6f}.ls .ls-video{display:block;width:100%;aspect-ratio:16/9;background:#1d3d33;border-radius:12px;margin:18px 0}.ls #ls-study-save-wrap{margin-top:20px}.ls .ls-study-save{width:100%}.ls.ls-saved-section{margin-top:26px}.ls .ls-muted{font-size:11px;line-height:1.9;color:#84917c;margin:10px 0}
.ls.ls-modal{margin:0;font-size:14px}.ls .ls-comment-list{max-height:31dvh;overflow:auto;overscroll-behavior:contain;padding:5px 2px;margin:13px 0}.ls .ls-comment{border-top:1px solid #dfe7d7;padding:11px 0}.ls .ls-comment>div{display:flex;align-items:center;flex-wrap:wrap;gap:9px}.ls .ls-comment strong{font-size:12px;color:#517044}.ls .ls-comment time{font-size:10px;color:#909c88}.ls .ls-comment button{margin-left:auto;font-size:11px;color:#8a6954;min-height:44px}.ls .ls-comment p{font-size:14px;color:#617256;line-height:1.9;margin-top:5px;white-space:pre-wrap}.ls #ls-comment-form>label{display:block;font-size:13px;color:#4f6941;margin:16px 0 9px}.ls #ls-comment-text{display:block;width:100%;font-size:16px;line-height:1.7;padding:12px;border:1px solid #d1dec5;background:#fffef9;border-radius:11px;resize:vertical;min-height:94px;max-height:22dvh;color:#35532a}.ls .ls-comment-form-foot{display:flex;align-items:center;justify-content:space-between;gap:11px;margin-top:12px}.ls .ls-comment-form-foot>span{font-size:10px;line-height:1.7;color:#85927b}.ls .ls-comment-form-foot .primary{white-space:nowrap;font-size:13px;padding:10px 15px;min-height:44px}.ls #ls-comment-error{color:#a35e49;font-size:12px;margin-top:8px}
.large-text .ls .ls-prose{font-size:19px}.large-text .ls .ls-letter-body h2{font-size:22px}.large-text .ls .ls-letter-body p,.large-text .ls .ls-comment p{font-size:15px}.large-text .ls .ls-author small{font-size:12px}
@media(max-width:359px){.ls .ls-filters a{padding:0 8px;font-size:12px}.ls .ls-history{font-size:11px}.ls .ls-letter{padding-left:12px;padding-right:12px}.ls .ls-letter-body{grid-template-columns:minmax(0,1fr) 77px;gap:10px}.ls .ls-letter-body h2{font-size:17px}.ls .ls-letter-foot time{font-size:11px}.ls .ls-actions{gap:2px}.ls .ls-actions button{gap:2px;font-size:11px}.ls .ls-actions .icon{width:15px;height:15px}.ls .ls-follow{min-width:65px;font-size:11px;padding:5px 8px}.ls .ls-author strong{font-size:13px}.ls .ls-avatar{width:34px;height:34px}.ls .ls-banner strong{font-size:14px}.ls .ls-banner small{font-size:11px}.ls .ls-study-art .ls-cover{height:158px}.ls .ls-reader{padding:17px 13px}.ls .ls-reader>h1{font-size:23px}}
