.admin-body{

  --admin-table-col-min: var(--space-24);

  --admin-table-col-primary-min: var(--space-stack-lg);


  --admin-table-col-min: 96px;
  --admin-table-col-primary-min: 220px;
  --admin-table-col-action-min: 96px;

  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  touch-action: manipulation;
  background: var(--background);
}


@media (max-width: 1024px){

  .admin-body .input,
  .admin-body .select,
  .admin-body textarea,
  .admin-body input[type="search"],
  .admin-body input[type="text"],
  .admin-body input[type="email"],
  .admin-body input[type="number"],
  .admin-body input[type="password"],
  .admin-body input[type="url"],
  .admin-body input[type="tel"]{
    font-size: 16px;

  }

  .admin-body .table-wrapper{
    position: relative;
    max-width: 100vw;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-x: contain;

    background: linear-gradient(to right, var(--background) 30%, rgba(255, 255, 255, 0)),
      linear-gradient(to right, rgba(255, 255, 255, 0), var(--background) 70%) 0 100%,
      radial-gradient(farthest-side at 0 50%, rgba(0, 0, 0, .2), rgba(0, 0, 0, 0)),
      radial-gradient(farthest-side at 100% 50%, rgba(0, 0, 0, .2), rgba(0, 0, 0, 0)) 0 100%;
    background-repeat: no-repeat;
    background-color: var(--background);
    background-size: 40px 100%, 40px 100%, 14px 100%, 14px 100%;
    background-attachment: local, local, scroll, scroll;
  }
}

body.admin-sidebar-open{
  overflow: hidden;
  overscroll-behavior: none;
}

.admin-header{
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: var(--z-header);
}

.admin-header .header-inner{
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
}

.admin-header .header-left{
  justify-self: start;
  min-width: 0;
}

.admin-header .header-right{
  justify-self: end;
  min-width: 0;
  justify-content: flex-end;
}

.admin-header .logo-img{
  height: var(--space-4);
}

.admin-header-search{
  justify-self: center;
  width: min(720px, 100%);
  position: relative;
  display: flex;
  align-items: center;
  gap: var(--space-1);
  padding: 0 var(--space-2);
}

.admin-header-search-icon{
  font-size: 18px;
  color: var(--muted-foreground);
}

.admin-header-search-input{
  width: 100%;
  height: 34px;
  border-radius: var(--radius);
  border: 1px solid var(--border);
  background: var(--background);
  color: var(--foreground);
  padding: 0 10px;
  font-size: 13px;
}

.admin-header-search-input:focus{
  outline: none;
  box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.25);
}

.admin-header-search-results{
  position: absolute;
  top: calc(100% + 10px);
  left: 0;
  right: 0;
  background: var(--card);
  border: 1px solid var(--border);
  border-radius: var(--radius);
  box-shadow: var(--shadow-lg);
  z-index: var(--z-dropdown);
  overflow: hidden;
}

.admin-nav-search-item{
  display: flex;
  gap: var(--space-2);
  padding: 10px 12px;
  text-decoration: none;
  color: var(--foreground);
}

.admin-nav-search-item .hz-icon{
  font-size: 18px;
  color: var(--muted-foreground);
}

.admin-nav-search-text{
  display: grid;
  min-width: 0;
}

.admin-nav-search-text .label{
  font-size: 13px;
  font-weight: 600;
}

.admin-nav-search-item.active,
.admin-nav-search-item:hover{
  background: var(--muted);
}

.admin-nav-search-empty{
  padding: 10px 12px;
}

.admin-header .header-menu-toggle{
  display: inline-flex;
}

.admin-header .logo-img.logo-dark{
  display: none;
}

.admin-header .logo-img.logo-light{
  display: block;
}

@media (min-width: 1025px){
  .admin-header .header-menu-toggle{
    display: none;
  }
}

@media (max-width: 1024px){
  .admin-header .header-inner{
    display: flex;
    justify-content: space-between;
  }

  .admin-header .header-left{
    flex: 1 1 auto;
  }

  .admin-header-search{
    display: none;
  }

  .text-display{
    font-size: 1.75rem;
    letter-spacing: -0.02em;
  }

  .admin-header .header-right{
    margin-left: auto;
    flex: 0 0 auto;
  }
}

:root[data-theme="light"] .admin-header .logo-img.logo-dark{
  display: none;
}

:root[data-theme="light"] .admin-header .logo-img.logo-light{
  display: block;
}

:root[data-theme="dark"] .admin-header .logo-img.logo-light{
  display: none;
}

:root[data-theme="dark"] .admin-header .logo-img.logo-dark{
  display: block;
}

body[data-theme="light"] .admin-header .logo-img.logo-dark{
  display: none;
}

body[data-theme="light"] .admin-header .logo-img.logo-light{
  display: block;
}

body[data-theme="dark"] .admin-header .logo-img.logo-light{
  display: none;
}

body[data-theme="dark"] .admin-header .logo-img.logo-dark{
  display: block;
}







.admin-mobile-links a.active,
.admin-mobile-links a:hover{
  color: var(--foreground);
  background: var(--muted);
}



.admin-page .main-layout{
  padding-top: var(--header-height);
}

.admin-page .content-wrapper{
  padding: var(--space-5) var(--space-3);
}

.admin-page .content{
  max-width: 1200px;
}

@media (min-width: 1025px){
  .admin-page .content-wrapper{
    padding: var(--space-5) var(--space-6);
  }
}

.admin-page{
  --sidebar-width: 260px;
  --sidebar-collapsed-width: 64px;
  --admin-sidebar-overlay: rgba(0, 0, 0, 0.45);
}

body.admin-sidebar-collapsed .admin-page{
  --sidebar-width: var(--sidebar-collapsed-width);
}

.admin-sidebar{
  position: fixed;
  top: var(--header-height);
  left: 0;
  bottom: 0;
  width: var(--sidebar-width);
  background: color-mix(in srgb, var(--card), transparent 2%);
  backdrop-filter: blur(8px);
  border-right: 1px solid var(--border);
  z-index: calc(var(--z-header) - 1);
  display: flex;
  flex-direction: column;
  transform: translateX(0);
  transition: width 0.2s cubic-bezier(0.4, 0, 0.2, 1), transform 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}

.admin-sidebar-header{
  height: 56px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 var(--space-4);
  border-bottom: 1px solid var(--border);
}

.admin-sidebar-header-title{
  display: flex;
  align-items: center;
  color: var(--muted-foreground);
  font-size: var(--fs-sm);
  font-weight: 600;
  min-width: 0;
}

