/* Header component — stable layout + consolidated polish/portal behavior. */
#site-header{position:fixed;inset:0 0 auto;height:var(--header-h);z-index:50;background:rgba(7,3,18,.55);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:background var(--t-med) var(--ease),box-shadow var(--t-med) var(--ease),backdrop-filter var(--t-med)}
#site-header::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--grad-line);opacity:.55;transition:opacity var(--t-med)}
#site-header.scrolled{background:rgba(7,3,18,.86);backdrop-filter:blur(20px) saturate(1.4);-webkit-backdrop-filter:blur(20px) saturate(1.4);box-shadow:0 12px 40px rgba(3,0,16,.55)}
#site-header.scrolled::after{opacity:1}
.nav-wrap{height:100%;display:flex;align-items:center;gap:16px}.brand{display:flex;align-items:center;gap:11px;flex-shrink:0;white-space:nowrap;position:relative}.brand img{width:44px;height:44px;object-fit:contain;filter:drop-shadow(0 0 10px rgba(134,66,255,.65));transition:transform var(--t-med) var(--ease),filter var(--t-med)}.brand:hover img{transform:rotate(-8deg) scale(1.06);filter:drop-shadow(0 0 18px rgba(217,70,239,.8))}.brand .txt{font-family:var(--display);font-size:1.18rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;background:var(--grad-text);-webkit-background-clip:text;background-clip:text;color:transparent}.nav{display:flex;gap:2px;margin-left:6px}.nav a{position:relative;padding:9px 14px;border-radius:var(--rs);color:var(--muted);font-weight:500;font-size:.92rem;transition:color var(--t-fast) var(--ease),background var(--t-fast)}.nav a::after{content:"";position:absolute;left:14px;right:14px;bottom:4px;height:2px;border-radius:2px;background:var(--grad);transform:scaleX(0);transform-origin:left;transition:transform var(--t-med) var(--ease)}.nav a:hover{color:var(--text)}.nav a:hover::after{transform:scaleX(1)}.nav a.active{color:var(--text-strong);background:var(--grad-soft)}.nav a.active::after{transform:scaleX(1);box-shadow:0 0 8px rgba(134,66,255,.8)}.nav-actions{margin-left:auto;display:flex;align-items:center;gap:9px}.burger{display:none;font-size:1.4rem}.mobile-header-btn,.mobile-header-user,.mobile-search-panel,.mobile-menu{display:none}#random-btn.spin svg{animation:spinOnce .6s var(--ease)}@keyframes spinOnce{from{transform:rotate(0)}to{transform:rotate(360deg)}}.search-box{position:relative;flex:0 1 240px}.search-box .field{padding:9px 14px 9px 36px;border-radius:99px}.search-box::before{content:"";position:absolute;left:13px;top:50%;transform:translateY(-50%);width:15px;height:15px;background:var(--faint);pointer-events:none;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M21 21l-4.3-4.3'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M21 21l-4.3-4.3'/%3E%3C/svg%3E") center/contain no-repeat}.search-drop{position:absolute;top:calc(100% + 8px);left:0;right:0;min-width:280px;background:rgba(11,6,25,.96);backdrop-filter:blur(18px);border:1px solid var(--line);border-radius:var(--rs);overflow:hidden;z-index:70;box-shadow:var(--shadow),var(--glow-soft)}.search-drop a{display:flex;gap:11px;align-items:center;padding:9px 12px;transition:background var(--t-fast)}.search-drop a:hover{background:var(--surface2)}.search-drop img{width:32px;height:43px;object-fit:cover;border-radius:6px}.search-drop small{color:var(--muted)}
@media(max-width:960px){.nav{position:absolute;top:var(--header-h);left:0;right:0;flex-direction:column;background:rgba(11,6,25,.97);backdrop-filter:blur(20px);border-bottom:1px solid var(--line);display:none;padding:12px 14px 16px;gap:4px}#site-header.open .nav{display:flex}.search-box{display:none}}
@media(max-width:720px){#site-header{z-index:50}#site-header .nav-wrap{height:var(--header-h);padding:0 12px;display:grid;grid-template-columns:42px minmax(0,1fr) 40px 40px;align-items:center;gap:7px}#site-header .nav-actions{display:contents}#site-header .desktop-action{display:none!important}#site-header .nav{display:none!important}#site-header .burger{grid-column:1;grid-row:1;display:grid!important;place-items:center;width:40px;height:40px;padding:0;border:1px solid var(--line);border-radius:11px;background:rgba(19,10,38,.78);color:var(--text);font-size:0}#site-header .burger svg{width:21px;height:21px}#site-header .brand{grid-column:2;grid-row:1;justify-self:center;min-width:0;max-width:100%;gap:8px}#site-header .brand img{width:31px;height:31px}#site-header .brand .txt{font-size:.92rem;letter-spacing:.06em;overflow:hidden;text-overflow:ellipsis}#site-header .mobile-header-btn{grid-column:3;grid-row:1;display:grid!important;place-items:center;width:40px;height:40px;padding:0;border:1px solid var(--line);border-radius:11px;background:rgba(19,10,38,.78);color:var(--text)}#site-header .mobile-header-user{grid-column:4;grid-row:1;display:grid!important;place-items:center;width:40px;height:40px;padding:0;border:1px solid var(--line);border-radius:11px;background:rgba(19,10,38,.78);color:var(--text);font-size:0}#site-header .mobile-header-user svg{width:18px;height:18px}.mobile-search-panel[hidden],.mobile-menu[hidden]{display:none!important}.mobile-search-panel{position:fixed;display:block;left:0;right:0;top:var(--header-h);z-index:49;padding:10px 0 12px;background:rgba(9,4,20,.98);border-bottom:1px solid var(--line);box-shadow:0 14px 35px rgba(0,0,0,.36)}.mobile-search-inner{position:relative}.mobile-search-inner>svg{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:var(--faint);pointer-events:none}.mobile-search-inner .field{width:100%;height:44px;padding-left:40px;border-radius:12px}.mobile-search-drop{position:relative;top:7px;left:0;right:auto;z-index:1}.mobile-menu{position:fixed!important;inset:0;z-index:60;display:block;background:rgba(0,0,0,.78)}.mobile-menu-backdrop{position:absolute;inset:0;background:rgba(13,7,20,.94);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.mobile-menu-panel{position:absolute;inset:0;display:flex;flex-direction:column;width:100%;height:100%;padding:18px 18px 22px;background:rgba(13,7,20,.98);overflow-y:auto;overscroll-behavior:contain}.mobile-menu-head{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:52px;padding-bottom:16px;border-bottom:1px solid var(--line)}.mobile-menu-title{display:flex;align-items:center;gap:9px;color:var(--text-strong);font-size:1rem;letter-spacing:.03em}.mobile-menu-close{width:48px;height:48px;display:grid;place-items:center;border:1px solid var(--line);border-radius:13px;background:var(--surface2);color:var(--text)}.mobile-nav{display:flex!important;flex-direction:column;gap:8px;margin:auto 0;padding:24px 0}.mobile-nav a{min-height:58px;padding:0 17px;display:flex;align-items:center;justify-content:space-between;border:1px solid transparent;border-radius:14px;color:var(--muted);background:rgba(255,255,255,.018);font-size:1rem;font-weight:600;transition:background .18s,color .18s,border-color .18s,transform .18s}.mobile-nav a.active{color:var(--text-strong);background:var(--grad-soft);border-color:rgba(134,66,255,.28)}.mobile-nav a:hover{color:var(--text);background:var(--surface2);border-color:var(--line);transform:translateX(2px)}.mobile-nav a span:last-child{color:var(--faint);font-size:1.35rem}.mobile-menu-footer{display:grid;gap:9px;padding-top:18px;border-top:1px solid var(--line)}.mobile-menu-footer-btn{min-height:50px;padding:0 14px;display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:13px;background:rgba(255,255,255,.025);color:var(--muted);font-weight:600;text-align:left}.mobile-menu-footer-btn:hover{color:var(--text);background:var(--surface2)}body.mobile-menu-open{overflow:hidden;touch-action:none}}

/* Header polish consolidated into the component. */
#site-header .nav-wrap{align-items:center}#site-header .nav-actions{align-items:center;min-height:100%}#site-header .search-box{align-self:center}#site-header .search-box .field{height:38px;line-height:1.2}#site-header .desktop-action{align-self:center}#site-header .desktop-action.btn,#site-header #user-btn{min-height:38px;display:inline-flex;align-items:center;justify-content:center;line-height:1}#site-header .desktop-action svg,#site-header #user-btn svg,#site-header .mobile-header-btn svg,#site-header .mobile-header-user svg{display:block;flex:none}#site-header .user-action{display:flex;align-items:center}#site-header{isolation:isolate;background:rgba(7,3,18,.985)!important;backdrop-filter:blur(18px) saturate(1.25)!important;-webkit-backdrop-filter:blur(18px) saturate(1.25)!important;box-shadow:0 10px 30px rgba(3,0,16,.24),0 1px 0 rgba(167,139,250,.08)!important}#site-header.scrolled{background:rgba(7,3,18,.995)!important;backdrop-filter:blur(22px) saturate(1.35)!important;-webkit-backdrop-filter:blur(22px) saturate(1.35)!important;box-shadow:0 14px 42px rgba(3,0,16,.52),0 1px 0 rgba(167,139,250,.12)!important}#site-header .nav-wrap{position:relative;z-index:1}.nav{z-index:2}.search-drop{z-index:90}
@media(max-width:720px){#site-header .nav-wrap{align-items:center}#site-header .mobile-header-btn,#site-header .mobile-header-user,#site-header .burger{align-self:center;display:grid;place-items:center;line-height:1}#site-header .mobile-header-btn svg,#site-header .mobile-header-user svg,#site-header .burger svg{margin:0;transform:none}#site-header .mobile-menu{z-index:1000!important;background:#090411!important;isolation:isolate!important}#site-header .mobile-menu-backdrop{z-index:0!important;background:#090411!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.mobile-menu-panel{z-index:1!important;background:#0d0714!important;opacity:1!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.mobile-menu-head,.mobile-nav,.mobile-menu-footer{position:relative;z-index:2}
.mobile-menu:not([hidden]){position:fixed!important;inset:0!important;z-index:99999!important;width:100vw!important;height:100dvh!important;min-height:100vh!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;background:#0b0617!important}.mobile-menu .mobile-menu-backdrop{position:fixed!important;inset:0!important;z-index:0!important;background:rgba(7,3,18,.97)!important;backdrop-filter:blur(18px)!important;-webkit-backdrop-filter:blur(18px)!important}.mobile-menu .mobile-menu-panel{position:fixed!important;inset:0!important;z-index:1!important;width:100%!important;height:100dvh!important;min-height:100vh!important;box-sizing:border-box!important;padding:calc(var(--header-h) + 18px) 18px 24px!important;background:#0b0617!important;overflow:hidden!important;transform:none!important;display:grid!important;grid-template-rows:auto minmax(0,1fr) auto!important;align-content:stretch!important}.mobile-menu .mobile-menu-head{position:relative!important;z-index:2!important;min-height:58px!important;margin:0!important;padding:0 0 16px!important}.mobile-menu .mobile-nav{position:relative!important;z-index:2!important;display:flex!important;flex-direction:column!important;justify-content:flex-start!important;align-items:stretch!important;gap:10px!important;min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;margin:0!important;padding:22px 0!important}.mobile-menu .mobile-menu-footer{position:relative!important;z-index:2!important;margin:0!important;padding:18px 0 0!important;background:#0b0617!important}.mobile-menu .mobile-menu-close{position:relative;z-index:3!important}.mobile-search-panel:not([hidden]){position:fixed!important;top:var(--header-h)!important;left:10px!important;right:10px!important;z-index:99998!important}
/* Mobile-final-polish migrated: menu/search sizing. */
#site-header .mobile-menu[hidden]{display:none!important}
#site-header .mobile-menu:not([hidden]){position:fixed!important;inset:0!important;z-index:9999!important;display:block!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;background:#0b0617!important;overflow:auto!important}
#site-header .mobile-menu-backdrop{position:fixed!important;inset:0!important;background:rgba(7,3,18,.97)!important;backdrop-filter:blur(18px)!important;-webkit-backdrop-filter:blur(18px)!important}
#site-header .mobile-menu-panel{position:relative!important;inset:auto!important;z-index:1!important;width:100%!important;min-height:100dvh!important;box-sizing:border-box!important;padding:calc(var(--header-h) + 18px) 18px 28px!important;display:flex!important;flex-direction:column!important;background:#0b0617!important;border:0!important;overflow:visible!important;transform:none!important}
#site-header .mobile-menu-head{flex:0 0 auto!important;min-height:54px!important;padding-bottom:14px!important;border-bottom:1px solid var(--line)!important}
#site-header .mobile-menu-close{width:46px!important;height:46px!important;border-radius:14px!important}
#site-header .mobile-nav{flex:0 0 auto!important;justify-content:flex-start!important;overflow:visible!important;gap:10px!important;margin:0!important;padding:24px 0 18px!important}
#site-header .mobile-nav a{min-height:56px!important;border-radius:15px!important;font-size:1.02rem!important}
#site-header .mobile-menu-footer{display:grid!important;grid-template-columns:1fr 1fr!important;gap:9px!important;margin-top:6px!important;padding-top:18px!important;border-top:1px solid var(--line)!important}
#site-header .mobile-menu-footer-btn{min-height:48px!important;justify-content:center!important;text-align:center!important;padding-inline:10px!important;font-size:.75rem!important}
}
