:root{--bg:#fffdf8;--surface:#fff;--text:#1f2937;--muted:#6b7280;--line:#ece4d6;--accent:#c8323a;--accent-soft:#fdeeee;--sub:#0f766e;--sub-soft:#e7f5f3;--note:#b45309;--note-soft:#fff7e6;--radius:12px;--wrap:760px;color:var(--text);background:var(--bg);-webkit-text-size-adjust:100%;font-family:Hiragino Sans,Hiragino Kaku Gothic ProN,Noto Sans JP,Yu Gothic,PingFang SC,Microsoft YaHei,sans-serif;line-height:1.85}*,:before,:after{box-sizing:border-box}body{background:var(--bg);margin:0;font-size:16.5px}img{max-width:100%;height:auto}a{color:var(--accent);text-underline-offset:3px}a:hover{text-decoration-thickness:2px}.wrap{max-width:var(--wrap);margin:0 auto;padding:0 16px}.muted{color:var(--muted)}.site-header{background:var(--surface);border-bottom:1px solid var(--line)}.header-inner{flex-wrap:wrap;align-items:center;gap:8px 20px;padding-top:12px;padding-bottom:12px;display:flex}.logo{color:var(--text);letter-spacing:.02em;font-size:20px;font-weight:800;text-decoration:none}.logo:before{content:"爱";background:var(--accent);color:#fff;vertical-align:-5px;border-radius:8px;place-items:center;width:30px;height:30px;margin-right:8px;font-size:17px;display:inline-grid}.gnav{flex-wrap:wrap;gap:4px 16px;font-size:14px;display:flex}.gnav a{color:var(--muted);text-decoration:none}.gnav a:hover{color:var(--accent)}main.wrap{padding-top:20px;padding-bottom:56px}.site-footer{border-top:1px solid var(--line);background:var(--surface);color:var(--muted);padding:24px 0;font-size:14px}.fnav{gap:16px;display:flex}.fnav a{color:var(--muted)}.copy{margin:8px 0 0}.breadcrumb ol{color:var(--muted);flex-wrap:wrap;gap:4px;margin:0 0 12px;padding:0;font-size:13px;list-style:none;display:flex}.breadcrumb li:not(:last-child):after{content:"›";margin-left:4px}.breadcrumb a{color:var(--muted)}h1{margin:8px 0 12px;font-size:clamp(24px,5vw,30px);line-height:1.45}.meta{color:var(--muted);flex-wrap:wrap;gap:2px 14px;margin:0 0 20px;font-size:13px;display:flex}.meta a,.lead{color:var(--muted)}.eyecatch{border-radius:var(--radius);aspect-ratio:1200/630;object-fit:cover;margin:0 0 24px;display:block}.toc{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);margin:24px 0 32px;padding:16px 20px}.toc-title{margin:0 0 4px;font-weight:700}.toc ol{margin:0;padding-left:1.4em}.toc li{margin:2px 0}.toc a{color:var(--text);text-decoration:none}.toc a:hover{color:var(--accent);text-decoration:underline}.prose h2{background:var(--accent-soft);border-left:5px solid var(--accent);border-radius:0 8px 8px 0;margin:52px 0 16px;padding:10px 14px;scroll-margin-top:16px;font-size:22px;line-height:1.5}.prose h3{border-bottom:2px solid var(--line);margin:36px 0 12px;padding-bottom:6px;scroll-margin-top:16px;font-size:19px}.prose h4{margin:28px 0 8px;font-size:17px}.prose p{margin:0 0 1.2em}.prose ul,.prose ol{padding-left:1.4em}.prose li{margin:4px 0}.prose strong{background:linear-gradient(#0000 62%,#ffe08a 62%)}.prose img{border-radius:var(--radius);margin:8px 0 16px}.prose blockquote{background:var(--surface);border-left:4px solid var(--line);color:var(--muted);margin:1.5em 0;padding:12px 16px}.prose table{border-collapse:collapse;white-space:nowrap;margin:1.5em 0;font-size:15px;display:block;overflow-x:auto}.prose th,.prose td{border:1px solid var(--line);text-align:left;vertical-align:top;padding:8px 12px}.prose th{background:#f8f3ea}@media (width>=700px){.prose table{white-space:normal;width:100%;display:table}}.box{border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);margin:1.5em 0;padding:14px 18px}.box>:last-child{margin-bottom:0}.box-title{margin:0 0 6px;font-weight:700}.box.point{background:var(--accent-soft);border-color:#f5c9cb}.box.note{background:var(--note-soft);border-color:#f6dcae}.box.ryugaku{background:var(--sub-soft);border-color:#bfe3dd}.zh{color:var(--accent);font-weight:700}.py{color:var(--muted);font-size:.92em}.article-list{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.article-list li{border-bottom:1px solid var(--line)}.article-list a{color:var(--text);justify-content:space-between;gap:12px;padding:14px 4px;text-decoration:none;display:flex}.article-list a:hover .al-title{color:var(--accent)}.al-title{font-weight:600}.article-list time{color:var(--muted);flex-shrink:0;font-size:13px}@media (width<=560px){.article-list a{flex-direction:column;gap:2px}}.cat-section h2,.related h2{margin:48px 0 12px;font-size:20px}.cat-section h2 a{color:var(--text);text-decoration:none}