.admin-sidebar-header-text{
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.admin-sidebar-content{
  padding: var(--space-4) var(--space-2);
  overflow-y: auto;
  flex: 1;
}

.admin-sidebar-group{
  margin-bottom: var(--space-6);
}

.admin-sidebar-group-title{
  font-size: 10px;
  font-weight: 800;
  color: var(--muted-foreground);
  text-transform: uppercase;
  letter-spacing: 0.15em;
  padding: 0 var(--space-2);
  margin-bottom: var(--space-2);
}

.admin-sidebar-group-links{
  display: flex;
  flex-direction: column;
}

.admin-sidebar-link{
  display: flex;
  align-items: center;
  gap: var(--space-3);
  padding: var(--space-2) var(--space-3);
  border-radius: var(--radius-md);
  color: var(--muted-foreground);
  text-decoration: none;
  font-size: var(--fs-sm);
  font-weight: 500;
  min-width: 0;
  transition: all 0.2s ease;
}

.admin-sidebar-link .hz-icon{
  font-size: 20px;
}

.admin-sidebar-label{
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.admin-sidebar-link:hover{
  background: var(--muted);
  color: var(--foreground);
}

.admin-sidebar-link.active{
  background: var(--primary);
  color: var(--primary-foreground);
  box-shadow: var(--shadow-sm);
}

.admin-sidebar-link.active .hz-icon{
  color: inherit;
}

.admin-sidebar-overlay{
  position: fixed;
  top: var(--header-height);
  left: 0;
  right: 0;
  bottom: 0;
  background: var(--admin-sidebar-overlay);
  z-index: calc(var(--z-header) - 2);
}

@media (min-width: 1025px){
  body.admin-sidebar-collapsed .admin-sidebar{
    width: var(--sidebar-collapsed-width);
  }

  body.admin-sidebar-collapsed .admin-sidebar-header-title,
  body.admin-sidebar-collapsed .admin-sidebar-group-title{
    display: none;
  }

  body.admin-sidebar-collapsed .admin-sidebar-label{
    opacity: 0;
    pointer-events: none;
  }

  body.admin-sidebar-collapsed .admin-sidebar-header{
    justify-content: center;
    padding: var(--space-1);
  }
}

@media (max-width: 1024px){
  .admin-sidebar{
    transform: translateX(-100%);
    box-shadow: var(--shadow-lg);
  }

  body.admin-sidebar-open .admin-sidebar{
    transform: translateX(0);
  }
}

/* Shared admin surface parity */
.admin-page .card{
  overflow: hidden;
  border: 1px solid var(--border);
  background: var(--background);
  border-radius: var(--radius-xl);
  box-shadow: none;
}

.admin-page .card:hover{
  border-color: var(--border);
  box-shadow: none;
}

.admin-page .card-header{
  display: grid;
  gap: var(--space-1);
  padding: var(--space-4) var(--space-5) var(--space-3);
  border-bottom: 1px solid var(--border);
}

.admin-page .card-content{
  padding: var(--space-4) var(--space-5);
}

.admin-page .card-title{
  font-size: var(--fs-h4);
  line-height: var(--lh-sm);
}

.admin-page .card-description{
  margin-top: var(--space-1);
  max-width: 40rem;
  font-size: var(--fs-sm);
  line-height: var(--lh-sm);
  color: var(--muted-foreground);
}

.admin-hero{
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
  gap: var(--space-4);
  padding-bottom: var(--space-6);
  border-bottom: 1px solid var(--border);
  margin: 0;
}

.admin-hero-title{
  display: grid;
  gap: var(--space-1);
  max-width: 40rem;
  min-width: 0;
}

.admin-hero-title > .text-display{
  margin: 0;
  max-width: 14ch;
  font-size: var(--fs-h1);
  line-height: var(--lh-h1);
  letter-spacing: -0.03em;
}

.admin-hero-title > p{
  margin: 0;
  max-width: 40rem;
  font-size: var(--fs-body);
  line-height: var(--lh-body);
  color: var(--muted-foreground);
}

.admin-hero-actions{
  display: flex;
  align-items: center;
  gap: var(--space-2);
  justify-content: flex-end;
  align-self: start;
  flex-wrap: wrap;
  flex-shrink: 0;
}

.admin-grid{
  display: grid;
  gap: var(--space-3);
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
}

.admin-split{
  display: grid;
  gap: var(--space-6);
  grid-template-columns: minmax(0, 1.5fr) minmax(320px, 0.9fr);
}

.admin-stack{
  display: flex;
  flex-direction: column;
  gap: var(--space-5);
}

.stat-label{
  font-size: var(--fs-xs);
  font-weight: 700;
  color: var(--muted-foreground);
  text-transform: uppercase;
  letter-spacing: 0.1em;
}

.stat-value{
  font-family: var(--font-sans-en);
  font-size: var(--fs-h1);
  font-weight: 700;
  line-height: 1;
  color: var(--foreground);
}

.stat-meta{
  font-size: var(--fs-xs);
  color: var(--muted-foreground);
  font-weight: 500;
}

.admin-page .table-wrapper{
  background: color-mix(in srgb, var(--background-subtle) 70%, var(--background));
  border: 1px solid var(--border);
  border-radius: var(--radius-xl);
  max-width: 100%;
  overflow-x: auto;
  overflow-y: auto;
  touch-action: pan-x pan-y;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior-x: contain;
}

.admin-page .table th{
  background: color-mix(in srgb, var(--muted) 80%, transparent);
  font-weight: 700;
  font-size: var(--fs-xs);
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--muted-foreground);
  border-bottom: 1px solid var(--border-strong);
}

.admin-toolbar{
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: var(--space-3) var(--space-4);
  flex-wrap: wrap;
  margin-bottom: var(--space-5);
  padding: 0 0 var(--space-4);
  border-bottom: 1px solid var(--border);
  background: transparent;
  border-radius: 0;
  border-left: 0;
  border-right: 0;
  border-top: 0;
}

.admin-toolbar .input-group{
  flex: 1 1 320px;
  min-width: 240px;
  max-width: 480px;
}

@media (max-width: 1024px){
  .admin-split{
    grid-template-columns: 1fr;
  }
}

@media (max-width: 720px){
  .admin-hero{
    grid-template-columns: 1fr;
  }

  .admin-hero-actions{
    justify-content: flex-start;
  }
}

.admin-page .form-stack{
  gap: var(--space-3);
}

.admin-page .form-grid{
  gap: var(--space-3);
}

.sitemap-tree{
  display: flex;
  flex-direction: column;
  gap: var(--space-1);
  padding: var(--space-2);
}

.sitemap-level{
  list-style: none;
  margin: 0;
  padding-left: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-0-5);
}

.sitemap-node{
  position: relative;
  display: flex;
  flex-direction: column;
}

.sitemap-row{
  display: flex;
  align-items: center;
  gap: var(--space-3);
  padding: var(--space-2) var(--space-3);
  border-radius: var(--radius-md);
  color: var(--foreground);
  text-decoration: none;
  font-size: var(--fs-body);
  transition: background-color 0.18s ease, color 0.18s ease, border-color 0.18s ease;
  cursor: pointer;
  user-select: none;
}

.sitemap-row:hover{
  background: color-mix(in srgb, var(--background-subtle) 84%, transparent);
}

.sitemap-row .hz-icon{
  font-size: 20px;
  color: var(--muted-foreground);
  transition: color 0.2s ease;
}

.sitemap-row:hover .hz-icon{
  color: var(--primary);
}

.sitemap-title{
  font-weight: 500;
  flex-grow: 1;
}

.sitemap-path{
  font-family: var(--font-mono);
  font-size: var(--fs-2xs);
  color: var(--muted-foreground);
  opacity: 0.7;
  padding: 2px 6px;
  background: transparent;
  border: 1px solid var(--border);
  border-radius: var(--radius-sm);
}

.sitemap-node>.sitemap-level{
  margin-left: 1.25rem;
  padding-left: var(--space-4);
  border-left: 1px solid var(--border);
  margin-top: var(--space-1);
  margin-bottom: var(--space-1);
}


.sitemap-node>.sitemap-level::before{
  display: none;
}

.sitemap-badge-group{
  display: flex;
  align-items: center;
  gap: var(--space-1);
}


.sitemap-level .sitemap-node{
  position: relative;
}

.sitemap-level .sitemap-node::before{
  content: '';
  position: absolute;
  left: -1rem;
  top: 1.2rem;
  width: 0.8rem;
  height: 1px;
  background: var(--border);
}

.sitemap-node[aria-expanded="true"]>.sitemap-row .hz-icon{
  color: var(--primary);
}

.sitemap-node--folder>.sitemap-row .sitemap-title{
  font-weight: 600;
}


.admin-hero{
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--space-4);
  margin: 0;
  padding-bottom: var(--space-4);
  border-bottom: var(--space-px) solid var(--border);
}

@media (max-width: 640px){
  .admin-hero{
    flex-direction: column;
    align-items: stretch;
    gap: var(--space-3);
  }
}

.admin-hero-title{
  display: grid;
  gap: var(--space-2);
}

@media (max-width: 640px){
  .admin-hero-title h1{
    font-size: 1.5rem;
  }

  .admin-hero-title p{
    font-size: 0.875rem;
    line-height: 1.4;
  }
}

.admin-hero-actions{
  display: flex;
  align-items: center;
  gap: var(--space-2);
  flex-shrink: 0;
}

@media (max-width: 640px){
  .admin-hero-actions{
    justify-content: flex-start;
    width: 100%;
  }
}

