:root {
    --red: #bb1919;
    --border: #ececec;
    --font-head: 'Merriweather', serif;
    --font-ui: 'Inter', sans-serif;
    --text-dark: #2b2b2b;
    --important: #800000;
}

/* --- Base --- */
* { box-sizing: border-box; }

html, body { 
    margin: 0 !important; 
    padding: 0 !important; 
    transform: none !important;
    filter: none !important;
    perspective: none !important;
    contain: none !important;
    will-change: auto !important;
}

body {
    font-family: var(--font-ui);
    color: var(--text-dark);
    line-height: 1.4;
    background: #fff;
    -webkit-font-smoothing: antialiased;
    position: relative; /* Fixed elements should reference viewport unless transform is present */
}

body.menu-open { overflow: hidden; }
a { text-decoration: none; color: inherit; transition: color 0.2s; }
ul, li { list-style: none; padding: 0; margin: 0; }
img { max-width: 100% !important; height: auto !important; border-radius: 12px !important; }

.container { max-width: 1140px; margin: 0 auto; padding: 0 15px; position: relative; }

/* --- Typography --- */
h1, h2, h3 { font-family: var(--font-head); font-weight: 700; color: #000; margin: 0; }
h1 { font-size: 26px; line-height: 1.2; margin: 8px 0; }
h3 { font-size: 15px; line-height: 1.35; margin-bottom: 4px; }
.m-comm { margin-left: 12px; color: #888; font-weight: 700; display: inline-flex; align-items: center; }
body.dark-mode .m-comm { color: #bbb; }

/* --- Global Post Content Lists Fix --- */
.post-content ul, .post-content ol {
    margin: 20px 0 20px 25px !important;
    display: block !important;
}
.post-content ul li {
    list-style-type: disc !important;
    margin-bottom: 8px !important;
    display: list-item !important;
}
.post-content ol li {
    list-style-type: decimal !important;
    margin-bottom: 8px !important;
    display: list-item !important;
}
