/* Extracted global navigation, header, footer, drawer, banner styles */
:root { --top-nav-height: 64px; }
body { margin:0; padding:0; }
html, body { scrollbar-width:none; -ms-overflow-style:none; }
html::-webkit-scrollbar, body::-webkit-scrollbar { width:0; height:0; display:none; }
nav { position:sticky !important; z-index:120000 !important; top:0; margin:0 !important; min-height:var(--top-nav-height); background:#000; color:#fff; display:grid; grid-template-columns:1fr auto; align-items:center; padding:0 16px; isolation:isolate; }
footer { position:relative; z-index:1000; }
.ke-layout-footer {
	position: fixed !important;
	left: 0 !important;
	right: 0 !important;
	bottom: 0 !important;
	width: 100% !important;
	height: 0 !important;
	overflow: visible !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	display: block !important;
}
.brand { display:inline-flex; align-items:center; min-height:var(--top-nav-height); gap:12px; padding:0 12px; color:#fff; text-decoration:none; font-weight:800; letter-spacing:.2px; border:none; border-radius:12px; background:none; position:relative; z-index:2; transform:none; transition:opacity 180ms ease; }
.brand::before { content:""; display:none; }
.brand:hover { opacity:0.85; }
.brand:active { opacity:0.7; }
.brand-logo { height:clamp(42px, 5.5vh, 52px); width:auto; object-fit:contain; }
.brand .wordmark { font-size:clamp(21px,2.6vw,29px); line-height:1.15; color:#f5f5f5; font-family:'Inter', 'Segoe UI', -apple-system, BlinkMacSystemFont, system-ui, sans-serif; font-weight:600; letter-spacing:0.3px; position:relative; }
.nav-right { position:relative; display:flex; align-items:center; min-height:var(--top-nav-height); gap:8px; white-space:nowrap; z-index:3000; color:#eee; justify-self:end; }
.nav-right a { text-decoration:none; font-size:22px; line-height:1; display:inline-flex; align-items:center; color:inherit; padding:4px; border-radius:8px; -webkit-tap-highlight-color:transparent; position:relative; flex:0 0 auto; }
.nav-right a:hover, .nav-right a:focus-visible { background:rgba(255,255,255,0.12); outline:none; }
.nav-right .badge {
	position:absolute;
	top:-7px;
	right:-6px;
	background:#e53935;
	color:#fff;
	font-weight:700;
	font-size:10px;
	line-height:1;
	height:18px;
	min-width:18px;
	padding:0 5px;
	border-radius:999px;
	text-align:center;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	box-shadow:0 0 0 2px #000;
}
.nav-right .avatar-thumb{width:28px;height:28px;border-radius:50%;background:#222;background-size:cover;background-position:center;background-repeat:no-repeat;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-weight:700;overflow:hidden}
.nav-right .avatar-thumb .avatar-fallback{font-size:13px;line-height:1}
.nav-right .avatar_toggle{display:inline-flex; flex-direction:column; align-items:center; gap:2px}
.nav-right .mode-under-avatar{ position:static; font-size:11px; line-height:1; color:#bbb; margin-top:2px }
@media (max-width:480px){ nav{ padding:0 12px; } .nav-right{ gap:4px; } .nav-right a{ padding:2px; font-size:20px; } .nav-right .toggle_button{ width:32px; height:32px; padding:2px; } }
#toggle_button { display:none; }
.toggle_button, .nav-right .toggle_button { display:inline-flex; align-items:center; justify-content:center; padding:4px; cursor:pointer; position:static !important; margin:0; color:#fff; width:auto; height:auto; border-radius:8px; }
.toggle_button:hover, .nav-right .toggle_button:hover, .nav-right .toggle_button:focus-visible { background:rgba(255,255,255,0.12); }
.nav-drawer { position:fixed; top:0; right:0; bottom:0; width:min(86vw,380px); height:100dvh; max-height:100dvh; background:#000; color:#fff; transform:translateX(100%); transition:transform .2s ease; box-shadow:-8px 0 20px rgba(0,0,0,.4); overflow:hidden; overscroll-behavior:contain; touch-action:pan-y; -webkit-overflow-scrolling:touch; z-index:120101 !important; display:flex; flex-direction:column; }
.nav-overlay { position:fixed; inset:0; background:rgba(0,0,0,.45); backdrop-filter:blur(2px); opacity:0; visibility:hidden; transition:opacity .2s ease; z-index:120100 !important; pointer-events:none; touch-action:none; }
#toggle_button:checked + label + .nav-drawer { transform:translateX(0); }
#toggle_button:checked + label + .nav-drawer + .nav-overlay { opacity:1; visibility:visible; pointer-events:auto; }
body.drawer-open { overflow:hidden; }
.nav-drawer .nav-drawer-header{position:sticky;top:0;z-index:1;background:rgba(0,0,0,.95);backdrop-filter:saturate(120%) blur(6px);border-bottom:1px solid #1f1f1f;padding:12px 14px 10px}
.nav-drawer .nav-drawer-header .row{display:flex;align-items:center;justify-content:space-between;gap:10px}
.nav-drawer .nav-drawer-header .avatar{width:28px;height:28px;border-radius:50%;background:#222;color:#aaa;display:flex;align-items:center;justify-content:center;font-weight:700}
.nav-drawer .nav-drawer-header .who{display:flex;align-items:center;gap:10px;min-width:0;flex:1 1 auto;color:#fff;text-decoration:none;border-radius:8px;transition:background .15s}
.nav-drawer .nav-drawer-header .who:hover{background:#000}
.nav-drawer .nav-drawer-header .avatar-stack{display:flex;align-items:center;justify-content:center;flex:0 0 auto}
.nav-drawer .nav-drawer-header .meta{display:flex;flex-direction:column;min-width:0;gap:2px}
.nav-drawer .nav-drawer-header .drawer-greeting{font-size:33px;line-height:1.05;font-weight:700;letter-spacing:.15px;color:#f8f8f8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nav-drawer .nav-drawer-header .drawer-network-name{font-size:15px;line-height:1.2;font-weight:500;color:#b7b7b7;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nav-drawer .nav-drawer-header .drawer-close-avatar{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;cursor:pointer;width:42px;height:42px;border-radius:999px;border:1px solid #262626;background:#0a0a0a;box-shadow:inset 0 1px 0 rgba(255,255,255,.05)}
.nav-drawer .nav-drawer-header .drawer-close-avatar .avatar-thumb{width:34px;height:34px;border-radius:50%;background:#222;background-size:cover;background-position:center;background-repeat:no-repeat;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-weight:700;overflow:hidden}
.nav-drawer .nav-drawer-header .drawer-close-avatar .avatar-fallback{font-size:13px;line-height:1}
.nav-drawer .nav-drawer-header .drawer-close-avatar:hover{background:#131313;border-color:#333}
.nav-drawer .menu{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;padding-bottom:calc(env(safe-area-inset-bottom,0px) + var(--bottom-nav-height) + var(--footer-height) + 16px);}
.nav-drawer .menu::-webkit-scrollbar{width:0;height:0;display:none}
.nav-drawer .menu h3{
  font-size:20px !important;
  line-height:1.2 !important;
  font-weight:800 !important;
  margin:14px 14px 8px !important;
}
.nav-drawer .menu > a { display:block; padding:10px 12px; color:#fff; text-decoration:none; border-radius:12px; border:1px solid #1f1f1f; margin:10px 14px; font-size:15px; line-height:1.25; }
.nav-drawer .menu > a + a { margin-top:2px; }
.nav-drawer .menu a:hover { background:rgba(255,255,255,.08); }
.nav-drawer .sep { height:1px; background:#1f1f1f; margin:12px 14px; border-radius:1px; }
.nav-drawer details { border:1px solid #1f1f1f; border-radius:12px; margin:10px 14px; overflow:hidden; background:#000; }
.nav-drawer summary { cursor:pointer; padding:10px 12px; font-weight:600; list-style:none; display:flex; align-items:center; gap:8px; font-size:15px; line-height:1.25; }
.nav-drawer summary::after{ content:'›'; margin-left:auto; transition:transform .2s ease; color:#888; }
.nav-drawer details[open] summary::after { transform:rotate(90deg); }
.nav-drawer .submenu { padding:6px 8px 12px; background:#000; }
.nav-drawer .submenu a { display:block; padding:8px 12px; font-size:15px; line-height:1.25; border-radius:10px; color:#fff; text-decoration:none; }
.nav-drawer .menu > a,
.nav-drawer .logout-link {
	font-size:17px !important;
	line-height:1.3 !important;
	font-weight:700 !important;
}
.nav-drawer summary {
	font-size:16px !important;
	line-height:1.3 !important;
	font-weight:700 !important;
}
.nav-drawer .submenu a {
	font-size:15px !important;
	line-height:1.35 !important;
	font-weight:500 !important;
	color:#e7e7e7 !important;
}
@media (max-width:480px){
	.nav-drawer .menu h3{ font-size:19px !important; }
	.nav-drawer .menu > a,
	.nav-drawer .logout-link{ font-size:16px !important; }
	.nav-drawer summary{ font-size:15.5px !important; }
	.nav-drawer .submenu a{ font-size:14.5px !important; }
}
.mode-chip{display:inline-block;padding:4px 8px;border-radius:999px;border:1px solid #2a2a2a;background:#000;color:#ddd;font-size:12px;margin-left:8px}
.global-footer{position:fixed;bottom:var(--bottom-nav-height,60px);left:0;right:0;background:#000 !important;color:#ddd;border-top:0 !important;z-index:2500}
.global-footer .gf-inner{max-width:960px;margin:0 auto;padding:10px 14px;display:flex;align-items:center;justify-content:center;gap:10px;font-size:13px}
.legal-link{color:#FFA726;text-decoration:none;font-weight:600}
.legal-link:hover{color:#FFB347;text-decoration:underline}
@media (max-width: 640px){
	.global-footer .gf-inner{
		padding:10px 12px;
		flex-wrap:wrap;
		row-gap:6px;
		column-gap:12px;
	}
	.global-footer .gf-inner > span[style*="opacity:.6"]{
		display:none;
	}
	.global-footer .legal-link{
		display:inline-flex;
		align-items:center;
		justify-content:center;
		min-height:24px;
		line-height:1.2;
	}
}
.navbar{position:fixed;left:0;right:0;bottom:0;z-index:2400}
.navbar-ghost{position:fixed;left:0;right:0;bottom:0;height:var(--bottom-nav-height,60px);background:#000;z-index:2300}
.ke-page-content { padding-bottom:calc(var(--bottom-nav-height,60px) + var(--footer-height,42px) + 20px); }
.ke-global-banner{position:fixed;top:56px;left:50%;transform:translateX(-50%);background:#000;color:#fff;border:1px solid #2b3a50;padding:10px 14px;border-radius:8px;z-index:3500;box-shadow:0 6px 18px rgba(0,0,0,.25)}