.admin-hero-aside{
  display: grid;
  justify-items: end;
  gap: var(--space-2);
}

.admin-grid{
  display: grid;
  gap: var(--space-4);
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  align-items: start;
}

@media (max-width: 640px){
  .admin-grid{
    grid-template-columns: 1fr;
  }
}

.admin-grid.admin-grid-1{
  grid-template-columns: minmax(0, 1fr);
}

.admin-grid.admin-grid-2{
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.admin-grid.admin-grid-actions{
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: flex-end;
}

.admin-grid.admin-grid-actions-3{
  grid-template-columns: minmax(0, 1fr) 120px auto;
  align-items: flex-end;
}

.admin-grid+.card,
.admin-grid+.admin-split,
.admin-grid+.admin-stack{
  margin-top: var(--space-4);
}

.admin-page .content>section+section,
.admin-page .content>.card+.card{
  margin-top: var(--space-4);
}

.admin-split{
  display: grid;
  gap: var(--space-4);
  grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
  align-items: start;
}

@media (max-width: 1024px){
  .admin-split{
    grid-template-columns: 1fr;
  }
}


.admin-page .card{
  transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

.admin-page .card:hover{
  border-color: color-mix(in srgb, var(--accent) 30%, var(--border));
}

.admin-page .stat-card{
  position: relative;
  overflow: hidden;
}

.admin-page .stat-card:hover{
  background: color-mix(in srgb, var(--accent) 3%, transparent);
}

.admin-page .stat-value{
  letter-spacing: -0.03em;
  font-feature-settings: "tnum";
  font-weight: 700;
  font-size: var(--fs-h3);
}

.admin-page .stat-label{
  font-size: var(--fs-xs);
  font-weight: 600;
  color: var(--muted-foreground);
  text-transform: uppercase;
  letter-spacing: 0.05em;
  margin-bottom: var(--space-1);
}

.admin-section-title{
  display: flex;
  align-items: center;
  gap: var(--space-2);
  font-size: var(--fs-sm);
  font-weight: 700;
  color: var(--foreground);
  margin-bottom: var(--space-3);
  padding-bottom: var(--space-2);
  border-bottom: 1px solid var(--border);
}

.admin-section-title .hz-icon,
.admin-section-title span.material-symbols-outlined{
  font-size: 20px;
  color: var(--accent);
}


.admin-stats-grid{
  display: grid;
  gap: var(--space-4);
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  align-items: start;
}

.stats-admin-shell{
  display: grid;
  gap: var(--space-4);
  grid-template-columns: minmax(0, 1.4fr) minmax(300px, 0.74fr);
  align-items: start;
}

.stats-admin-main,
.stats-admin-rail,
.stats-admin-panel{
  display: grid;
  gap: var(--space-4);
}

.stats-admin-range-card .card-content{
  display: grid;
  gap: var(--space-4);
}

.stats-range-toolbar{
  display: grid;
  gap: var(--space-4);
}

.stats-range-toolbar .segment-control{
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  padding: 0;
  background: transparent;
  border-radius: 0;
}

.stats-range-toolbar .segment-btn{
  min-height: 2.5rem;
  padding-inline: var(--space-3);
  white-space: nowrap;
  background: var(--muted);
}

.stats-range-toolbar .segment-btn.active{
  background: var(--background);
}

.stats-range-toolbar .admin-toolbar-actions{
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto;
  gap: var(--space-3);
  align-items: end;
}

.stats-range-toolbar .input-group{
  margin: 0;
  min-width: 0;
}

.stats-range-toolbar .btn{
  min-width: 96px;
}

.stats-primary-tabs{
  width: fit-content;
  max-width: 100%;
  flex-wrap: wrap;
}

.stats-admin-panel .queue-admin-panel-head{
  margin-bottom: 0;
}

.stats-admin-chart-shell{
  display: grid;
  gap: var(--space-4);
  grid-template-columns: minmax(0, 1.45fr) minmax(280px, 0.72fr);
  align-items: start;
}

.admin-stats-page [data-stat-panel][hidden],
.admin-stats-page [data-game-panel][hidden]{
  display: none !important;
}

@media (max-width: 1024px){
  .admin-stats-grid{
    grid-template-columns: 1fr;
  }

  .stats-admin-shell,
  .stats-admin-chart-shell{
    grid-template-columns: 1fr;
  }

  .stats-range-toolbar .admin-toolbar-actions{
    grid-template-columns: 1fr;
  }
}



.stats-admin-panel[data-stat-panel="game"] .stats-subtabs{
  margin-top: var(--space-3);
}

.stats-admin-panel[data-stat-panel="game"] .admin-subpanel{
  margin-top: var(--space-3);
}

.stats-admin-panel[data-stat-panel="game"] .admin-subpanel.active{
  display: block;
}

.stats-admin-panel[data-stat-panel="game"] .stats-masonry{
  display: none;

}

.stats-admin-panel[data-stat-panel="game"] .admin-stats-grid{
  margin-top: var(--space-4);
}

.stats-admin-panel[data-stat-panel="game"] .admin-stats-grid .card-content canvas,
.stats-admin-panel[data-stat-panel="game"] .stats-masonry .card-content canvas{
  display: block;
  width: 100%;
  height: 200px;
  max-height: 220px;
}

.stats-admin-panel[data-stat-panel="game"] .admin-stats-grid canvas#statsRetentionChart,
.stats-admin-panel[data-stat-panel="game"] .admin-stats-grid canvas#statsCommandAdoptionChart,
.stats-admin-panel[data-stat-panel="game"] .admin-stats-grid canvas#statsWorldeditHourlyChart,
.stats-admin-panel[data-stat-panel="game"] .stats-masonry #statsRetentionChart,
.stats-admin-panel[data-stat-panel="game"] .stats-masonry #statsCommandAdoptionChart,
.stats-admin-panel[data-stat-panel="game"] .stats-masonry #statsWorldeditHourlyChart{
  height: 180px;
  max-height: 180px;
}

.stats-admin-panel[data-stat-panel="game"] .admin-stats-grid canvas#statsCommandFamilyChart,
.stats-admin-panel[data-stat-panel="game"] .stats-masonry #statsCommandFamilyChart{
  height: 180px;
  max-height: 180px;
}

.stats-admin-panel[data-stat-panel="game"] .admin-stats-grid canvas#statsDeathChart,
.stats-admin-panel[data-stat-panel="game"] .stats-masonry #statsDeathChart{
  height: 140px;
  max-height: 140px;
}

.admin-stack{
  display: grid;
  gap: var(--space-3);
}

.admin-sidebar-layout{
  display: grid;
  gap: var(--space-4);
  grid-template-columns: minmax(320px, 520px) minmax(0, 1fr);
}

@media (max-width: 1024px){
  .admin-sidebar-layout{
    grid-template-columns: 1fr;
  }
}

.upload-cell{
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
}

.upload-cell .logo-thumb{
  display: none;
  width: var(--space-8);
  height: var(--space-8);
  object-fit: contain;
  border-radius: var(--space-1-5);
  border: var(--space-px) solid var(--border-subtle);
  padding: var(--space-0-5);
  background: var(--bg-elevated);
}

.admin-group-list{
  max-height: 560px;
}

.admin-group-list .admin-instance-card{
  padding: var(--space-1-5);
  gap: var(--space-0-5);
}

.admin-group-list .admin-instance-card-meta{
  font-size: 0.6875rem;
}

.admin-group-list .admin-instance-card-header{
  align-items: center;
}

