:root {
    --czv-blue: #0069a6;
    --czv-blue-dark: #004f7c;
    --czv-green: #86bc25;
    --czv-green-dark: #6a9c18;
    --czv-bg: #eef3f8;
    --czv-text: #1c2633;
    --czv-muted: #667085;
    --czv-border: #d7dde5;
    --czv-white: #ffffff;
    --czv-radius: 8px;
    --czv-shadow: 0 8px 22px rgba(15, 35, 52, 0.055);
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body.czv-theme { margin: 0; color: var(--czv-text); background: var(--czv-bg); font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; line-height: 1.55; }
a { color: var(--czv-blue); }
a:hover { color: var(--czv-blue-dark); }
img { max-width: 100%; height: auto; }
.czv-container { width: min(1180px, calc(100% - 32px)); margin-inline: auto; }
.czv-skip-link { position: absolute; left: -999px; top: 12px; background: #fff; padding: 8px 12px; z-index: 999; }
.czv-skip-link:focus { left: 12px; }
.czv-site-header { background: rgba(255,255,255,0.96); border-bottom: 1px solid var(--czv-border); position: sticky; top: 0; z-index: 50; backdrop-filter: blur(10px); }
.czv-site-header__inner { display: flex; align-items: center; justify-content: space-between; gap: 24px; min-height: 72px; }
.czv-site-title { color: var(--czv-text); text-decoration: none; font-weight: 650; display: flex; flex-direction: column; line-height: 1.1; }
.czv-site-title small { color: var(--czv-muted); font-weight: 500; font-size: 13px; }
.czv-main-navigation ul { margin: 0; padding: 0; display: flex; list-style: none; gap: 4px; align-items: center; }
.czv-main-navigation a { display: block; padding: 10px 12px; color: var(--czv-text); text-decoration: none; font-weight: 550; border-radius: 5px; }
.czv-main-navigation a:hover, .czv-main-navigation .current-menu-item > a { background: var(--czv-bg); color: var(--czv-blue); }
.czv-menu-toggle { display: none; width: 44px; height: 44px; border: 1px solid var(--czv-border); border-radius: 6px; background: #fff; }
.czv-menu-toggle span:not(.screen-reader-text) { display: block; width: 20px; height: 2px; background: var(--czv-text); margin: 4px auto; }
.czv-site-main { min-height: 70vh; }
.czv-content-wrap { padding: 40px 0; }
.czv-wp-article, .czv-card { background: #fff; border: 1px solid var(--czv-border); border-radius: var(--czv-radius); box-shadow: var(--czv-shadow); }
.czv-wp-article { padding: clamp(24px, 4vw, 56px); }
.czv-card-pad { padding: 28px; }
.czv-button, .czv-button-secondary, .czv-button-outline { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 42px; padding: 10px 18px; border-radius: 5px; font-weight: 600; text-decoration: none; cursor: pointer; border: 2px solid transparent; }
.czv-button { background: var(--czv-green); color: #fff; }
.czv-button:hover { background: var(--czv-green-dark); color: #fff; }
.czv-button-secondary { background: var(--czv-blue); color: #fff; }
.czv-button-secondary:hover { background: var(--czv-blue-dark); color: #fff; }
.czv-button-outline { color: var(--czv-blue); border-color: var(--czv-blue); background: #fff; }
.czv-button-outline:hover { color: #fff; background: var(--czv-blue); }
.czv-alert { width: min(900px, calc(100% - 32px)); margin: 24px auto; padding: 16px 18px; border-radius: 6px; border: 1px solid var(--czv-border); background: #fff; }
.czv-alert-warning { border-color: #e8b923; background: #fff9df; }
.czv-site-footer { margin-top: 40px; background: #14263a; color: #fff; }
.czv-site-footer__inner { min-height: 100px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.czv-site-footer a { color: #fff; }
.czv-site-footer ul { display: flex; list-style: none; gap: 16px; margin: 0; padding: 0; }
.screen-reader-text { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
@media (max-width: 860px) {
    .czv-menu-toggle { display: inline-block; }
    .czv-main-navigation { display: none; position: absolute; left: 16px; right: 16px; top: 72px; background: #fff; border: 1px solid var(--czv-border); border-radius: 8px; padding: 12px; box-shadow: var(--czv-shadow); }
    .czv-main-navigation.is-open { display: block; }
    .czv-main-navigation ul { display: block; }
    .czv-main-navigation a { border-radius: 5px; }
    .czv-site-footer__inner { display: block; padding: 24px 0; }
    .czv-site-footer ul { display: block; margin-top: 16px; }
}
.czv-main-navigation .czv-menu-highlight > a { color: var(--czv-blue); border: 1px solid var(--czv-blue); background: #fff; }
.czv-main-navigation .czv-menu-highlight > a:hover { color: #fff; background: var(--czv-blue); }

/* v1.3.0 visual refinement */
body.czv-theme { font-size: 15.5px; }
h1 { font-size: clamp(26px, 3vw, 38px); }
h2 { font-size: clamp(21px, 2.3vw, 29px); }
h3 { font-size: clamp(18px, 2vw, 23px); }
.czv-site-title { font-weight: 600; }
.czv-main-navigation a { font-size: 15px; font-weight: 520; }
.czv-button, .czv-button-secondary, .czv-button-outline { font-weight: 560; }

/* v1.6.0 */
.czv-site-title span { font-weight: 610; }
.czv-main-navigation .czv-menu-highlight > a { border-radius: 4px; }
