:root {
	--bg: #030706;
	--deep: #06100d;
	--deep-2: #0a1712;
	--panel: rgba(8, 18, 14, .88);
	--panel-2: rgba(12, 29, 23, .86);
	--line: rgba(104, 177, 139, .34);
	--line-soft: rgba(104, 177, 139, .18);
	--line-gold: rgba(219, 176, 91, .38);
	--green: #68b18b;
	--green-soft: #9de5bf;
	--gold: #dbb05b;
	--gold-light: #ffe0a1;
	--red: #9f4a38;
	--text: #f4efe2;
	--muted: #b6c0ad;
	--dim: #78877b;
	--serif: "Cinzel", Georgia, serif;
	--sans: "Inter", Arial, sans-serif;
	--shadow: 0 24px 70px rgba(0, 0, 0, .58);
}

* { box-sizing: border-box; }
html { background: var(--bg); scroll-behavior: smooth; }
body {
	margin: 0;
	min-height: 100vh;
	color: var(--text);
	font-family: var(--sans);
	font-size: 14px;
	background:
		linear-gradient(180deg, rgba(2, 7, 5, .38), rgba(2, 7, 5, .94) 760px, #020504 100%),
		linear-gradient(90deg, rgba(0, 0, 0, .78), transparent 35%, transparent 65%, rgba(0, 0, 0, .78)),
		url("../img/bg.jpg") center top / cover fixed no-repeat;
	overflow-x: hidden;
}
body::before {
	content: "";
	position: fixed;
	inset: 0;
	z-index: -1;
	pointer-events: none;
	background:
		radial-gradient(circle at 50% 10%, rgba(104, 177, 139, .2), transparent 360px),
		radial-gradient(circle at 50% 44%, rgba(219, 176, 91, .1), transparent 520px),
		linear-gradient(rgba(104, 177, 139, .025) 1px, transparent 1px),
		linear-gradient(90deg, rgba(104, 177, 139, .018) 1px, transparent 1px);
	background-size: auto, auto, 62px 62px, 62px 62px;
}
a { color: inherit; text-decoration: none; }
img { max-width: 100%; }
button, input, select, textarea { font: inherit; }
::selection { color: #06100d; background: var(--gold-light); }

.f2-launch-banner { display: none; }
.f2-header {
	position: sticky;
	top: 0;
	z-index: 50;
	min-height: 78px;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 0 20px;
	background: linear-gradient(180deg, rgba(4, 10, 8, .96), rgba(4, 10, 8, .82)), linear-gradient(90deg, transparent, rgba(104, 177, 139, .08), transparent);
	border-bottom: 1px solid var(--line);
	box-shadow: 0 18px 48px rgba(0, 0, 0, .46), inset 0 -1px rgba(219, 176, 91, .13);
	backdrop-filter: blur(10px);
}
.mobile-menu-toggle { display: none; }
.f2-nav {
	width: min(1220px, 100%);
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: .1em;
	text-transform: uppercase;
}
.f2-nav > a, .f2-language-switcher a {
	min-height: 42px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0 15px;
	color: #d8e2d3;
	border: 1px solid transparent;
	background: rgba(255, 255, 255, .025);
	transition: .18s ease;
	white-space: nowrap;
}
.f2-nav > a:hover, .f2-nav > a.is-active, .f2-language-switcher a:hover, .f2-language-switcher a.is-active {
	color: var(--gold-light);
	border-color: var(--line-gold);
	background: linear-gradient(180deg, rgba(219, 176, 91, .18), rgba(8, 18, 14, .24));
	box-shadow: inset 0 0 18px rgba(219, 176, 91, .08);
}
.f2-language-switcher { display: inline-flex; gap: 0; margin-left: 8px; border: 1px solid var(--line); }
.f2-language-switcher a { min-width: 40px; padding: 0 10px; }
.f2-nav .f2-nav-cta, .f2-itemshop-link { border-color: var(--line-gold); color: var(--gold-light); background: linear-gradient(180deg, rgba(219, 176, 91, .12), rgba(0, 0, 0, .18)); }
.f2-support-badge { display:inline-flex; align-items:center; justify-content:center; min-width:18px; min-height:18px; margin-left:6px; border-radius:50%; background:var(--red); color:#fff; font-size:10px; }

.f2-shell { width:100%; position:relative; }
.f2-hero { position:relative; padding:68px 0 28px; }
.f2-hero-bg, .f2-mist, .f2-particles, .f2-logo-shine, .f2-logo-spark { display:none; }
.f2-hero-inner { width:min(100% - 54px,1220px); margin:0 auto; display:grid; grid-template-columns:320px minmax(0,1fr) 320px; grid-template-areas:"download brand account" "download brand toplist"; gap:18px; align-items:stretch; }
body:not(.is-home-page) .f2-hero-inner { grid-template-columns:minmax(0,1fr) 370px; grid-template-areas:"brand account"; }
.f2-hero-copy { grid-area:brand; min-height:520px; display:grid; place-items:center; align-content:center; text-align:center; padding:26px; }
.f2-logo-stage { width:min(500px,74vw); margin:0 auto 18px; filter:drop-shadow(0 26px 42px rgba(0,0,0,.9)) drop-shadow(0 0 22px rgba(219,176,91,.16)); }
.f2-logo { display:block; width:100%; height:auto; }
.f2-kicker, .f2-download-kicker, .f2-login-kicker, .f2-ranking-hero span, .f2-widget-title span, .f2-faith-card-head span, .f2-section-head .f2-kicker, label, .form-label { color:var(--gold); font-size:12px; font-weight:900; letter-spacing:.14em; text-transform:uppercase; }
.f2-hero-copy > .f2-kicker { margin:0 0 16px; color:var(--green-soft); }
h1,h2,h3,h4,.f2-faith-card-head strong,.f2-account-panel h2,.f2-section-head h2,.f2-widget h3 { margin:0; font-family:var(--serif); font-weight:700; letter-spacing:0; color:var(--text); text-shadow:0 0 28px rgba(104,177,139,.18); }
.f2-hero-copy h1 { max-width:760px; font-size:clamp(3.2rem,6vw,5.8rem); line-height:.92; margin-bottom:18px; }
.f2-hero-copy > p:not(.f2-kicker) { max-width:650px; margin:0 auto 24px; color:var(--muted); font-size:1.05rem; line-height:1.65; }
.f2-actions { display:flex; flex-wrap:wrap; justify-content:center; gap:12px; }
.f2-btn,.btn,button[type="submit"],input[type="submit"],.f2-home-download-main { min-height:48px; display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:0 22px; border:1px solid var(--line-gold); background:linear-gradient(180deg,#ffe3a4 0%,#d9ad56 45%,#7d5525 100%); color:#120e08 !important; font-weight:950; letter-spacing:.06em; text-transform:uppercase; text-align:center; box-shadow:0 16px 36px rgba(219,176,91,.18), inset 0 1px rgba(255,255,255,.32); cursor:pointer; transition:.18s ease; }
.f2-btn:hover,.btn:hover,button[type="submit"]:hover,.f2-home-download-main:hover { filter:brightness(1.08); transform:translateY(-1px); }
.f2-btn:not(.f2-btn-primary),.f2-btn-discord,.f2-home-download-link,.f2-home-panel-link,.f2-panel-links a,.f2-link-slots a,.f2-link-slot-disabled,.pagination-btn,.pagination-current { background:rgba(7,18,14,.74); border:1px solid var(--line); color:var(--text) !important; box-shadow:inset 0 0 18px rgba(104,177,139,.06); }
.f2-btn-discord { color:var(--green-soft) !important; }
.f2-btn small,.f2-btn-discord small { color:var(--muted); font-size:.7rem; }

.f2-faith-card,.f2-account-panel,.f2-content-panel,.f2-side .f2-widget,.f2-server-status,.f2-server-status__main,.f2-channel-board,.news-item,.panel-section,.panel-section-content,.account-info-box,.f2-user-card,.f2-account-modern-panel,.ranking-table-wrapper,.f2-podium-card,.f2-ranking-hero,.f2-download-hero,.f2-download-info-grid article,.auth-form,.f2-register-guide,.f2-login-card,.f2-login-aside,.f2-recovery-card,.f2-support-panel,.f2-support-hero-panel,.f2-support-ticket-card,.f2-support-empty-card,.f2-faq-item,.f2-admin-command-card,.admin-stat-card,.box,.table-wrapper { border:1px solid var(--line); background:linear-gradient(180deg,rgba(104,177,139,.08),transparent 30%),linear-gradient(135deg,rgba(219,176,91,.07),transparent 46%),var(--panel); box-shadow:var(--shadow), inset 0 1px rgba(255,255,255,.04); }
.f2-faith-card { overflow:hidden; }
.f2-home-download-panel { grid-area:download; }
.f2-account-panel { grid-area:account; padding:30px; position:relative; overflow:hidden; }
.f2-home-toplist-panel { grid-area:toplist; }
.f2-faith-card-head,.f2-widget-title,.f2-section-head,.f2-server-status__head,.f2-support-panel-head,.f2-login-card-head,.f2-register-form-head,.f2-account-modern-head,.panel-section-header,.account-info-header { padding:20px 22px; border-bottom:1px solid var(--line-soft); background:linear-gradient(90deg,rgba(104,177,139,.12),transparent 70%); }
.f2-faith-card-head strong { display:block; margin-top:7px; font-size:1.45rem; }
.f2-home-download-body,.f2-home-toplist-body { padding:18px; display:grid; gap:12px; }
.f2-home-download-main { min-height:70px; width:100%; }
.f2-home-download-link,.f2-home-panel-link,.f2-panel-links a,.f2-link-slots a,.f2-link-slot-disabled { min-height:52px; display:flex; align-items:center; justify-content:space-between; gap:12px; padding:12px 14px; transition:.18s ease; }
.f2-home-download-link:hover,.f2-home-panel-link:hover,.f2-panel-links a:hover,.f2-link-slots a:hover { border-color:var(--line-gold); color:var(--gold-light) !important; background:rgba(219,176,91,.08); }
.f2-home-download-link strong,.f2-link-slots span { color:var(--text); text-transform:uppercase; font-weight:900; }
.f2-home-download-link small,.f2-link-slots small { color:var(--muted); }
.f2-account-panel h2 { font-size:2.1rem; line-height:.98; margin:10px 0 20px; }
.f2-login-form { display:grid; gap:10px; }
input,select,textarea,.form-input { width:100%; min-height:46px; border:1px solid var(--line-soft); background:rgba(1,6,5,.78); color:var(--text); padding:12px 14px; outline:0; }
textarea { min-height:130px; resize:vertical; }
input:focus,select:focus,textarea:focus { border-color:var(--green); box-shadow:0 0 0 3px rgba(104,177,139,.12); }
.f2-local-captcha-box { display:grid; grid-template-columns:105px 1fr; gap:10px; }
.f2-local-captcha-box span { display:flex; align-items:center; justify-content:center; border:1px solid var(--line-soft); color:var(--green-soft); background:rgba(0,0,0,.25); font-weight:900; }
.f2-panel-links { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin-top:15px; }
.f2-home-toplist-body ol,.f2-ranking-list { list-style:none; padding:0; margin:0; display:grid; gap:0; }
.f2-home-toplist-body li,.f2-ranking-list li { display:grid; grid-template-columns:34px 1fr auto; align-items:center; min-height:42px; border-bottom:1px solid var(--line-soft); gap:12px; }
.f2-home-toplist-body li span { color:var(--green-soft); font-weight:900; }
.f2-home-toplist-body li strong,.f2-ranking-list span { color:var(--text); min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.f2-home-toplist-body li b,.f2-ranking-list strong { color:var(--gold-light); font-size:.82rem; }

.f2-server-status { width:min(100% - 54px,1220px); margin:0 auto 18px; display:grid; grid-template-columns:minmax(0,1.55fr) minmax(320px,.9fr); gap:0; overflow:hidden; }
.f2-server-status__main,.f2-channel-board { border:0; box-shadow:none; background:transparent; }
.f2-server-status__head { display:flex; justify-content:space-between; gap:18px; align-items:flex-start; }
.f2-server-status__head h2 { font-size:2.1rem; }
.f2-server-status__head p { margin:6px 0 0; color:var(--muted); }
.f2-server-pill { display:inline-flex; gap:8px; align-items:center; padding:9px 12px; border:1px solid var(--line); color:var(--green-soft); text-transform:uppercase; font-size:.75rem; font-weight:900; }
.f2-server-pill i { width:9px; height:9px; background:var(--green-soft); box-shadow:0 0 16px var(--green); }
.f2-server-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); }
.f2-server-metrics div { padding:18px 22px; border-top:1px solid var(--line-soft); border-right:1px solid var(--line-soft); }
.f2-server-metrics strong { display:block; color:var(--gold-light); font-size:1.45rem; font-family:var(--serif); }
.f2-server-metrics span { color:var(--muted); text-transform:uppercase; font-size:.72rem; font-weight:900; }
.f2-channel-board { border-left:1px solid var(--line-soft); padding:20px; }
.f2-channel-board__title { display:flex; justify-content:space-between; gap:14px; margin-bottom:13px; color:var(--gold); text-transform:uppercase; font-weight:900; font-size:.8rem; }
.f2-channel-board__title small { color:var(--muted); }
.f2-channel-list { display:grid; gap:10px; }
.f2-channel-row { display:grid; grid-template-columns:42px 1fr auto; gap:12px; align-items:center; }
.f2-channel-row strong { color:var(--text); }
.f2-channel-load { height:6px; background:rgba(0,0,0,.45); border:1px solid var(--line-soft); }
.f2-channel-load i { display:block; height:100%; background:linear-gradient(90deg,var(--green),var(--gold)); }
.f2-channel-row em { color:var(--green-soft); font-style:normal; font-size:.72rem; font-weight:900; text-transform:uppercase; }

.f2-content-grid { width:min(100% - 54px,1220px); margin:18px auto 72px; display:grid; grid-template-columns:minmax(0,1fr) 320px; gap:18px; align-items:start; }
.f2-content-panel { min-width:0; overflow:hidden; }
.f2-side { display:grid; gap:18px; }
.f2-widget-title h3,.f2-section-head h2 { margin-top:7px; font-size:1.55rem; }
.f2-muted,p,small { color:var(--muted); }
.f2-link-slots { display:grid; gap:10px; padding:18px; }
.f2-widget > p,.f2-text-link { margin:18px; }
.f2-text-link { display:inline-flex; color:var(--gold-light); font-weight:900; text-transform:uppercase; letter-spacing:.08em; }
.news-item { padding:22px; margin:18px; }

.auth-wrapper,.f2-download-page,.f2-ranking-page,.f2-support-center { width:100%; }
.f2-register-layout,.f2-login-page { display:grid; grid-template-columns:minmax(0,1fr) 360px; gap:18px; }
.auth-form,.f2-register-guide,.f2-login-card,.f2-login-aside,.f2-recovery-card { overflow:hidden; }
.form,.auth-form { display:grid; gap:16px; padding:0 24px 24px; }
.form-group { display:grid; gap:8px; }
.terms-label { display:flex; align-items:center; gap:10px; color:var(--muted); }
.terms-label input { width:auto; min-height:auto; }
.f2-register-form-head,.f2-login-card-head { margin:0 -24px 8px; }
.f2-register-form-head strong,.f2-login-card-head h3 { display:block; margin-top:8px; font-size:2rem; font-family:var(--serif); color:var(--text); }
.f2-register-form-head p,.f2-login-card-head p { margin:8px 0 0; color:var(--muted); }
.f2-register-guide,.f2-login-aside { padding:28px; }
.f2-register-guide h3,.f2-login-aside h3 { font-size:2.3rem; line-height:.95; margin:8px 0 14px; }
.f2-register-steps { list-style:none; padding:0; margin:22px 0; display:grid; gap:12px; }
.f2-register-steps li { display:grid; grid-template-columns:42px 1fr; gap:12px; padding:14px; border:1px solid var(--line-soft); background:rgba(0,0,0,.18); }
.f2-register-steps span { color:var(--gold-light); font-family:var(--serif); font-size:1.25rem; }
.f2-register-links,.f2-login-links,.form-actions { display:flex; flex-wrap:wrap; gap:10px; }
.f2-register-links a,.f2-login-links a { padding:12px 14px; border:1px solid var(--line); color:var(--green-soft); text-transform:uppercase; font-weight:900; font-size:.78rem; }

.f2-download-hero { display:grid; grid-template-columns:minmax(0,1fr) 320px; overflow:hidden; }
.f2-download-hero__copy { padding:34px; }
.f2-download-hero__copy h3 { font-size:clamp(2rem,4vw,3.8rem); line-height:.95; margin:8px 0 14px; }
.f2-download-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:20px; }
.f2-download-package { padding:34px; border-left:1px solid var(--line-soft); background:rgba(0,0,0,.18); display:grid; align-content:center; gap:14px; }
.f2-download-package strong { font-family:var(--serif); font-size:2rem; color:var(--text); }
.f2-download-package__grid,.f2-download-info-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.f2-download-package__grid div { padding:14px; border:1px solid var(--line-soft); text-align:center; }
.f2-download-package__grid b { display:block; color:var(--gold-light); }
.f2-download-info-grid { margin-top:18px; }
.f2-download-info-grid article { padding:22px; }
.f2-download-info-grid span { color:var(--gold); text-transform:uppercase; font-weight:900; font-size:.75rem; }

.f2-ranking-tabs,.admin-tabs,.f2-admin-nav-premium { display:flex; flex-wrap:wrap; gap:10px; margin-bottom:18px; }
.f2-ranking-tabs a,.admin-tabs a,.f2-admin-nav-premium a { padding:12px 16px; border:1px solid var(--line); color:var(--text); text-transform:uppercase; font-weight:900; }
.f2-ranking-tabs a.is-active,.admin-tabs a.is-active { border-color:var(--line-gold); color:var(--gold-light); background:rgba(219,176,91,.08); }
.f2-ranking-hero { display:flex; justify-content:space-between; gap:18px; align-items:center; padding:22px; margin-bottom:18px; }
.f2-ranking-hero strong { display:block; font-family:var(--serif); font-size:2rem; color:var(--text); }
.f2-ranking-filter { display:flex; flex-wrap:wrap; gap:10px; align-items:center; }
.f2-podium { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin-bottom:18px; }
.f2-podium-card { padding:24px; text-align:center; }
.f2-podium-card span { display:block; color:var(--gold-light); font-family:var(--serif); font-size:2rem; }
.f2-podium-card strong { display:block; margin:8px 0; font-size:1.2rem; }
.f2-podium-card small { display:none; }
.f2-podium-class { display:flex; align-items:center; justify-content:center; gap:9px; color:var(--muted); }
.f2-podium-class img,.player-class img,.job-icon { width:30px; height:30px; border:1px solid var(--line); }
table { width:100%; border-collapse:collapse; }
th,td { padding:15px 16px; border-bottom:1px solid var(--line-soft); text-align:left; }
th { color:var(--gold); text-transform:uppercase; font-size:.76rem; letter-spacing:.1em; background:rgba(104,177,139,.07); }
td { color:var(--muted); }
.player-name-cell strong,.player-class strong,.level-cell,.playtime-cell { color:var(--text); }
.player-name-cell small { display:none; }
.f2-rank-badge { display:inline-flex; align-items:center; justify-content:center; min-width:32px; min-height:32px; border:1px solid var(--line); color:var(--gold-light); }
.kingdom-map-icon { max-width:44px; border:1px solid var(--line-soft); }

.f2-panel-welcome,.f2-user-overview,.f2-account-actions-grid,.f2-character-card-grid { display:grid; gap:14px; }
.f2-panel-welcome { grid-template-columns:1fr auto; align-items:center; padding:22px; border:1px solid var(--line); background:var(--panel); margin-bottom:18px; }
.f2-panel-quick-links { display:flex; flex-wrap:wrap; gap:10px; }
.f2-panel-quick-links a,.f2-account-actions-grid a { padding:12px 14px; border:1px solid var(--line); color:var(--text); text-transform:uppercase; font-weight:900; font-size:.78rem; }
.f2-user-overview { grid-template-columns:repeat(3,minmax(0,1fr)); margin-bottom:18px; }
.f2-user-card,.f2-character-card,.account-info-box { padding:18px; border:1px solid var(--line); background:var(--panel); }
.f2-user-card span,.f2-user-card small { display:block; color:var(--muted); }
.f2-user-card strong,.f2-character-level { display:block; color:var(--gold-light); font-family:var(--serif); font-size:1.5rem; }
.f2-account-modern-panel { margin-bottom:18px; overflow:hidden; }
.f2-account-actions-grid,.f2-character-card-grid { grid-template-columns:repeat(2,minmax(0,1fr)); padding:18px; }
.panel-section-wrapper { display:grid; gap:10px; }
.panel-section { cursor:pointer; }
.panel-section-header { position:relative; padding-right:54px; }
.panel-section-header::after { content:"+"; position:absolute; right:20px; top:50%; transform:translateY(-50%); color:var(--gold-light); }
.panel-section.active .panel-section-header::after { content:"-"; }
.panel-section-content { padding:18px; }

.f2-support-center { display:grid; gap:18px; }
.f2-support-hero-panel { padding:28px; display:grid; grid-template-columns:1fr auto; gap:18px; }
.f2-support-hero-copy h2 { font-size:3rem; line-height:.95; }
.f2-support-hero-stats { display:grid; grid-template-columns:repeat(2,140px); gap:10px; }
.f2-support-hero-stats a,.f2-support-pill,.f2-ticket-priority { padding:12px; border:1px solid var(--line); background:rgba(0,0,0,.18); }
.f2-support-workspace { display:grid; grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr); gap:18px; }
.f2-support-panel-body,.f2-support-history-list,.f2-faq-accordion { padding:22px; }
.f2-support-form-row,.f2-ticket-filters,.f2-support-admin-row { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.f2-ticket-card,.f2-support-ticket-card,.f2-faq-item,.f2-support-issue { padding:18px; margin-bottom:12px; border:1px solid var(--line-soft); background:rgba(0,0,0,.18); }
.f2-ticket-history-head,.f2-ticket-head,.f2-support-admin-head { display:flex; justify-content:space-between; gap:16px; border-bottom:1px solid var(--line-soft); padding-bottom:14px; margin-bottom:14px; }
.f2-support-bubble { padding:14px; border:1px solid var(--line-soft); background:rgba(0,0,0,.2); }
.f2-faq-item summary { cursor:pointer; list-style:none; color:var(--text); font-weight:900; }

.f2-admin-command-center,.admin-stats-grid,.f2-ticket-stats,.f2-support-admin-create-grid,.f2-support-admin-manage-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin-bottom:18px; }
.f2-admin-command-card,.admin-stat-card { padding:20px; }
.f2-admin-command-card strong,.admin-stat-card__value { display:block; color:var(--gold-light); font-family:var(--serif); font-size:2rem; }
.alert,.alert-banner,.f2-support-alert { padding:14px 18px; border:1px solid var(--line-gold); background:rgba(80,44,26,.65); color:var(--text); margin-bottom:14px; }
.pagination { display:flex; flex-wrap:wrap; gap:8px; margin-top:18px; }
.f2-footer { width:min(100% - 54px,1220px); margin:0 auto 42px; display:flex; justify-content:space-between; gap:20px; padding:24px; border-top:1px solid var(--line); color:var(--muted); }
.f2-footer nav { display:flex; flex-wrap:wrap; gap:14px; }

@media (max-width:1120px) {
	.f2-hero-inner,body:not(.is-home-page) .f2-hero-inner { grid-template-columns:1fr; grid-template-areas:"brand" "account" "download" "toplist"; }
	.f2-hero-copy { min-height:auto; padding-top:30px; }
	.f2-server-status,.f2-content-grid,.f2-register-layout,.f2-login-page,.f2-download-hero,.f2-support-workspace { grid-template-columns:1fr; }
	.f2-download-package { border-left:0; border-top:1px solid var(--line-soft); }
}
@media (max-width:760px) {
	.f2-header { position:relative; padding:10px; }
	.f2-nav { justify-content:flex-start; overflow-x:auto; gap:6px; }
	.f2-nav > a,.f2-language-switcher a { min-height:38px; padding:0 11px; }
	.f2-hero { padding-top:28px; }
	.f2-hero-inner,.f2-server-status,.f2-content-grid,.f2-footer { width:min(100% - 24px,1220px); }
	.f2-logo-stage { width:min(360px,86vw); }
	.f2-hero-copy h1 { font-size:2.7rem; }
	.f2-server-metrics,.f2-podium,.f2-download-info-grid,.f2-download-package__grid,.f2-user-overview,.f2-account-actions-grid,.f2-character-card-grid,.f2-admin-command-center,.admin-stats-grid,.f2-ticket-stats,.f2-support-admin-create-grid,.f2-support-admin-manage-grid,.f2-support-hero-stats,.f2-support-form-row,.f2-ticket-filters,.f2-support-admin-row { grid-template-columns:1fr; }
	.f2-panel-welcome,.f2-support-hero-panel { grid-template-columns:1fr; }
	.f2-footer { display:grid; }
	table,thead,tbody,th,td,tr { display:block; }
	thead { display:none; }
	td { display:flex; justify-content:space-between; gap:16px; }
	td::before { content:attr(data-label); color:var(--gold); text-transform:uppercase; font-weight:900; font-size:.72rem; }
}

/* Inner pages keep the same functions, but use a compact page shell. */
body.is-inner-page .f2-hero {
	padding: 34px 0 12px;
}
body.is-inner-page .f2-hero-inner {
	width: min(100% - 54px, 1220px);
	grid-template-columns: 1fr;
	grid-template-areas: "brand";
}
body.is-inner-page .f2-hero-copy {
	min-height: 190px;
	padding: 18px;
}
body.is-inner-page .f2-logo-stage {
	width: min(320px, 62vw);
	margin-bottom: 8px;
}
body.is-inner-page .f2-hero-copy h1,
body.is-inner-page .f2-hero-copy > p:not(.f2-kicker),
body.is-inner-page .f2-hero-copy .f2-actions,
body.is-inner-page .f2-account-panel {
	display: none;
}
body.is-inner-page .f2-server-status {
	display: none;
}
body.is-inner-page .f2-content-grid {
	grid-template-columns: minmax(0, 1fr);
	width: min(100% - 54px, 1180px);
	margin-top: 18px;
}
body.is-inner-page .f2-side {
	display: none;
}
body.is-inner-page .f2-section-head {
	text-align: center;
}
body.is-inner-page .f2-section-head h2 {
	font-size: clamp(2rem, 4vw, 3.3rem);
}
body.is-inner-page .f2-content-panel {
	padding: 0;
}
body.is-inner-page .auth-wrapper,
body.is-inner-page .f2-download-page,
body.is-inner-page .f2-ranking-page,
body.is-inner-page .f2-support-center {
	padding: 22px;
}
@media (max-width: 760px) {
	body.is-inner-page .f2-hero-inner,
	body.is-inner-page .f2-content-grid {
		width: min(100% - 24px, 1180px);
	}
}

/* Baerim-style refinement: warmer palette, login on the left, tighter panels. */
:root {
	--bg: #040302;
	--deep: #090504;
	--deep-2: #120807;
	--panel: rgba(12, 7, 5, .9);
	--panel-2: rgba(22, 11, 8, .9);
	--line: rgba(183, 120, 47, .34);
	--line-soft: rgba(183, 120, 47, .18);
	--line-gold: rgba(238, 190, 94, .55);
	--green: #927848;
	--green-soft: #e5c47b;
	--gold: #d6a34a;
	--gold-light: #ffe2a0;
	--red: #7a251d;
	--text: #f3eadb;
	--muted: #b9aa94;
	--dim: #82715e;
	--shadow: 0 30px 90px rgba(0, 0, 0, .62);
}
body {
	background:
		linear-gradient(180deg, rgba(8, 3, 2, .18), rgba(5, 3, 2, .94) 780px, #030201 100%),
		linear-gradient(90deg, rgba(0, 0, 0, .82), transparent 34%, transparent 66%, rgba(0, 0, 0, .82)),
		url("../img/bg.jpg") center top / cover fixed no-repeat;
}
body::before {
	background:
		radial-gradient(circle at 50% 12%, rgba(214, 163, 74, .16), transparent 360px),
		radial-gradient(circle at 18% 24%, rgba(122, 37, 29, .18), transparent 430px),
		linear-gradient(rgba(214, 163, 74, .025) 1px, transparent 1px),
		linear-gradient(90deg, rgba(214, 163, 74, .018) 1px, transparent 1px);
	background-size: auto, auto, 64px 64px, 64px 64px;
}
.f2-header {
	background: linear-gradient(180deg, rgba(8, 5, 4, .97), rgba(8, 5, 4, .84));
	border-bottom-color: rgba(214, 163, 74, .38);
}
.f2-nav > a,
.f2-language-switcher a {
	background: rgba(18, 9, 7, .78);
	color: #d8cbbb;
}
.f2-nav > a:hover,
.f2-nav > a.is-active,
.f2-language-switcher a:hover,
.f2-language-switcher a.is-active {
	border-color: var(--line-gold);
	background: linear-gradient(180deg, rgba(214, 163, 74, .2), rgba(28, 13, 8, .68));
	color: var(--gold-light);
}
body.is-home-page .f2-hero {
	padding-top: 54px;
}
body.is-home-page .f2-hero-inner {
	width: min(100% - 56px, 1240px);
	grid-template-columns: 300px minmax(440px, 1fr) 300px;
	grid-template-areas:
		"account brand toplist"
		"download brand toplist";
	gap: 18px 24px;
	align-items: stretch;
}
body.is-home-page .f2-account-panel {
	grid-area: account;
	min-height: 286px;
	padding: 26px;
}
body.is-home-page .f2-home-download-panel {
	grid-area: download;
	min-height: 286px;
}
body.is-home-page .f2-home-toplist-panel {
	grid-area: toplist;
	min-height: 590px;
}
body.is-home-page .f2-hero-copy {
	min-height: 590px;
	padding: 20px 12px;
}
body.is-home-page .f2-logo-stage {
	width: min(460px, 46vw);
	margin-bottom: 18px;
}
body.is-home-page .f2-hero-copy h1 {
	font-size: clamp(3.3rem, 5.4vw, 5.4rem);
	line-height: .92;
	max-width: 590px;
}
body.is-home-page .f2-hero-copy > p:not(.f2-kicker) {
	max-width: 560px;
	font-size: 1rem;
}
.f2-faith-card,
.f2-account-panel,
.f2-content-panel,
.f2-side .f2-widget,
.f2-server-status,
.f2-server-status__main,
.f2-channel-board,
.news-item,
.panel-section,
.panel-section-content,
.account-info-box,
.f2-user-card,
.f2-account-modern-panel,
.ranking-table-wrapper,
.f2-podium-card,
.f2-ranking-hero,
.f2-download-hero,
.f2-download-info-grid article,
.auth-form,
.f2-register-guide,
.f2-login-card,
.f2-login-aside,
.f2-recovery-card,
.f2-support-panel,
.f2-support-hero-panel,
.f2-support-ticket-card,
.f2-support-empty-card,
.f2-faq-item,
.f2-admin-command-card,
.admin-stat-card,
.box,
.table-wrapper {
	border-color: rgba(214, 163, 74, .34);
	background:
		linear-gradient(180deg, rgba(214, 163, 74, .075), transparent 28%),
		linear-gradient(135deg, rgba(122, 37, 29, .18), transparent 48%),
		rgba(10, 6, 4, .91);
	box-shadow: var(--shadow), inset 0 1px rgba(255, 226, 160, .05);
}
.f2-faith-card-head,
.f2-widget-title,
.f2-section-head,
.f2-server-status__head,
.f2-support-panel-head,
.f2-login-card-head,
.f2-register-form-head,
.f2-account-modern-head,
.panel-section-header,
.account-info-header {
	border-bottom-color: rgba(214, 163, 74, .22);
	background: linear-gradient(90deg, rgba(122, 37, 29, .22), transparent 70%);
}
.f2-kicker,
.f2-download-kicker,
.f2-login-kicker,
.f2-ranking-hero span,
.f2-widget-title span,
.f2-faith-card-head span,
.f2-section-head .f2-kicker,
label,
.form-label {
	color: var(--gold);
}
.f2-hero-copy > .f2-kicker {
	color: var(--gold-light);
}
.f2-btn,
.btn,
button[type="submit"],
input[type="submit"],
.f2-home-download-main {
	border-color: rgba(255, 226, 160, .68);
	background: linear-gradient(180deg, #ffe9ad 0%, #dba74b 43%, #8b5b25 100%);
	box-shadow: 0 18px 42px rgba(214, 163, 74, .24), inset 0 1px rgba(255,255,255,.34);
}
.f2-btn:not(.f2-btn-primary),
.f2-btn-discord,
.f2-home-download-link,
.f2-home-panel-link,
.f2-panel-links a,
.f2-link-slots a,
.f2-link-slot-disabled,
.pagination-btn,
.pagination-current {
	background: rgba(9, 5, 3, .78);
	border-color: rgba(214, 163, 74, .28);
}
.f2-home-download-link:hover,
.f2-home-panel-link:hover,
.f2-panel-links a:hover,
.f2-link-slots a:hover {
	border-color: var(--line-gold);
	background: rgba(214, 163, 74, .1);
}
body.is-home-page .f2-account-panel h2 {
	font-size: 1.8rem;
}
body.is-home-page .f2-panel-links {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}
body.is-home-page .f2-panel-links a {
	justify-content: flex-start;
	min-height: 44px;
}
body.is-home-page .f2-login-form input {
	min-height: 43px;
}
body.is-home-page .f2-login-form button {
	min-height: 48px;
}
body.is-home-page .f2-home-download-main {
	min-height: 64px;
}
body.is-home-page .f2-home-download-link,
body.is-home-page .f2-home-panel-link {
	min-height: 46px;
}
body.is-home-page .f2-home-toplist-body li {
	min-height: 46px;
}
body.is-home-page .f2-server-status {
	width: min(100% - 56px, 1240px);
}
.f2-channel-load i,
.f2-channel-row i span {
	background: linear-gradient(90deg, #b98438, #ffe2a0) !important;
}
.f2-channel-row em,
.f2-server-pill,
.f2-home-toplist-body li span {
	color: var(--gold-light);
}
.f2-server-pill i {
	background: var(--gold-light);
	box-shadow: 0 0 16px rgba(214, 163, 74, .65);
}
@media (max-width: 1120px) {
	body.is-home-page .f2-hero-inner {
		grid-template-columns: 1fr;
		grid-template-areas: "brand" "account" "download" "toplist";
	}
	body.is-home-page .f2-home-toplist-panel,
	body.is-home-page .f2-hero-copy,
	body.is-home-page .f2-account-panel,
	body.is-home-page .f2-home-download-panel {
		min-height: auto;
	}
}

/* Premium homepage rebuild v1.5 */
:root {
	--f2-ink: #070302;
	--f2-panel: rgba(20, 9, 5, .82);
	--f2-panel-strong: rgba(35, 14, 7, .9);
	--f2-brown: #4a1e10;
	--f2-brown-soft: #7a3a1e;
	--f2-gold: #d6a34a;
	--f2-gold-light: #ffe4a5;
	--f2-line: rgba(214, 163, 74, .36);
	--f2-muted: #c9b99d;
}

body.is-home-page {
	background-color: var(--f2-ink);
	color: #f5ead8;
}

body.is-home-page .f2-shell {
	max-width: none;
	padding: 0 0 64px;
}

body.is-home-page .f2-hero {
	min-height: 720px;
	padding: 72px clamp(28px, 4vw, 72px) 28px;
	position: relative;
	overflow: hidden;
}

body.is-home-page .f2-hero::before {
	content: "";
	position: absolute;
	inset: 0;
	background:
		radial-gradient(circle at 50% 30%, rgba(214, 163, 74, .12), transparent 28%),
		linear-gradient(90deg, rgba(0, 0, 0, .25), transparent 18%, transparent 82%, rgba(0, 0, 0, .38)),
		linear-gradient(180deg, rgba(5, 2, 1, .2), rgba(5, 2, 1, .72) 82%, #070302 100%);
	pointer-events: none;
	z-index: 1;
}

body.is-home-page .f2-hero-inner--premium {
	position: relative;
	z-index: 2;
	width: min(100%, 1320px);
	margin: 0 auto;
	display: grid;
	grid-template-columns: minmax(260px, 315px) minmax(460px, 1fr) minmax(260px, 315px);
	grid-template-areas: "left center right";
	gap: clamp(22px, 2.4vw, 36px);
	align-items: center;
}

body.is-home-page .f2-home-left-stack,
body.is-home-page .f2-home-right-stack {
	display: grid;
	gap: 18px;
	align-self: center;
}

body.is-home-page .f2-home-left-stack { grid-area: left; }
body.is-home-page .f2-home-right-stack { grid-area: right; }
body.is-home-page .f2-hero-copy--premium { grid-area: center; }

body.is-home-page .f2-home-card,
body.is-home-page .f2-account-panel,
body.is-home-page .f2-home-toplist-panel,
body.is-home-page .f2-home-download-panel {
	position: relative;
	min-height: 0;
	border: 1px solid var(--f2-line);
	background:
		linear-gradient(145deg, rgba(79, 28, 13, .82), rgba(8, 4, 2, .88) 48%, rgba(18, 9, 5, .92)),
		var(--f2-panel);
	box-shadow: 0 28px 80px rgba(0, 0, 0, .48), inset 0 1px rgba(255, 230, 175, .08);
	padding: 22px 24px;
	overflow: hidden;
}

body.is-home-page .f2-home-card::before,
body.is-home-page .f2-account-panel::before {
	content: "";
	position: absolute;
	inset: 0 0 auto 0;
	height: 58px;
	background: linear-gradient(90deg, rgba(114, 45, 22, .58), rgba(214, 163, 74, .12), transparent);
	pointer-events: none;
}

body.is-home-page .f2-card-glow {
	position: absolute;
	right: -70px;
	top: -80px;
	width: 180px;
	height: 180px;
	background: radial-gradient(circle, rgba(214, 163, 74, .16), transparent 68%);
	pointer-events: none;
}

body.is-home-page .f2-kicker,
body.is-home-page .f2-home-card .f2-kicker {
	position: relative;
	margin: 0 0 8px;
	color: var(--f2-gold);
	font-size: .72rem;
	font-weight: 800;
	letter-spacing: .12em;
	text-transform: uppercase;
}

body.is-home-page .f2-home-card h2,
body.is-home-page .f2-account-panel h2,
body.is-home-page .f2-home-toplist-panel h2,
body.is-home-page .f2-home-download-panel h2 {
	position: relative;
	margin: 0 0 18px;
	font-family: Cinzel, Georgia, serif;
	font-size: clamp(1.35rem, 1.5vw, 1.75rem);
	line-height: 1.05;
	color: #fff4dc;
	text-shadow: 0 2px 16px rgba(0,0,0,.55);
}

body.is-home-page .f2-login-form {
	position: relative;
	display: grid;
	gap: 10px;
}

body.is-home-page .f2-login-form input,
body.is-home-page .f2-local-captcha-box input {
	width: 100%;
	height: 42px;
	border: 1px solid rgba(214, 163, 74, .28);
	background: rgba(5, 2, 1, .72);
	color: #f4ead9;
	padding: 0 14px;
	outline: none;
}

body.is-home-page .f2-login-form input:focus,
body.is-home-page .f2-local-captcha-box input:focus {
	border-color: rgba(255, 228, 165, .72);
	box-shadow: 0 0 0 3px rgba(214, 163, 74, .12);
}

body.is-home-page .f2-local-captcha-box {
	display: grid;
	grid-template-columns: 92px 1fr;
	gap: 8px;
}

body.is-home-page .f2-local-captcha-box span {
	display: grid;
	place-items: center;
	border: 1px solid rgba(214, 163, 74, .28);
	background: rgba(5, 2, 1, .72);
	color: var(--f2-gold-light);
	font-weight: 800;
}

body.is-home-page .f2-login-form button,
body.is-home-page .f2-btn-primary,
body.is-home-page .f2-home-download-main {
	height: 52px;
	border: 1px solid rgba(255, 235, 184, .86);
	background: linear-gradient(180deg, #fff0b9 0%, #dba64b 45%, #8d5521 100%);
	color: #140804;
	font-weight: 900;
	text-transform: uppercase;
	box-shadow: 0 16px 38px rgba(214, 163, 74, .24), inset 0 1px rgba(255, 255, 255, .45);
}

body.is-home-page .f2-panel-links {
	position: relative;
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
	margin-top: 12px;
}

body.is-home-page .f2-panel-links a,
body.is-home-page .f2-home-download-link,
body.is-home-page .f2-home-panel-link,
body.is-home-page .f2-btn:not(.f2-btn-primary) {
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-height: 44px;
	border: 1px solid rgba(214, 163, 74, .24);
	background: rgba(8, 3, 2, .58);
	padding: 0 12px;
	color: #fff1d7;
	font-size: .78rem;
	font-weight: 800;
	text-transform: uppercase;
	text-decoration: none;
}

body.is-home-page .f2-home-download-body {
	position: relative;
	display: grid;
	gap: 10px;
}

body.is-home-page .f2-home-download-link small,
body.is-home-page .f2-btn small {
	color: var(--f2-muted);
	font-size: .68rem;
	font-weight: 700;
	text-transform: none;
}

body.is-home-page .f2-hero-copy--premium {
	min-height: 560px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	padding: 24px clamp(16px, 2.2vw, 36px);
	background: radial-gradient(ellipse at center, rgba(0, 0, 0, .16), transparent 62%);
}

body.is-home-page .f2-logo-stage {
	width: min(100%, 480px);
	margin: 0 auto 16px;
}

body.is-home-page .f2-logo {
	width: 100%;
	filter: drop-shadow(0 24px 42px rgba(0, 0, 0, .74)) drop-shadow(0 0 18px rgba(214, 163, 74, .18));
}

body.is-home-page .f2-hero-copy--premium h1 {
	max-width: 620px;
	margin: 4px auto 18px;
	font-family: Cinzel, Georgia, serif;
	font-size: clamp(3.15rem, 5vw, 6.2rem);
	line-height: .95;
	color: #fff6e7;
	text-shadow: 0 18px 48px rgba(0,0,0,.72);
}

body.is-home-page .f2-hero-copy--premium > p:not(.f2-kicker) {
	max-width: 560px;
	margin: 0 auto 24px;
	color: #d6c7ad;
	font-size: 1rem;
	line-height: 1.65;
}

body.is-home-page .f2-actions {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 12px;
}

body.is-home-page .f2-actions .f2-btn {
	min-width: 150px;
}

body.is-home-page .f2-home-toplist-body {
	position: relative;
	list-style: none;
	padding: 0;
	margin: 0 0 16px;
	display: grid;
}

body.is-home-page .f2-home-toplist-body li {
	display: grid;
	grid-template-columns: 34px 1fr auto;
	align-items: center;
	gap: 10px;
	min-height: 48px;
	border-bottom: 1px solid rgba(214, 163, 74, .17);
	color: #fff0d4;
}

body.is-home-page .f2-home-toplist-body li b {
	color: var(--f2-gold-light);
	font-family: Cinzel, Georgia, serif;
	font-size: 1rem;
}

body.is-home-page .f2-home-toplist-body li span {
	color: var(--f2-gold-light);
	font-size: .78rem;
	font-weight: 900;
}

body.is-home-page .f2-server-status {
	position: relative;
	z-index: 2;
	width: min(100% - 56px, 1320px);
	margin: -8px auto 26px;
	border: 1px solid var(--f2-line);
	background:
		linear-gradient(90deg, rgba(74, 30, 16, .78), rgba(8, 4, 2, .86) 48%, rgba(29, 12, 7, .9)),
		rgba(10, 4, 2, .9);
	box-shadow: 0 28px 80px rgba(0,0,0,.42);
}

body.is-home-page .f2-server-status__head h2 {
	font-family: Cinzel, Georgia, serif;
	color: #fff4dc;
}

body.is-home-page .f2-server-metrics strong,
body.is-home-page .f2-channel-row em,
body.is-home-page .f2-server-pill {
	color: var(--f2-gold-light);
}

body.is-home-page .f2-channel-load i {
	background: linear-gradient(90deg, #8c5524, #ffe0a0) !important;
}

body.is-home-page .f2-content-grid {
	width: min(100% - 56px, 1320px);
	margin: 0 auto;
}

@media (max-width: 1180px) {
	body.is-home-page .f2-hero-inner--premium {
		grid-template-columns: minmax(280px, 360px) minmax(420px, 1fr);
		grid-template-areas: "left center" "right center";
		align-items: start;
	}

	body.is-home-page .f2-hero-copy--premium {
		min-height: 620px;
	}
}

@media (max-width: 860px) {
	body.is-home-page .f2-hero {
		padding: 42px 18px 22px;
	}

	body.is-home-page .f2-hero-inner--premium {
		grid-template-columns: 1fr;
		grid-template-areas: "center" "left" "right";
	}

	body.is-home-page .f2-hero-copy--premium {
		min-height: auto;
		padding-top: 18px;
	}

	body.is-home-page .f2-hero-copy--premium h1 {
		font-size: clamp(2.5rem, 12vw, 4rem);
	}

	body.is-home-page .f2-server-status,
	body.is-home-page .f2-content-grid {
		width: calc(100% - 28px);
	}
}