.perm-text{
  display: block;
  max-width: min(360px, 32vw);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.admin-flex-stack{
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}

.pill-list{
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
}



.search-anchor{
  position: relative;
}

.search-list .hz-menu-item{
  width: 100%;
  justify-content: space-between;
}

.permission-row{
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: var(--space-3) 0;
  border-bottom: 1px solid var(--border);
}

.permission-row:last-child{
  border-bottom: none;
}

.stack{
  display: grid;
  gap: var(--space-3);
}

.divider{
  height: 1px;
  background: var(--border);
  margin: var(--space-4) 0;
}

.history-row{
  padding: var(--space-3) 0;
  border-bottom: 1px solid var(--border);
}

.history-row:last-child{
  border-bottom: none;
}

.bulk-actions{
  display: none;
  align-items: center;
  justify-content: space-between;
  padding: var(--space-3) var(--space-4);
  background: var(--muted);
  border-radius: var(--space-3);
}

.bulk-actions.is-open{
  display: flex;
}



.se-audit-grid{
  display: grid;
  gap: var(--space-4);
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
}

.credits-balance{
  display: grid;
  gap: var(--space-3);
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

@media (max-width: 1024px){
  .credits-balance{
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  }
}

@media (max-width: 640px){
  .credits-balance{
    grid-template-columns: 1fr;
  }
}

.credits-balance .card{
  height: 100%;
}

@media (max-width: 900px){
  .credits-balance{
    grid-template-columns: minmax(0, 1fr);
  }
}

.permission-form{
  display: grid;
  gap: var(--space-3);
}

.permission-form .form-grid{
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

.pre-wrap{
  white-space: pre-wrap;
}


.admin-console-list .table-wrapper{
  max-height: 640px;
}

.admin-instance-list{
  display: grid;
  gap: var(--space-2);
  max-height: 640px;
  overflow-y: auto;
}

.admin-instance-card{
  padding: var(--space-2);
  border: var(--space-px) solid var(--border);
  border-radius: var(--radius);
  background: var(--background-subtle);
  display: grid;
  gap: var(--space-1);
  cursor: pointer;
}

.admin-instance-card.admin-row-active{
  border-color: var(--primary);
  box-shadow: 0 0 0 var(--space-px) var(--primary);
}

.admin-instance-card-header{
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--space-2);
}

.admin-instance-card-title{
  display: grid;
  gap: var(--space-0-5);
}

.admin-instance-card-meta{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-2);
  color: var(--muted-foreground);
}

.admin-instance-card .admin-action-buttons{
  gap: var(--space-0-5);
}

.admin-instance-card-actions{
  display: flex;
  align-items: center;
  gap: var(--space-1);
}

.admin-instance-meta-note{
  font-size: var(--space-2-5);
  color: var(--muted-foreground);
}

























































.admin-role-list-item.active{
  border-color: var(--accent);
  background: rgba(59, 130, 246, 0.12);
}











.admin-role-permissions-actions .input{
  max-width: 220px;
}

@media (max-width: 720px){




  .admin-role-permissions-actions .input{
    flex: 1 1 180px;
    max-width: none;
  }
}



.admin-compact-table .table th,
.admin-compact-table .table td{
  padding: var(--space-1-5) var(--space-2-5);
  font-size: var(--space-3);
}

.admin-compact-table .table th{
  font-size: 0.6875rem;
  letter-spacing: 0.02em;
}

.admin-body .table-wrapper{
  -webkit-overflow-scrolling: touch;
  overscroll-behavior-x: contain;
}

.admin-body .table-wrapper>table.table{
  width: max-content;
  min-width: 100%;
}

.admin-body .table-wrapper .admin-identity{
  align-items: center;
}

.admin-body .table-wrapper .admin-identity-name{
  white-space: normal;
  overflow: visible;
  text-overflow: clip;
}

@media (max-width: 1024px){
  .admin-body .table-wrapper{
    scrollbar-width: none;
  }

  .admin-body .table-wrapper::-webkit-scrollbar{
    display: none;
  }

  .admin-body .table-wrapper>table.table{
    width: max-content;
    min-width: 100%;
  }

  .admin-body .table-wrapper>table.table th,
  .admin-body .table-wrapper>table.table td{
    min-width: var(--admin-table-col-min);
  }

  .admin-body .table-wrapper>table.table th:first-child,
  .admin-body .table-wrapper>table.table td:first-child{
    min-width: var(--admin-table-col-primary-min);
  }

  .admin-body .table-wrapper>table.table th:last-child,
  .admin-body .table-wrapper>table.table td:last-child{
    min-width: var(--admin-table-col-action-min);
    white-space: nowrap;
  }

  .admin-body .table-wrapper>table.table th,
  .admin-body .table-wrapper>table.table .badge,
  .admin-body .table-wrapper>table.table .admin-action-buttons,
  .admin-body .table-wrapper>table.table .time-recent,
  .admin-body .table-wrapper>table.table .time-today,
  .admin-body .table-wrapper>table.table .time-week,
  .admin-body .table-wrapper>table.table .time-month,
  .admin-body .table-wrapper>table.table .time-old{
    white-space: nowrap;
  }


  @media (max-width: 640px){

    .admin-body .table-wrapper table.table th:nth-child(1),
    .admin-body .table-wrapper table.table td:nth-child(1){

      width: 40px;
    }


    #statsDisplayRange{
      display: block;
      word-break: break-all;
      font-size: 0.8rem;
    }
  }
}

.switch-row.compact{
  padding: 0;
  align-items: center;
}

.switch-row.compact .switch{
  margin: 0;
}









.admin-email-panel.active{
  display: block;
}

.admin-email-detail{
  display: grid;
  gap: var(--space-2);
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  margin-bottom: var(--space-3);
}

.admin-email-preview{
  padding: var(--space-3);
  border: var(--space-px) solid var(--border);
  border-radius: var(--radius);
  background: var(--background-subtle);
  font-size: 0.8125rem;
  line-height: 1.6;
}

.admin-email-split{
  grid-template-columns: minmax(0, 2.2fr) minmax(0, 1fr);
}

.admin-email-preview-card{
  align-self: start;
}

.admin-email-variables{
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-1);
  margin-bottom: var(--space-2);
}

.admin-email-variables .badge{
  text-transform: none;
}

.admin-email-preview{
  position: relative;
  min-height: 240px;
}

.admin-email-preview-frame{
  width: 100%;
  min-height: 240px;
  border: var(--space-px) solid var(--border);
  border-radius: var(--radius);
  background: var(--background);
}

.admin-email-preview-empty{
  display: none;
  position: absolute;
  inset: 0;
  align-items: center;
  justify-content: center;
  text-align: center;
}

.admin-email-preview.is-empty .admin-email-preview-frame{
  display: none;
}

.admin-email-preview.is-empty .admin-email-preview-empty{
  display: flex;
}

@media (max-width: 680px){



  .admin-email-split{
    grid-template-columns: 1fr;
  }
}























.admin-log-panel{
  border: var(--space-px) solid var(--border);
  border-radius: var(--radius);
  padding: var(--space-3);
  min-height: 220px;
  max-height: 320px;
  overflow-y: auto;
  font-family: var(--font-mono);
  font-size: 0.6875rem;
  line-height: 1.6;
  background: var(--background-subtle);
}

.admin-log-entry{
  display: grid;
  grid-template-columns: auto 1fr;
  gap: var(--space-2);
  padding: var(--space-1) 0;
  border-bottom: var(--space-px) dashed var(--border);
}

.admin-log-entry:last-child{
  border-bottom: none;
}

.admin-log-level{
  text-transform: uppercase;
  font-weight: 600;
}

.admin-log-level.info{
  color: var(--primary);
}

.admin-log-level.warning{
  color: var(--warning);
}

.admin-log-level.error{
  color: var(--destructive);
}

.segment-control{
  display: inline-flex;
  gap: var(--space-0-5);
  padding: var(--space-0-5);
  background: var(--muted);
  border-radius: var(--radius);
}

.admin-panel{
  display: none;
  margin-top: var(--space-3);
}

.admin-panel.active{
  display: block;
}

.segment-btn{
  padding: var(--space-1) var(--space-2);
  border-radius: var(--radius-sm);
  font-size: 0.6875rem;
  color: var(--muted-foreground);
}

.segment-btn.active{
  color: var(--foreground);
  background: var(--background);
  box-shadow: var(--shadow-xs);
}

@media (max-width: 1024px){
  .segment-control{
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-x: contain;
    flex-wrap: nowrap;
    scrollbar-width: none;
  }

  .segment-btn{
    flex: 0 0 auto;
  }

  .segment-control::-webkit-scrollbar{
    display: none;
  }
}



