.app-header {
    position: sticky;
    top: 0;
    z-index: 40;
    background: rgba(11, 15, 20, .65);
    backdrop-filter: blur(12px);
    border-bottom: 1px solid var(--line);
}

.header-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 14px 0;
    gap: 14px
}

.header-row { flex-wrap: wrap; }
.brand { min-width: 320px; }
.nav { flex: 1; justify-content: center; }
@media (max-width: 900px){
  .nav { width:100%; justify-content:flex-start; }
}


.brand {
    display: flex;
    align-items: center;
    gap: 12px
}

.brand-mark {
    width: 38px;
    height: 38px;
    border-radius: 12px;
    background: linear-gradient(135deg, rgba(139, 92, 246, 1), rgba(34, 197, 94, 1));
    box-shadow: var(--shadow);
}

.brand-title {
    font-weight: 800;
    letter-spacing: .2px
}

.brand-sub {
    color: var(--muted);
    font-size: .85rem
}

.wr-mark{
  width:42px;
  height:42px;
  border-radius:16px;
  padding:7px;
  background:
    radial-gradient(circle at 30% 30%, rgba(139,92,246,.35), transparent 60%),
    radial-gradient(circle at 70% 70%, rgba(34,197,94,.22), transparent 62%),
    rgba(255,255,255,.04);
  border: 1px solid rgba(255,255,255,.10);
  box-shadow: 0 18px 40px rgba(0,0,0,.40);
  object-fit: contain;
}


.brand {
    display: flex;
    align-items: center;
    gap: 12px;
}


.nav {
    display: flex;
    align-items: center;
    gap: 14px
}

.nav a {
    padding: 8px 10px;
    border-radius: 12px
}

.nav a:hover {
    background: rgba(255, 255, 255, .06)
}

.wrap {
    padding: 28px 0 46px
}

.grid2 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px
}

@media (max-width: 900px) {
    .grid2 {
        grid-template-columns: 1fr
    }
}

.app-footer {
    margin-top: 40px;
    border-top: 1px solid var(--line);
    background: rgba(255, 255, 255, .02);
}

.footer-grid {
    display: grid;
    gap: 16px;
    grid-template-columns: 1.4fr 1fr .7fr;
    padding: 22px 0;
}

@media (max-width: 900px) {
    .footer-grid {
        grid-template-columns: 1fr
    }
}
/* --- Header layout stabilization (prevents sidebar look) --- */
.header-row{
  flex-wrap: wrap;
}

/* Make brand not collapse into a narrow column */
.brand{
  text-decoration: none;
  min-width: 320px;
}

/* Center the nav, let it expand */
.nav{
  flex: 1;
  justify-content: center;
  flex-wrap: wrap;
}

/* Profile area on the right */
.userbox{
  display:flex;
  align-items:center;
  gap:12px;
  margin-left: auto;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.userchip{
  display:flex;
  align-items:center;
  gap:10px;
  padding: 8px 10px;
  border-radius: 16px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.03);
  text-decoration:none;
}

.userchip-avatar{
  width:34px;
  height:34px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.10);
  object-fit:cover;
}

.userchip-meta{
  display:flex;
  flex-direction:column;
  line-height:1.1;
}

.userchip-name{
  font-weight:700;
  font-size:.92rem;
}

.userchip-sub{
  font-size:.78rem;
  color: var(--muted);
}

.userlinks{
  font-size:.85rem;
  color: var(--muted);
  display:flex;
  gap:8px;
  align-items:center;
  flex-wrap: wrap;
}

.userlinks a{ text-decoration:none; }
.userlinks .sep{ opacity:.5; }

@media (max-width: 900px){
  .nav{
    width: 100%;
    justify-content: flex-start;
  }
  .brand{
    min-width: 100%;
  }
}
