:root {
	--bg: #0b1020;
	--panel: #111a33;
	--panel2: #0f1730;
	--text: #e7ecff;
	--muted: #a7b2d8;
	--line: rgba(255, 255, 255, 0.08);
	--glow: rgba(120, 160, 255, 0.22);
}

* {
	box-sizing: border-box;
}
body {
	margin: 0;
	font-family:
		ui-sans-serif,
		system-ui,
		-apple-system,
		Segoe UI,
		Roboto,
		Arial;
	background:
		radial-gradient(1200px 600px at 20% -10%, var(--glow), transparent 60%),
		radial-gradient(
			900px 500px at 90% 10%,
			rgba(255, 80, 180, 0.16),
			transparent 55%
		),
		var(--bg);
	color: var(--text);
}

a {
	color: inherit;
}
.wrap {
	max-width: 1050px;
	margin: 0 auto;
	padding: 28px 18px 60px;
}
.muted {
	color: var(--muted);
	line-height: 1.5;
}

.topbar {
	position: sticky;
	top: 0;
	z-index: 5;
	display: flex;
	align-items: center;
	gap: 16px;
	padding: 14px 18px;
	background: rgba(10, 14, 28, 0.72);
	backdrop-filter: blur(10px);
	border-bottom: 1px solid var(--line);
}
.brand {
	font-weight: 800;
	letter-spacing: 0.2px;
}
.nav {
	display: flex;
	gap: 14px;
	flex: 1;
	justify-content: center;
}
.nav a {
	opacity: 0.9;
	text-decoration: none;
	padding: 8px 10px;
	border-radius: 10px;
}
.nav a:hover {
	background: rgba(255, 255, 255, 0.06);
	opacity: 1;
}

.lang {
	display: flex;
	gap: 8px;
}
.langbtn {
	border: 1px solid var(--line);
	background: rgba(255, 255, 255, 0.04);
	color: var(--text);
	padding: 7px 10px;
	border-radius: 10px;
	cursor: pointer;
}
.langbtn.active {
	background: rgba(120, 160, 255, 0.18);
	border-color: rgba(120, 160, 255, 0.35);
}

.hero {
	padding: 46px 22px;
	border: 1px solid var(--line);
	background: linear-gradient(
		180deg,
		rgba(255, 255, 255, 0.06),
		rgba(255, 255, 255, 0.02)
	);
	border-radius: 18px;
	box-shadow:
		0 0 0 1px rgba(255, 255, 255, 0.04),
		0 18px 60px rgba(0, 0, 0, 0.35);
}
.hero h1 {
	margin: 0 0 10px;
	font-size: 34px;
}
.btn {
	display: inline-block;
	margin-top: 14px;
	text-decoration: none;
	background: rgba(120, 160, 255, 0.22);
	border: 1px solid rgba(120, 160, 255, 0.35);
	padding: 10px 14px;
	border-radius: 12px;
}

.card {
	margin-top: 22px;
	border: 1px solid var(--line);
	background: rgba(255, 255, 255, 0.03);
	border-radius: 18px;
	padding: 18px;
}
.cardhead {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
}
.pill {
	font-size: 12px;
	padding: 6px 10px;
	border-radius: 999px;
	border: 1px solid var(--line);
	background: rgba(255, 255, 255, 0.04);
}

.news {
	display: flex;
	flex-direction: column;
	gap: 12px;
	margin-top: 12px;
}
.newsItem {
	padding: 14px;
	border-radius: 14px;
	border: 1px solid var(--line);
	background: rgba(0, 0, 0, 0.18);
}
.newsTop {
	display: flex;
	justify-content: space-between;
	gap: 12px;
}
.newsTitle {
	font-weight: 700;
}
.newsDate {
	color: var(--muted);
	font-size: 12px;
}

.grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
	gap: 12px;
	margin-top: 14px;
}
.server {
	border: 1px solid var(--line);
	background: rgba(0, 0, 0, 0.18);
	border-radius: 14px;
	padding: 14px;
}
.serverTop {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 10px;
}
.serverName {
	font-weight: 800;
}
.status {
	font-size: 12px;
	padding: 6px 10px;
	border-radius: 999px;
	border: 1px solid var(--line);
}
.status.off {
	opacity: 0.85;
}
.status.on {
	background: rgba(0, 255, 160, 0.12);
	border-color: rgba(0, 255, 160, 0.28);
}
.serverMeta {
	margin-top: 10px;
	color: var(--muted);
	display: flex;
	justify-content: space-between;
	font-size: 12px;
}

.footer {
	padding: 18px;
	text-align: center;
	color: var(--muted);
	border-top: 1px solid var(--line);
}