.admin-form-actions{
  display: flex;
  gap: var(--space-2);
  justify-content: flex-end;
}









.admin-section-title{
  display: flex;
  align-items: center;
  gap: var(--space-2);
  font-size: 0.875rem;
  font-weight: 600;
  margin-bottom: var(--space-2);
}

.admin-section-title .hz-icon{
  font-size: 1.125rem;
}

.stat-card{
  display: grid;
  gap: var(--space-1);
}

.stat-label{
  font-size: 0.6875rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--muted-foreground);
}

.stat-value{
  font-size: 1.375rem;
  font-weight: 600;
}

.stat-meta{
  font-size: 0.6875rem;
  color: var(--muted-foreground);
}

.admin-toolbar{
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: var(--space-3);
  flex-wrap: wrap;
  margin-bottom: var(--space-3);
}

.admin-toolbar-inline{
  flex-wrap: nowrap;
  align-items: flex-end;
}

.admin-toolbar-inline .input-group{
  min-width: 0;
}

.auto-approve-toolbar{
  justify-content: flex-start;
  align-items: flex-end;
  gap: var(--space-3);
}

.auto-approve-toolbar .switch-row{
  margin: 0;
}

.auto-approve-toolbar .auto-approve-delay{
  min-width: min(220px, 100%);
}

@media (max-width: 900px){
  .auto-approve-toolbar{
    flex-wrap: wrap;
    align-items: stretch;
  }
}

.admin-body .search-select{
  position: relative;
  width: 100%;
}

.admin-body .search-select-field{
  position: relative;
  display: flex;
  align-items: center;
}

.admin-body .search-select-field .input{
  width: 100%;
  padding-right: var(--space-8);
}

.admin-body .search-select-icon{
  position: absolute;
  right: var(--space-3);
  top: 50%;
  transform: translateY(-50%);
  color: var(--muted-foreground);
  pointer-events: none;
}

.admin-body .search-select-menu{
  position: absolute;
  top: calc(100% + var(--space-1));
  left: 0;
  right: 0;
  z-index: var(--z-popover);
  max-height: 240px;
  overflow: auto;
  box-shadow: var(--shadow-lg);
}

.admin-body .search-select-menu .hz-menu-item{
  justify-content: flex-start;
}

.admin-toolbar .input-group{
  flex: 1 1 320px;
  min-width: 240px;
}

.admin-toolbar-actions{
  display: flex;
  align-items: center;
  gap: var(--space-3);
  flex-wrap: wrap;
  justify-content: flex-end;
}

@media (max-width: 720px){
  .admin-toolbar-inline{
    flex-wrap: wrap;
  }
}

@media (max-width: 640px){
  .admin-toolbar .input-group{
    flex: 1 1 100%;
    min-width: 0;
  }
}

.admin-pagination{
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-2);
  margin-top: var(--space-4);
}

@media (max-width: 480px){
  .admin-pagination{
    flex-direction: column;
    gap: var(--space-1);
  }

  .admin-pagination .btn{
    width: 100%;
  }
}

.admin-filter-grid{
  display: grid;
  gap: var(--space-2);
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  align-items: end;
  margin-bottom: var(--space-3);
}

.admin-filter-grid .input-group{
  min-width: 0;
}

.admin-table-meta{
  font-size: var(--space-3);
  color: var(--muted-foreground);
}

.admin-api-inline{
  display: inline-flex;
  align-items: center;
  gap: var(--space-1);
  flex-wrap: wrap;
}

.admin-api-path{
  font-family: var(--font-mono);
  word-break: break-all;
}

.admin-api-detail{
  display: grid;
  gap: var(--space-2);
}

.admin-api-row{
  display: grid;
  grid-template-columns: minmax(0, 140px) minmax(0, 1fr);
  gap: var(--space-2);
  font-size: var(--space-3);
  align-items: start;
}

.admin-api-row span:last-child{
  word-break: break-all;
}

.admin-api-used-wrap{
  margin-top: var(--space-3);
}

.admin-api-used{
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-1);
  margin-top: var(--space-1);
}

.admin-api-form{
  margin-top: var(--space-3);
}

.admin-table-section td{
  background: var(--muted);
  color: var(--foreground);
  font-weight: 600;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  font-size: 0.6875rem;
}

.admin-session{
  display: grid;
  gap: var(--space-2);
}

.admin-session-row{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-2);
  font-size: var(--space-3);
}

.heatmap-grid{
  display: grid;
  gap: var(--space-1);
}

.heatmap-row{
  display: grid;
  grid-template-columns: var(--space-8) repeat(24, minmax(0, 1fr));
  gap: var(--space-0-5);
  align-items: center;
}

.heatmap-label{
  font-size: var(--space-2-5);
  color: var(--muted-foreground);
  text-align: right;
  padding-right: var(--space-1);
}

.heatmap-header .heatmap-label{
  text-align: center;
  padding-right: 0;
}

.heatmap-cell{
  height: var(--space-2-5);
  border-radius: var(--radius-xs);
  background: var(--muted);
}

.heatmap-legend{
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 0.6875rem;
  color: var(--muted-foreground);
  margin-top: var(--space-2);
}

.status-list{
  display: grid;
  gap: var(--space-2);
}

.status-item{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-2);
  padding: var(--space-2) var(--space-3);
  border-radius: var(--radius);
  border: var(--space-px) solid var(--border);
  background: var(--background-subtle);
  font-size: var(--space-3);
}











.admin-action-buttons{
  display: inline-flex;
  gap: var(--space-1);
}

.admin-identity-stack{
  display: grid;
  gap: var(--space-0-5);
  min-width: 0;
}



.admin-identity-label{
  font-size: var(--space-2-5);
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--muted-foreground);
}



.admin-identity-secondary .admin-identity-name{
  font-weight: 500;
}



.admin-pagination{
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: var(--space-2);
  margin-top: var(--space-3);
}

.admin-pagination .page-info{
  margin-right: auto;
  font-size: var(--space-3);
  color: var(--muted-foreground);
}



.admin-user-chip .hz-icon{
  font-size: var(--space-4);
}



.admin-user-chip.is-loading{
  opacity: 0;
  pointer-events: none;
}



.admin-header .header-right{
  justify-content: flex-end;
}







.admin-menu-panel.is-open{
  display: flex;
}





.event-row{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-2-5);
  margin-top: var(--space-2);
}





.event-chip.is-active{
  border-color: color-mix(in srgb, var(--primary) 60%, transparent);
  background: color-mix(in srgb, var(--primary) 12%, transparent);
  color: var(--foreground);
}

.event-intensity{
  display: flex;
  align-items: center;
  gap: var(--space-2-5);
  flex: 1;
  min-width: 260px;
}

.event-bar{
  position: relative;
  flex: 1;
  height: var(--space-4);
  border-radius: var(--radius-full);
  background: var(--muted);
  overflow: hidden;
}

.event-bar-zero{
  position: absolute;
  left: 50%;
  top: 0;
  bottom: 0;
  width: var(--space-0-5);
  background: var(--border);
  transform: translateX(-50%);
}

.event-bar-fill{
  position: absolute;
  top: 0;
  bottom: 0;
  left: 50%;
  width: 50%;
  background: var(--success);
  transition: width 0.2s ease, left 0.2s ease, background 0.2s ease;
  z-index: 0;
}

.event-bar-label{
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  font-size: 0.6875rem;
  color: var(--foreground);
  pointer-events: none;
  z-index: 2;
}



.metric-bar.event-bar{
  height: 1.125rem;
  border: var(--space-px) solid color-mix(in srgb, var(--border) 60%, transparent);
}

.metric-steps{
  position: absolute;
  inset: 0;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  z-index: 1;
}

.metric-step{
  border: none;
  background: transparent;
  cursor: pointer;
  padding: 0;
  position: relative;
}

.metric-step::after{
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: var(--space-1-5);
  height: var(--space-1-5);
  border-radius: var(--radius-full);
  transform: translate(-50%, -50%);
  background: color-mix(in srgb, var(--border) 70%, transparent);
}

