/* 60-sitemap.css
   Scope: only /?page=sitemap markup.
   Keep every selector under .sitemap-page to avoid conflicts with left-menu.php. */
.sitemap-page{
  width:100%;
  max-width:none;
  display:flex;
  flex-direction:column;
  gap:18px;
}
.sitemap-page .sitemap-hero{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  padding:26px;
  border:1px solid rgba(100,202,255,.18);
  border-radius:26px;
  background:
    radial-gradient(circle at top left, rgba(100,202,255,.14), transparent 36%),
    linear-gradient(135deg, rgba(16,26,38,.96), rgba(9,14,22,.96));
  box-shadow:0 18px 50px rgba(0,0,0,.25);
}
.sitemap-page .sitemap-kicker{
  margin:0 0 8px;
  color:var(--yellow);
  font-size:12px;
  font-weight:900;
  letter-spacing:.12em;
}
.sitemap-page h1{
  margin:0 0 8px;
  color:#f7fbff;
  font-size:34px;
  letter-spacing:-.8px;
}
.sitemap-page .sitemap-hero p:not(.sitemap-kicker){
  margin:0;
  color:var(--muted);
  line-height:1.6;
}
.sitemap-page .sitemap-xml-btn{
  flex:0 0 auto;
  margin-top:2px;
}
.sitemap-page .sitemap-tree-panel{
  padding:18px;
  border:1px solid var(--line);
  border-radius:26px;
  background:linear-gradient(180deg, rgba(12,20,31,.86), rgba(8,13,20,.9));
  overflow:auto;
}
.sitemap-page .sitemap-tree-list{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-direction:column;
  gap:10px;
}
.sitemap-page .sitemap-tree-list .sitemap-tree-list{
  margin:10px 0 0 22px;
  padding-left:18px;
  border-left:1px solid rgba(100,202,255,.18);
}
.sitemap-page .sitemap-tree-node{
  position:relative;
  margin:0;
  padding:0;
}
.sitemap-page .sitemap-node-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  min-width:520px;
  padding:12px 14px;
  border:1px solid rgba(41,59,77,.86);
  border-radius:18px;
  background:rgba(16,26,38,.78);
  transition:border-color .16s ease, background .16s ease, transform .16s ease;
}
.sitemap-page .sitemap-node-row:hover{
  border-color:rgba(100,202,255,.62);
  background:rgba(20,32,48,.96);
  transform:translateY(-1px);
}
.sitemap-page .sitemap-node-main{
  display:flex;
  align-items:center;
  gap:9px;
  min-width:0;
}
.sitemap-page .sitemap-node-dot{
  flex:0 0 auto;
  width:10px;
  height:10px;
  border-radius:999px;
  background:var(--blue);
  box-shadow:0 0 0 4px rgba(100,202,255,.1);
}
.sitemap-page .sitemap-node-title{
  min-width:0;
  color:var(--text);
  text-decoration:none;
  font-weight:900;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.sitemap-page .sitemap-node-title:hover{
  color:var(--blue);
}
.sitemap-page .sitemap-node-badge{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:22px;
  padding:3px 8px;
  border-radius:999px;
  border:1px solid rgba(246,195,67,.36);
  background:rgba(246,195,67,.08);
  color:var(--yellow);
  font-size:11px;
  font-weight:900;
  white-space:nowrap;
}
.sitemap-page .sitemap-node-uri{
  flex:0 0 auto;
  max-width:48%;
  text-decoration:none;
}
.sitemap-page .sitemap-node-uri code{
  display:block;
  max-width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  padding:5px 9px;
  border-radius:999px;
  border:1px solid rgba(100,202,255,.18);
  background:#09111b;
  color:#9edfff;
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  font-size:12px;
}
.sitemap-page .sitemap-depth-1 > .sitemap-node-depth-1 > .sitemap-node-row{
  background:linear-gradient(90deg, rgba(246,195,67,.13), rgba(16,26,38,.9));
  border-color:rgba(246,195,67,.24);
}
.sitemap-page .sitemap-node-depth-1 > .sitemap-node-row .sitemap-node-dot{
  background:var(--yellow);
  box-shadow:0 0 0 4px rgba(246,195,67,.12);
}
.sitemap-page .sitemap-node-depth-2 > .sitemap-node-row{
  background:linear-gradient(90deg, rgba(100,202,255,.09), rgba(16,26,38,.82));
}
.sitemap-page .sitemap-node-depth-3 > .sitemap-node-row{
  background:rgba(11,18,28,.86);
}
@media (max-width: 820px){
  .sitemap-page .sitemap-hero{
    flex-direction:column;
    padding:20px;
  }
  .sitemap-page h1{font-size:28px;}
  .sitemap-page .sitemap-tree-panel{padding:12px;}
  .sitemap-page .sitemap-tree-list .sitemap-tree-list{
    margin-left:12px;
    padding-left:12px;
  }
  .sitemap-page .sitemap-node-row{
    min-width:0;
    flex-direction:column;
    align-items:stretch;
  }
  .sitemap-page .sitemap-node-uri{max-width:none;}
}
