@font-face{font-family:Caveat;src:url('/assets/fonts/caveat.ttf') format('truetype');font-style:normal;font-weight:400 700;font-display:swap}
.site-footer:has(.comments-link){display:grid;grid-template-columns:1fr auto 1fr}
.site-footer:has(.comments-link) .footer-help{justify-self:end}
.comments-link{font-size:12px;min-height:44px;text-decoration:underline dashed;text-underline-offset:5px;padding:8px}
.comments-wall{background:#d9dbd4;padding:30px var(--edge) 50px;scroll-margin-top:20px;overflow-anchor:none}
.comments-inner{max-width:1050px;margin:auto}
.comments-tools{display:flex;justify-content:flex-end;align-items:center;gap:20px}
.comments-back{font-size:12px;min-height:44px;text-decoration:underline;text-underline-offset:5px}
.comments-notes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px 42px;padding:20px 3px 40px;align-items:start}
.comment-entry{min-width:0;overflow-wrap:anywhere}
.comment-entry:nth-child(3n+2){margin-top:30px}.comment-entry:nth-child(3n){margin-top:10px}
.comment-note{display:block;width:100%;padding:10px 4px;text-align:start;transform:rotate(var(--comment-angle,0deg));min-height:44px}
.comment-hand{display:block;font-family:'Caveat','Segoe Print','Bradley Hand',cursive;font-size:29px;line-height:1.25;font-weight:400;white-space:pre-wrap;display:-webkit-box;-webkit-line-clamp:7;-webkit-box-orient:vertical;overflow:hidden}
.comment-hand:lang(zh){font-family:'Kaiti SC','STKaiti','KaiTi','Noto Serif CJK SC',serif;font-size:24px;line-height:1.7;letter-spacing:.03em}
.comment-hand:lang(ja){font-family:'Yu Kyokasho','Hiragino Mincho ProN','Yu Mincho',serif;font-size:23px;line-height:1.7;letter-spacing:.03em}
.comment-hand:lang(ar),.comment-hand:lang(he){font-family:serif;line-height:1.7}
.comment-meta{display:block;margin-top:12px;font:400 11px/1.5 'Helvetica Neue',Arial,sans-serif;color:#62695d}
.comment-note:hover .comment-hand{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.comment-detail{margin-top:12px;padding:18px;background:#eef0e9;border-radius:18px;font-size:14px;line-height:1.6;position:relative}
.comment-detail-head{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:12px}
.comment-close{min-height:44px;flex-shrink:0;font-size:12px;padding:8px}
.comment-label{color:#676e61;font-size:11px;margin:15px 0 6px}
.comment-detail p{white-space:pre-wrap;margin:5px 0;overflow-wrap:anywhere}
.comment-detail audio,.comment-audio-preview{display:block;width:100%;max-width:100%;margin:16px 0}
.comment-reaction{display:flex;gap:10px;align-items:center;min-height:44px;font-size:12px;text-align:start;margin-top:16px;padding:8px 0}
.comment-reaction[aria-pressed=true]{text-decoration:underline;text-underline-offset:5px}.comment-reaction span:last-child{font-variant-numeric:tabular-nums}
.comment-reply{border-top:1px solid #c4c9bd;margin-top:18px;padding-top:8px}
.comments-empty{text-align:center;margin:30px auto 36px;max-width:450px;font-size:18px;line-height:1.6;font-weight:300}
.comments-action{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:11px 22px;border:1px solid #8f9787;border-radius:28px;font-size:14px}
.comments-actions{display:flex;justify-content:center;gap:16px;flex-wrap:wrap}
.comments-form{max-width:560px;margin:28px auto 0;padding:26px 0 0;border-top:1px solid #bac0b3}
.comments-form label{display:block;margin:18px 0;font-size:12px;line-height:1.5}
.comments-form label>span{display:block;margin-bottom:8px}
.comments-form input,.comments-form textarea,.comments-form select{width:100%;font:400 16px/1.5 'Helvetica Neue',Arial,sans-serif;padding:12px 14px;background:#f2f3ed;border:1px solid #b0b8a7;border-radius:10px;color:var(--ink)}
.comments-form textarea{min-height:130px;resize:vertical}
.comments-form select{width:auto;max-width:100%}
.comments-form label.comments-consent{display:grid;grid-template-columns:20px 1fr;gap:12px;align-items:start;margin:18px 0;font-size:12px;line-height:1.65}
.comments-form label.comments-consent[hidden]{display:none}
.comments-form .comments-consent input{appearance:auto;width:18px;height:18px;margin:3px 0 0;padding:0;accent-color:#43523c;border-radius:3px}
.comments-form .comments-consent>span{margin:0;font-style:italic}
.comments-consent a,.comments-policy-links a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.comments-policy-links{display:flex;gap:12px 20px;flex-wrap:wrap;margin:20px 0;font-size:12px;line-height:1.5}
.comments-policy-links a{display:inline-flex;align-items:center;min-height:32px}
.comment-withdraw{font-size:12px;line-height:1.5;text-align:start;text-decoration:underline;text-underline-offset:4px;min-height:44px;margin-top:12px}
.comments-form-actions{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}
.comments-notice,.comments-status,.comments-record-status{font-size:12px;line-height:1.6;color:#58624f}
.comments-status:empty{margin:0}.comments-status{margin:18px 0}
.comments-recorder{margin:22px 0;padding:18px;background:#e5e8de;border-radius:16px}
.comments-record-controls{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.comments-record-time{font-size:13px;font-variant-numeric:tabular-nums}
.comments-recorder[data-recording=true] .comments-record-time{color:#a63224}
.comments-review{font-size:12px;color:#58624f;line-height:1.5}
@media(max-width:900px){.comments-notes{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}.comment-entry:nth-child(3n),.comment-entry:nth-child(3n+2){margin-top:0}.comment-entry:nth-child(2n){margin-top:30px}}
@media(max-width:560px){.comments-notes{grid-template-columns:1fr;gap:25px;padding-bottom:30px}.comment-entry:nth-child(2n){margin-top:0}.comment-note{width:92%}.comment-entry:nth-child(2n) .comment-note{margin-left:auto}.comment-hand{font-size:28px}.comments-wall{padding-top:20px}.comments-link{font-size:11px}.site-footer:has(.comments-link){gap:6px}.site-footer:has(.comments-link) .footer-author{max-width:110px}.comment-detail{padding:18px}.comments-form{padding-top:14px}}
@media(prefers-reduced-motion:reduce){.comments-wall{scroll-behavior:auto}}