.metric-step.is-active::after{
  width: var(--space-2-5);
  height: var(--space-2-5);
  background: var(--primary);
  box-shadow: 0 0 0 var(--space-0-5) color-mix(in srgb, var(--primary) 25%, transparent);
}







.event-preview{
  margin-top: var(--space-2);
  padding: var(--space-2) var(--space-2-5);
  border: var(--space-px) dashed var(--border);
  border-radius: var(--radius);
  color: var(--muted-foreground);
  font-size: var(--space-3);
  background: color-mix(in srgb, var(--muted) 50%, transparent);
}

@keyframes admin-chip-shimmer{
  0%{
    background-position: 0% 50%;
  }

  100%{
    background-position: 200% 50%;
  }
}





.modal{
  position: fixed;
  inset: 0;
  display: none;
  align-items: center;
  justify-content: center;
  padding: var(--space-5);
  background: rgba(9, 9, 11, 0.6);
  z-index: var(--z-overlay);
}

.modal.active{
  display: flex;
}

.modal-content{
  width: min(760px, 96vw);
  max-height: 92vh;
  display: flex;
  flex-direction: column;
  background: var(--card);
  border: var(--space-px) solid var(--border);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-lg);
  overflow: hidden;
}

.modal-header{
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--space-3);
  padding: var(--space-3) var(--space-4);
  border-bottom: var(--space-px) solid var(--border);
}





.modal-body{
  padding: var(--space-4);
  overflow-y: auto;
}

.modal-footer{
  padding: var(--space-3) var(--space-4);
  border-top: var(--space-px) solid var(--border);
  background: var(--muted);
  display: flex;
  justify-content: flex-end;
  gap: var(--space-2);
}





.edit-tab-button.active{
  background: var(--card);
  color: var(--foreground);
  border-color: var(--border);
  box-shadow: var(--shadow-xs);
}



.edit-tab-panel.active{
  display: block;
}













.switch-row{
  display: flex;
  align-items: center;
  gap: var(--space-2);
  padding: var(--space-2) var(--space-3);
  border: var(--space-px) solid var(--border);
  border-radius: var(--radius);
  background: var(--background-subtle);
}



























.deletion-option.danger:hover{
  border-color: var(--destructive);
}



















.empty-state{
  display: grid;
  gap: var(--space-1);
  justify-items: center;
  padding: var(--space-5) 0;
  color: var(--muted-foreground);
}

@media (max-width: 720px){
  .admin-hero{
    flex-direction: column;
    align-items: stretch;
  }

  .admin-hero-actions{
    justify-content: flex-start;
  }

  .admin-hero-aside{
    justify-items: start;
  }

  .modal-content{
    width: min(96vw, 520px);
  }

  .modal{
    padding: var(--space-3);
  }

  .modal-header{
    padding: var(--space-3);
  }

  .modal-body{
    padding: var(--space-3);
  }

  .modal-footer{
    padding: var(--space-3);
  }

  .admin-pagination{
    flex-direction: column;
    align-items: flex-start;
  }

  .admin-pagination .page-info{
    margin-right: 0;
  }
}

@media (max-width: 960px){
  .admin-split{
    grid-template-columns: 1fr;
  }



  .admin-sidebar-layout{
    grid-template-columns: 1fr;
  }


}

/* PLAYCITY Admin shell parity */
.admin-sidebar-overlay[hidden],
.admin-header-search-results[hidden]{
  display: none !important;
}

.admin-page{
  --content-max: 1424px;
  --header-height: 56px;
  --sidebar-expanded-width: 236px;
  --sidebar-width: var(--sidebar-expanded-width);
  --sidebar-collapsed-width: 0px;
  --admin-header-pad-x: var(--space-4);
  --admin-sidebar-content-pad-x: var(--space-3);
  --admin-sidebar-row-pad-x: var(--space-2);
  --admin-header-pad-mobile-left: var(--space-3);
  --admin-header-pad-mobile-right: var(--space-4);
  --admin-sidebar-overlay: rgba(0, 0, 0, 0.45);
}

body.admin-sidebar-collapsed .admin-page{
  --sidebar-width: var(--sidebar-collapsed-width);
}

.admin-page .main-layout{
  padding-top: var(--header-height);
  display: flex;
}

.admin-page .content-wrapper{
  flex: 1;
  min-width: 0;
  padding: var(--space-6) var(--space-4);
}

@media (min-width: 1025px){
  .admin-page .content-wrapper{
    margin-left: var(--sidebar-width);
    padding: var(--space-8) var(--space-10);
  }
}

.admin-page .content{
  max-width: var(--content-max);
  margin: 0 auto;
  display: grid;
  gap: var(--space-8);
}

.admin-header{
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: var(--z-header);
  height: var(--header-height);
  border-bottom-color: var(--glass-border);
  background: color-mix(in srgb, var(--card) 92%, transparent);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}

.admin-header .header-inner{
  max-width: none;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: var(--space-2);
  padding: 0 var(--admin-header-pad-x);
}

.admin-header .header-left{
  display: flex;
  align-items: center;
  gap: var(--space-1-5);
  justify-self: start;
  min-width: 0;
}

.admin-header-nav{
  display: flex;
  align-items: center;
  gap: var(--space-1);
  min-width: 0;
}

.admin-header-brand{
  display: flex;
  align-items: center;
  gap: var(--space-2);
  min-width: 0;
}

.admin-header .header-menu-toggle{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  padding: 0;
  border: 0;
  border-radius: var(--radius-sm);
  background: transparent;
  color: var(--muted-foreground);
  box-shadow: none;
  flex: 0 0 auto;
  cursor: pointer;
  line-height: 0;
  opacity: 0.86;
  transition: color 0.2s ease, opacity 0.2s ease;
}

.admin-header .header-menu-toggle:hover{
  background: transparent;
  color: var(--foreground);
  opacity: 1;
}

.admin-header .header-menu-toggle:focus-visible{
  outline: 2px solid color-mix(in srgb, var(--primary) 28%, transparent);
  outline-offset: 2px;
}

.admin-header .header-menu-toggle.is-collapsed{
  background: transparent;
  color: var(--muted-foreground);
}

.admin-header .header-menu-toggle .hz-icon{
  font-size: 1rem;
  transform: translateX(-2px);
}

.admin-header .header-right{
  min-width: 0;
  justify-content: flex-end;
  justify-self: end;
}

.admin-header-actions{
  display: flex;
  align-items: center;
  gap: 10px;
}

.admin-header .logo{
  display: inline-flex;
  align-items: center;
  height: 20px;
  flex: 0 0 auto;
}

.admin-header .logo-img{
  height: 20px;
  width: auto;
  display: block;
}

.admin-header .logo-divider{
  height: 14px;
}

.admin-header .header-left .text-muted{
  font-size: var(--fs-sm);
  line-height: var(--lh-sm);
  font-weight: 600;
  color: var(--muted-foreground);
}

.admin-header .pc-auth-widget,
.admin-header .pc-notifications-widget{
  min-height: 34px;
}

.admin-header-search{
  justify-self: center;
  width: min(720px, 100%);
  position: relative;
  padding: 0 var(--space-2);
}

.admin-header-search-wrapper{
  width: 100%;
}

.admin-header-search-input{
  font-size: var(--control-font-m);
}

.admin-header-search-results{
  position: absolute;
  top: calc(100% + var(--space-2-5));
  left: 0;
  right: 0;
  background: var(--card);
  border: 1px solid var(--border);
  border-radius: var(--radius);
  box-shadow: var(--shadow-lg);
  z-index: var(--z-popover);
  overflow: hidden;
}

.admin-nav-search-item{
  display: flex;
  align-items: center;
  gap: var(--space-3);
  padding: var(--space-2-5) var(--space-4);
  text-decoration: none;
  color: var(--foreground);
  border-radius: var(--radius-md);
  margin: 2px var(--space-2);
  transition: background-color 0.15s ease;
  border: none;
  background: transparent;
  width: calc(100% - var(--space-4));
  text-align: left;
  cursor: pointer;
}

