:root { --brand:#2a5f3e; --bg:#f7f4ed; --text:#1c2b22; --muted:#667; --border:#e2ddcc; }
* { box-sizing:border-box; }
body { font-family:Georgia,'Times New Roman',serif; margin:0; color:var(--text); background:var(--bg); line-height:1.6; }
header { background:white; border-bottom:1px solid var(--border); padding:18px 32px; display:flex; align-items:center; gap:28px; }
header .brand { font-size:17px; font-weight:bold; color:var(--text); }
header .logo { max-height:36px; margin-right:12px; }
header nav a { color:var(--text); text-decoration:none; font-size:14px; margin-right:20px; font-family:-apple-system,Segoe UI,Roboto,sans-serif; }
header nav a.active, header nav a:hover { color:var(--brand); }
header .spacer { flex:1; }
header button { background:transparent; border:1px solid var(--border); padding:6px 14px; border-radius:3px; font-size:13px; cursor:pointer; }
.container { max-width:1000px; margin:0 auto; padding:32px; }
h1 { font-size:28px; margin:0 0 6px; }
.sub { color:var(--muted); margin:0 0 24px; }
.panel { background:white; border:1px solid var(--border); border-radius:6px; padding:22px 26px; margin-bottom:18px; }
.panel h2 { font-size:14px; text-transform:uppercase; letter-spacing:0.6px; color:var(--muted); margin:0 0 12px; font-family:-apple-system,Segoe UI,sans-serif; }
.btn { display:inline-block; padding:11px 22px; background:var(--brand); color:white; text-decoration:none; border-radius:3px; font-size:14px; font-family:inherit; border:none; cursor:pointer; }
.btn:hover { opacity:0.9; }
.btn-outline { background:transparent; color:var(--brand); border:1px solid var(--brand); }
.card { background:#fafaf5; border:1px solid var(--border); border-radius:4px; padding:16px 18px; margin-bottom:10px; }
.card.locked { opacity:0.55; background:#f2efe5; }
.grid-2 { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
@media (max-width:700px) { .grid-2 { grid-template-columns:1fr; } }
