:root {
    --cms-blue:         #003580;
    --cms-sky:          #009fe3;
    --cms-yellow:       #feba02;
    --cms-link:         var(--cms-sky);
    --cms-gray:         #666666;
    --cms-bg:           #f2f6fa;
    --theme-base-size:  14px;
    --theme-btn-radius: 6px;
}

body {
    font-family: var(--theme-font-body, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif);
    font-size: var(--theme-base-size);
}
h1,h2,h3,h4,h5,h6 { font-family: var(--theme-font-heading, inherit); }

a { color: var(--cms-link); }
a:hover { color: var(--cms-blue); }

.btn { border-radius: var(--theme-btn-radius) !important; }
.btn-primary  { background: var(--cms-blue); border-color: var(--cms-blue); }
.btn-primary:hover { background: var(--cms-sky); border-color: var(--cms-sky); }

/* Navbar */
.navbar-brand { color: var(--cms-blue) !important; font-size: 1.2rem; }
.nav-link { color: #333 !important; font-weight: 500; }
.nav-link:hover { color: var(--cms-sky) !important; }

/* Hero */
.hero { background: linear-gradient(135deg, var(--cms-blue), var(--cms-sky)); color: #fff; }

/* Cards */
.card { border-radius: 10px; }

/* Post content */
.post-content { line-height: 1.8; }
.post-content h2 { font-size: 1.5rem; }
.post-content h3 { font-size: 1.25rem; }
.post-content a { color: var(--cms-sky); }

/* Utilities */
.btn-xs { padding: 2px 8px; font-size: 12px; }

/* Smooth scroll */
html { scroll-behavior: smooth; }
