:root{
	--bg:#0d1310;--bg2:#111a15;--panel:#16211b;--panel2:#1b2921;
	--ink:#eaf2ea;--muted:#93a89a;--dim:#6d8377;
	--accent:#79c07a;--accent2:#4e9d6b;--warn:#d9a441;
	--line:#243329;--radius:10px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);
	font:16px/1.65 "Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
a{color:var(--accent);text-decoration:none}
a:hover{text-decoration:underline}
img,svg{max-width:100%}
.wrap{max-width:1000px;margin:0 auto;padding:0 20px}

/* header */
header{position:sticky;top:0;z-index:10;background:rgba(13,19,16,.94);
	border-bottom:1px solid var(--line);backdrop-filter:blur(6px)}
header .wrap{display:flex;align-items:center;justify-content:space-between;
	gap:16px;flex-wrap:wrap;padding-top:14px;padding-bottom:14px}
.brand{display:flex;align-items:center;gap:10px;font-size:19px;font-weight:700;
	color:var(--ink);letter-spacing:.2px}
.brand:hover{text-decoration:none}
.brand svg{width:26px;height:26px;flex:none}
.brand b{color:var(--accent);font-weight:700}
nav{display:flex;gap:20px;flex-wrap:wrap}
nav a{color:var(--muted);font-size:15px}
nav a:hover{color:var(--ink);text-decoration:none}

/* hero */
.hero{padding:70px 0 30px;border-bottom:1px solid var(--line);
	background:radial-gradient(900px 380px at 20% -10%,rgba(78,157,107,.16),transparent 70%)}
.hero h1{font-size:42px;line-height:1.15;margin:0 0 16px;letter-spacing:-.5px}
.hero .lead{font-size:18px;color:var(--muted);max-width:62ch;margin:0 0 26px}
.cta{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.btn{display:inline-block;background:var(--accent);color:#0d1310;font-weight:600;
	padding:12px 24px;border-radius:var(--radius);border:1px solid transparent}
.btn:hover{text-decoration:none;filter:brightness(1.08)}
.btn.ghost{background:transparent;color:var(--ink);border-color:var(--line)}
.btn.ghost:hover{border-color:var(--accent);color:var(--accent)}
.note{color:var(--dim);font-size:14px;margin-top:14px}

/* status strip */
.status{display:flex;gap:28px;flex-wrap:wrap;padding:22px 0;
	border-bottom:1px solid var(--line)}
.status div{min-width:120px}
.status .k{display:block;color:var(--dim);font-size:13px;text-transform:uppercase;
	letter-spacing:.6px;margin-bottom:3px}
.status .v{font-size:19px;font-weight:600}
.dot{display:inline-block;width:8px;height:8px;border-radius:50%;
	background:var(--accent);margin-right:7px;vertical-align:middle}

/* sections */
section{padding:52px 0}
section h2{font-size:26px;margin:0 0 8px;letter-spacing:-.3px}
section .sub{color:var(--muted);margin:0 0 26px;max-width:62ch}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:18px}
.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:22px}
.card h3{margin:0 0 8px;font-size:17px}
.card p{margin:0;color:var(--muted);font-size:15px}
.card .ico{width:30px;height:30px;margin-bottom:12px;display:block}

/* steps */
.steps{counter-reset:s;display:grid;gap:14px}
.step{position:relative;background:var(--panel);border:1px solid var(--line);
	border-radius:var(--radius);padding:20px 22px 20px 64px}
.step:before{counter-increment:s;content:counter(s);position:absolute;left:20px;top:19px;
	width:28px;height:28px;border-radius:50%;background:var(--accent2);color:#0d1310;
	font-weight:700;font-size:15px;display:flex;align-items:center;justify-content:center}
.step h3{margin:0 0 5px;font-size:17px}
.step p{margin:0;color:var(--muted);font-size:15px}
.addr{display:inline-block;background:var(--bg2);border:1px solid var(--line);
	border-radius:6px;padding:3px 9px;font-family:Consolas,"SF Mono",Menlo,monospace;
	font-size:14px;color:var(--ink);margin-top:8px}

/* rules */
.rules{display:grid;gap:10px;padding:0;margin:0;list-style:none}
.rules li{background:var(--panel);border:1px solid var(--line);border-left:3px solid var(--accent2);
	border-radius:6px;padding:13px 16px;color:var(--muted);font-size:15px}
.rules li b{color:var(--ink);font-weight:600}

/* alt background */
.alt{background:var(--bg2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}

/* article pages */
main h1{font-size:32px;margin:44px 0 12px;letter-spacing:-.4px}
main h2{font-size:21px;margin:34px 0 10px}
main p,main li{color:var(--muted)}
main ul{padding-left:22px}
main li{margin-bottom:7px}
.meta{color:var(--dim);font-size:14px;margin:0 0 24px}
.entry{border-top:1px solid var(--line);padding-top:26px;margin-top:32px}
.entry:first-of-type{border-top:none;padding-top:0}

/* footer */
footer{border-top:1px solid var(--line);padding:30px 0 40px;color:var(--dim);font-size:14px}
footer .wrap{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
footer a{color:var(--muted)}

/* 404 */
.center{text-align:center;padding:90px 0}
.center .big{font-size:70px;font-weight:700;color:var(--accent);line-height:1;margin:0 0 12px}
.center p{color:var(--muted)}

@media (max-width:640px){
	.hero{padding:48px 0 26px}
	.hero h1{font-size:32px}
	section{padding:40px 0}
	.status{gap:18px}
}
