
    *, *::before, *::after { box-sizing: border-box; }
    html, body { margin: 0; padding: 0; background: #F4F2ED; }
    body {
        font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
        -webkit-font-smoothing: antialiased;
        color: #1F1B16; font-size: 15px; line-height: 1.8;
    }
    a { color: inherit; }
    img { max-width: 100%; }

    /* ── 顶栏 ── */
    .nav {
        position: sticky; top: 0; z-index: 40;
        background: rgba(244,242,237,.94);
        border-bottom: 1px solid #E6E0D5;
        backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px);
    }
    .nav-in {
        max-width: 1080px; margin: 0 auto; padding: 0 20px;
        height: 54px; display: flex; align-items: center; gap: 22px;
    }
    .nav-brand {
        display: inline-flex; align-items: center; gap: 7px;
        font-size: 15px; font-weight: 600; letter-spacing: .02em;
        text-decoration: none; color: #1F1B16; white-space: nowrap;
    }
    .nav-brand i {
        width: 6px; height: 6px; border-radius: 50%;
        background: #B08F45; display: inline-block;
    }
    .nav-links { display: flex; align-items: center; gap: 2px; overflow-x: auto; scrollbar-width: none; }
    .nav-links::-webkit-scrollbar { display: none; }
    .nav-links a {
        display: inline-block; padding: 6px 11px; border-radius: 8px;
        font-size: 14px; color: #7E766B; text-decoration: none; white-space: nowrap;
    }
    .nav-links a:hover { background: #EDEAE2; color: #1F1B16; }
    .nav-links a.on { color: #7A5C24; background: #F1EADA; font-weight: 500; }
    .nav-cta {
        margin-left: auto; flex: 0 0 auto;
        padding: 7px 14px; border-radius: 8px;
        background: #1F1B16; color: #F7F4EC !important;
        font-size: 13.5px; text-decoration: none; white-space: nowrap;
    }
    .nav-cta:hover { background: #332C23; }

    /* ── 栅格 ── */
    .container { max-width: 1080px; margin: 0 auto; padding: 22px 20px 0; }
    .grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 26px; align-items: start; }
    main { min-width: 0; }
    @media (min-width: 900px) {
        .grid { grid-template-columns: minmax(0, 1fr) 300px; gap: 30px; }
        .side { position: sticky; top: 72px; }
    }

    /* ── 侧栏 ── */
    .side { display: flex; flex-direction: column; gap: 14px; }
    .side-card {
        background: #FBFAF7; border: 1px solid #E6E0D5; border-radius: 12px;
        padding: 14px 16px 12px;
    }
    .side-card h3 {
        margin: 0 0 10px; font-size: 13px; font-weight: 600;
        color: #7A5C24; letter-spacing: .06em;
    }
    .side-card ul { margin: 0; padding: 0; list-style: none; }
    .side-card li { border-top: 1px dashed #EDE8DE; }
    .side-card li:first-child { border-top: 0; }
    .side-card li a {
        display: flex; align-items: baseline; gap: 8px;
        padding: 6px 0; font-size: 13.5px; color: #3D372F; text-decoration: none;
    }
    .side-card li a:hover { color: #7A5C24; }
    .side-card li a b { font-size: 11.5px; color: #B3AA9C; font-weight: 400; width: 14px; flex: 0 0 14px; }
    .side-card li a span { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
    .side-card li a em { font-style: normal; font-size: 11.5px; color: #B3AA9C; flex: 0 0 auto; }
    .side-chips { display: flex; flex-wrap: wrap; gap: 6px; }
    .side-chips a {
        padding: 4px 9px; border-radius: 7px; background: #F2EFE7;
        font-size: 12.5px; color: #5C544A; text-decoration: none;
    }
    .side-chips a:hover { background: #EAE3D3; color: #7A5C24; }

    /* ── 页脚 ── */
    .foot { margin-top: 40px; border-top: 1px solid #E6E0D5; background: #F0EDE6; }
    .foot-in { max-width: 1080px; margin: 0 auto; padding: 24px 20px 30px; }
    .foot h4 {
        margin: 0 0 8px; font-size: 12.5px; font-weight: 600;
        color: #8C8377; letter-spacing: .08em;
    }
    .foot-cloud { margin: 0 0 18px; font-size: 12.5px; line-height: 2.1; color: #A69C8D; }
    .foot-cloud a { color: #8C8377; text-decoration: none; }
    .foot-cloud a:hover { color: #7A5C24; text-decoration: underline; text-underline-offset: 3px; }
    .foot-cloud i { font-style: normal; margin: 0 6px; color: #C9C1B3; }
    .foot-meta {
        display: flex; flex-wrap: wrap; gap: 10px 18px;
        padding-top: 14px; border-top: 1px solid #E3DED4;
        font-size: 12.5px; color: #9A9287;
    }
    .foot-meta a { color: #9A9287; text-decoration: none; }
    .foot-meta a:hover { color: #7A5C24; }
    .foot-meta span { margin-left: auto; }

    /* ── 通用小件 ── */
    .crumb { font-size: 13px; color: #8C8377; margin: 0 0 14px; }
    .crumb a { color: #8C8377; text-decoration: none; }
    .crumb a:hover { text-decoration: underline; }
    .sec-h {
        display: flex; align-items: baseline; gap: 10px;
        margin: 32px 0 12px; font-size: 17px; font-weight: 600; letter-spacing: .01em;
    }
    .sec-h small { font-size: 12.5px; font-weight: 400; color: #8C8377; }
    .sec-h .more { margin-left: auto; font-size: 13px; font-weight: 400; color: #7A5C24; text-decoration: none; }
    .sec-h .more:hover { text-decoration: underline; text-underline-offset: 3px; }

    @media (max-width: 899px) {
        .side { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
        .side-card { padding: 12px 14px 10px; }
    }
    @media (max-width: 620px) {
        .container { padding: 16px 12px 0; }
        .nav-in { padding: 0 12px; height: 50px; gap: 10px; }
        .nav-links a { padding: 6px 8px; font-size: 13.5px; }
        .nav-cta { display: none; }
        .side { grid-template-columns: 1fr; }
        .foot-in { padding: 20px 12px 26px; }
    }
    @media (prefers-color-scheme: dark) {
        html, body { background: #171614; color: #F2EFE9; }
        .nav { background: rgba(23,22,20,.94); border-bottom-color: #2C2925; }
        .nav-brand { color: #F2EFE9; }
        .nav-links a { color: #A8A093; }
        .nav-links a:hover { background: #24211D; color: #F2EFE9; }
        .nav-links a.on { background: #2E2818; color: #D8C69A; }
        .nav-cta { background: #F2EFE9; color: #1F1B16 !important; }
        .side-card { background: #1D1B18; border-color: #302C27; }
        .side-card h3 { color: #C9A85E; }
        .side-card li { border-top-color: #2A2723; }
        .side-card li a { color: #CFC7BA; }
        .side-card li a:hover { color: #D8C69A; }
        .side-chips a { background: #24211D; color: #C9C1B3; }
        .side-chips a:hover { background: #2E2818; color: #D8C69A; }
        .foot { background: #131211; border-top-color: #2C2925; }
        .foot h4 { color: #8A8276; }
        .foot-cloud { color: #6E675C; }
        .foot-cloud a { color: #8A8276; }
        .foot-meta { border-top-color: #2C2925; color: #6E675C; }
        .foot-meta a { color: #6E675C; }
        .crumb, .crumb a { color: #9A9287; }
        .sec-h small { color: #9A9287; }
    }