.admin-nav-search-item:hover,
.admin-nav-search-item.active{
  background: var(--muted);
}

.admin-nav-search-item .hz-icon{
  font-size: var(--fs-h2);
  color: var(--muted-foreground);
  flex-shrink: 0;
}

.admin-nav-search-text{
  display: flex;
  flex-direction: column;
  min-width: 0;
}

.admin-nav-search-text .label{
  font-size: var(--fs-sm);
  font-weight: 600;
  color: var(--foreground);
}

.admin-nav-search-empty{
  padding: var(--space-2-5) var(--space-3);
}

.admin-sidebar{
  position: fixed;
  top: var(--header-height);
  left: 0;
  bottom: 0;
  width: var(--sidebar-expanded-width);
  background: var(--background);
  border-right: 1px solid var(--border);
  z-index: calc(var(--z-header) - 1);
  display: flex;
  flex-direction: column;
  overflow: hidden;
  transition: transform 0.22s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.18s ease, border-color 0.18s ease;
}

.admin-sidebar-content{
  padding: var(--space-4) var(--admin-sidebar-content-pad-x) var(--space-5);
  overflow-y: auto;
  flex: 1;
}

.admin-sidebar-group{
  margin-bottom: var(--space-5);
}

.admin-sidebar-group-title{
  font-size: var(--fs-2xs);
  line-height: var(--lh-xs);
  font-weight: 600;
  color: var(--muted-foreground);
  text-transform: uppercase;
  letter-spacing: 0.05em;
  padding: var(--space-1-5) var(--admin-sidebar-row-pad-x);
  margin-bottom: 0;
}

.admin-sidebar-group-links{
  display: grid;
  gap: 2px;
}

.admin-sidebar-link{
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: var(--space-2);
  padding: var(--space-1-5) var(--admin-sidebar-row-pad-x);
  border-radius: var(--radius-sm);
  color: var(--muted-foreground);
  text-decoration: none;
  font-size: var(--fs-sm);
  line-height: var(--lh-sm);
  font-weight: 400;
  transition: background-color 0.2s ease, color 0.2s ease;
}

.admin-sidebar-link .hz-icon{
  font-size: 1rem;
  color: inherit;
}

.admin-sidebar-link:hover{
  background: var(--hover-overlay);
  color: var(--foreground);
}

.admin-sidebar-link.active{
  background: var(--hover-overlay);
  color: var(--foreground);
  font-weight: 500;
  box-shadow: none;
}

.admin-sidebar-link.active .hz-icon{
  color: inherit;
}

.admin-sidebar-overlay{
  position: fixed;
  top: var(--header-height);
  left: 0;
  right: 0;
  bottom: 0;
  background: var(--admin-sidebar-overlay);
  z-index: calc(var(--z-header) - 2);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s ease;
}

@media (min-width: 1025px){
  .admin-sidebar-overlay{
    display: none !important;
    pointer-events: none !important;
  }

  body.admin-sidebar-collapsed .admin-sidebar{
    transform: translateX(calc(-1 * var(--sidebar-expanded-width)));
    opacity: 0;
    pointer-events: none;
    border-right-color: transparent;
  }
}

body.admin-sidebar-open .admin-sidebar-overlay{
  opacity: 1;
  pointer-events: auto;
}

@media (max-width: 1024px){
  .admin-header .header-inner{
    display: flex;
    justify-content: space-between;
    padding: 0 var(--admin-header-pad-mobile-right) 0 var(--admin-header-pad-mobile-left);
  }

  .admin-header .header-left{
    flex: 1 1 auto;
    gap: var(--space-2);
  }

  .admin-header-nav{
    gap: var(--space-2);
  }

  .admin-header .header-menu-toggle{
    width: 24px;
    height: 24px;
  }

  .admin-header .header-menu-toggle .hz-icon{
    transform: none;
  }

  .admin-header-search{
    display: none;
  }

  .admin-header .header-right{
    margin-left: auto;
    flex: 0 0 auto;
  }

  .admin-sidebar{
    transform: translateX(-100%);
    box-shadow: var(--shadow-lg);
  }

  body.admin-sidebar-open .admin-sidebar{
    transform: translateX(0);
  }
}

/* Admin workspace tuning */
.admin-users-page .content,
.admin-credits-page .content,
.admin-news-page .content,
.admin-stats-page .content,
.admin-dashboard-page .content,
.admin-queue-page .content,
.admin-link-requests-page .content,
.admin-server-page .content,
.admin-tables-page .content,
.admin-links-page .content,
.admin-sitemap-page .content,
.admin-se-page .content,
.admin-se-listings-page .content,
.admin-uploads-page .content{
  gap: var(--space-6);
}

.admin-dashboard-shell,
.queue-admin-shell,
.server-admin-shell,
.tables-admin-shell,
.links-admin-shell,
.sitemap-admin-shell,
.se-admin-shell{
  display: grid;
  gap: var(--space-4);
  align-items: start;
}

.admin-dashboard-shell{
  grid-template-columns: minmax(0, 1.55fr) minmax(300px, 0.86fr);
}

.admin-dashboard-main,
.admin-dashboard-rail,
.queue-admin-main,
.queue-admin-rail{
  display: grid;
  gap: var(--space-4);
}

.admin-dashboard-kpis{
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.admin-dashboard-rail #systemAlerts{
  display: grid;
  gap: var(--space-2);
}

.admin-dashboard-rail .card-content{
  display: grid;
  gap: var(--space-3);
}

.users-admin-summary-grid{
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.users-admin-toolbar{
  margin-bottom: var(--space-4);
}

.users-admin-toolbar .input-group{
  max-width: 340px;
}

.users-admin-table-card .card-content{
  display: grid;
  gap: var(--space-4);
}

.users-admin-table-card .table-wrapper{
  margin: 0;
}

.users-admin-footer{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-3);
  flex-wrap: wrap;
}

.users-admin-footer .bulk-actions{
  margin: 0;
  width: auto;
  min-width: min(420px, 100%);
  border: 1px solid var(--border);
  background: var(--surface);
}

.users-admin-pagination-inline{
  display: inline-flex;
  align-items: center;
  gap: var(--space-3);
  margin-left: auto;
  flex-wrap: wrap;
}

.credits-admin-layout{
  grid-template-columns: minmax(0, 1.08fr) minmax(320px, 380px);
  align-items: start;
}

.credits-admin-main,
.credits-admin-rail{
  display: grid;
  gap: var(--space-4);
}

.credits-admin-selection-bar .card-content{
  padding-block: var(--space-3);
}

.credits-admin-selection-inline{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-3);
  flex-wrap: wrap;
}

.credits-admin-selection-copy{
  display: flex;
  align-items: center;
  gap: var(--space-3);
  min-width: 0;
  flex-wrap: wrap;
}

.credits-admin-selection-label{
  font-size: var(--fs-xs);
  line-height: var(--lh-xs);
  font-weight: 600;
  color: var(--muted-foreground);
  text-transform: uppercase;
  letter-spacing: 0.05em;
  flex: 0 0 auto;
}

.credits-admin-selection-value{
  font-size: var(--fs-h5);
  line-height: 1.2;
  letter-spacing: -0.02em;
}

.credits-admin-selection-meta{
  min-width: 0;
  font-size: var(--fs-sm);
}

.credits-admin-selection-bar #creditSelectedUserMeta{
  margin: 0;
}

.credits-admin-balance-panel{
  display: grid;
  gap: var(--space-3);
}

.credits-admin-balance-panel .admin-section-title{
  margin-bottom: 0;
}

.credits-admin-rail .credits-balance{
  grid-template-columns: minmax(0, 1fr);
}

.credits-admin-rail .credits-balance .card-content{
  min-height: 124px;
}

.credits-admin-rail .credits-balance .stat-value{
  font-size: var(--fs-h4);
}

.credits-admin-list-footer{
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: var(--space-3);
  margin-top: var(--space-4);
  flex-wrap: wrap;
}

.queue-admin-shell{
  grid-template-columns: minmax(0, 1.45fr) minmax(280px, 0.68fr);
}

