
:root { --ink:#103b3a; --accent:#2a6f67; --soft:#eef4f3; --line:#c9d6d4; --text:#172422; }
* { box-sizing: border-box; }
body { margin:0; font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; color:var(--text); line-height:1.55; background:#fff; }
header { background:var(--ink); color:white; padding:1.2rem clamp(1rem, 4vw, 3rem); }
header .brand { font-weight:700; letter-spacing:.08em; font-size:.9rem; }
main { max-width: 980px; margin:0 auto; padding:2rem clamp(1rem, 4vw, 2rem) 4rem; }
h1 { color:var(--ink); font-size:clamp(2rem, 5vw, 3.4rem); line-height:1.05; }
h2 { color:var(--ink); margin-top:2.2rem; border-top:1px solid var(--line); padding-top:1rem; }
h3 { color:var(--accent); }
.meta { background:var(--soft); padding:1rem; border-left:4px solid var(--accent); margin:1rem 0 2rem; }
a { color:var(--accent); }
table { width:100%; border-collapse:collapse; margin:1rem 0; font-size:.92rem; display:block; overflow-x:auto; }
th,td { border:1px solid var(--line); padding:.55rem; vertical-align:top; }
th { background:var(--soft); color:var(--ink); text-align:left; }
.cardgrid { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:1rem; }
.card { border:1px solid var(--line); border-radius:12px; padding:1rem; background:#fbfdfc; }
footer { border-top:1px solid var(--line); margin-top:3rem; padding-top:1rem; color:#64706e; font-size:.9rem; }
@media print { header { background:white; color:var(--ink); border-bottom:1px solid var(--line); } main { max-width:none; } }