.server-admin-shell{
  grid-template-columns: minmax(0, 1.42fr) minmax(320px, 0.9fr);
}

.tables-admin-shell{
  grid-template-columns: minmax(0, 1.55fr) minmax(280px, 0.76fr);
}

.links-admin-shell{
  grid-template-columns: minmax(0, 1.38fr) minmax(320px, 0.84fr);
}

.sitemap-admin-shell{
  grid-template-columns: minmax(0, 1.48fr) minmax(280px, 0.82fr);
}

.se-admin-shell{
  grid-template-columns: minmax(0, 1.32fr) minmax(320px, 0.92fr);
}

.queue-admin-card-content{
  display: grid;
  gap: var(--space-4);
}

.server-admin-main,
.server-admin-rail,
.tables-admin-main,
.tables-admin-rail,
.se-admin-main,
.se-admin-rail{
  display: grid;
  gap: var(--space-4);
}

.queue-admin-header-row{
  display: flex;
  align-items: center;
  justify-content: flex-start;
}

.queue-admin-panel-head{
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: var(--space-3);
  margin-bottom: var(--space-3);
  flex-wrap: wrap;
}

.queue-admin-panel-head p{
  margin: var(--space-1) 0 0;
}

.queue-admin-toolbar{
  margin: 0;
}

.queue-admin-toolbar .input-group{
  margin: 0;
  min-width: 180px;
}

.queue-admin-toolbar-wide{
  flex-wrap: wrap;
}

.queue-admin-toolbar-wide .input-group:first-child{
  min-width: min(320px, 100%);
}

.queue-admin-pagination{
  justify-content: flex-end;
}

.queue-admin-auto-content{
  display: grid;
  gap: var(--space-3);
}

.queue-admin-auto-content .btn{
  justify-content: center;
}

.tables-admin-summary{
  display: grid;
  gap: var(--space-3);
}

.tables-admin-stat{
  display: grid;
  gap: var(--space-1);
  padding-bottom: var(--space-3);
  border-bottom: 1px solid var(--border);
}

.tables-admin-stat:last-child{
  padding-bottom: 0;
  border-bottom: 0;
}

.tables-admin-meta{
  display: grid;
  gap: var(--space-2);
}

.tables-admin-snapshot{
  font-size: var(--fs-sm);
  line-height: var(--lh-sm);
  color: var(--foreground);
}

.notice-message-cell{
  white-space: pre-wrap;
}

.links-admin-create-grid{
  display: grid;
  gap: var(--space-4);
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.links-admin-search-inline{
  display: flex;
  align-items: center;
  gap: var(--space-2);
}

.links-admin-selected-meta{
  display: grid;
  gap: var(--space-1);
}

.links-admin-create-actions{
  display: flex;
  justify-content: flex-end;
  gap: var(--space-2);
  margin-top: var(--space-4);
}

.links-admin-table-stack{
  display: grid;
  gap: var(--space-4);
}

.links-admin-list-card .table-wrapper,
.links-admin-request-card .table-wrapper{
  margin: 0;
}

.sitemap-admin-main,
.sitemap-admin-rail{
  display: grid;
  gap: var(--space-4);
}

.sitemap-admin-links{
  display: grid;
  gap: var(--space-2);
}

.sitemap-admin-link{
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--space-3);
  padding: var(--space-3);
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
  color: var(--foreground);
  text-decoration: none;
  background: color-mix(in srgb, var(--background-subtle) 76%, transparent);
  transition: background-color 0.18s ease, border-color 0.18s ease;
}

.sitemap-admin-link:hover{
  border-color: var(--border-strong);
  background: color-mix(in srgb, var(--background-subtle) 92%, transparent);
}

.sitemap-admin-link-copy{
  display: grid;
  gap: var(--space-0-5);
  min-width: 0;
}

.sitemap-admin-link strong{
  font-size: var(--fs-sm);
  line-height: var(--lh-sm);
}

.sitemap-admin-legend{
  display: grid;
  gap: var(--space-3);
}

.sitemap-admin-legend-item{
  display: flex;
  align-items: center;
  gap: var(--space-2);
  flex-wrap: wrap;
}

.menu-search-placeholder{
  padding: var(--space-2) var(--space-3);
}

.menu-item-inline{
  display: flex;
  align-items: center;
  gap: var(--space-2);
  flex-wrap: wrap;
}

.menu-item-stack{
  display: flex;
  flex-direction: column;
  gap: 2px;
  align-items: flex-start;
}

.search-menu-item-start{
  align-items: flex-start;
}

.se-admin-tool-card .card-content{
  display: grid;
  gap: var(--space-4);
}

.se-admin-wallet-selection{
  display: grid;
  gap: var(--space-1);
}

.se-admin-audit-head{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-3);
  flex-wrap: wrap;
}

.se-listings-shell{
  grid-template-columns: minmax(320px, 0.86fr) minmax(0, 1.32fr);
}

.se-listings-detail-actions{
  display: flex;
  align-items: center;
  gap: var(--space-2);
  flex-wrap: wrap;
}

.se-listings-application-shell{
  display: grid;
  gap: var(--space-4);
  grid-template-columns: minmax(0, 1.08fr) minmax(320px, 0.92fr);
}

.se-listings-application-main,
.se-listings-application-form{
  display: grid;
  gap: var(--space-4);
}

.se-listings-application-form .admin-form{
  display: grid;
  gap: var(--space-4);
}

.link-requests-summary-grid{
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.admin-uploads-page .admin-hero{
  margin-bottom: 0;
}

.schematic-uploads-filter-grid{
  grid-template-columns: minmax(280px, 1.8fr) minmax(160px, 0.9fr) minmax(220px, 1fr) minmax(160px, 0.72fr);
  margin-bottom: 0;
}

.schematic-uploads-toggle-field{
  min-width: 0;
}

.schematic-uploads-toggle-row{
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  min-height: 2.5rem;
  padding: 0 var(--space-3);
  border: var(--space-px) solid var(--border);
  border-radius: var(--radius);
  background: color-mix(in srgb, var(--background-subtle) 76%, transparent);
}

.schematic-uploads-table{
  table-layout: fixed;
}

.schematic-col-info{
  width: 200px;
}

.schematic-col-type{
  width: 100px;
}

.schematic-col-user{
  width: 140px;
}

.schematic-col-file{
  width: 220px;
}

.schematic-col-expire{
  width: 110px;
}

.schematic-col-state{
  width: 90px;
}

.schematic-col-actions{
  width: 100px;
}

.schematic-uploads-pagination{
  justify-content: flex-end;
}

@media (max-width: 1200px){
  .admin-dashboard-shell,
  .queue-admin-shell,
  .credits-admin-layout,
  .server-admin-shell,
  .tables-admin-shell,
  .links-admin-shell,
  .sitemap-admin-shell,
  .se-admin-shell,
  .se-listings-shell,
  .se-listings-application-shell{
    grid-template-columns: 1fr;
  }

  .schematic-uploads-filter-grid{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 720px){
  .admin-dashboard-kpis,
  .link-requests-summary-grid,
  .users-admin-summary-grid{
    grid-template-columns: 1fr;
  }

  .links-admin-create-grid{
    grid-template-columns: 1fr;
  }

  .users-admin-footer{
    align-items: stretch;
  }

  .users-admin-footer .bulk-actions,
  .users-admin-pagination-inline{
    width: 100%;
    min-width: 0;
    margin-left: 0;
  }

  .users-admin-pagination-inline{
    justify-content: space-between;
  }

  .credits-admin-selection-inline,
  .credits-admin-selection-copy{
    align-items: flex-start;
  }

  .queue-admin-panel-head{
    align-items: stretch;
  }

  .queue-admin-toolbar{
    width: 100%;
  }

  .queue-admin-toolbar .input-group{
    max-width: none;
  }

  .links-admin-search-inline,
  .sitemap-admin-link{
    flex-direction: column;
    align-items: stretch;
  }

  .schematic-uploads-filter-grid{
    grid-template-columns: 1fr;
  }
}
