/*
[name]Touhou 2026[/name]
[iconbgcolor]#ffb6cb[/iconbgcolor]
*/

body.discuzx5 :is(#dz_btm_layer, #wp, .dz_footc) {
  box-sizing: border-box;
  width: 1224px;
  margin-right: auto;
  margin-left: auto;
  border-radius: 12px;
  /* Match the old panel JPEG: a fine dark edge plus a compact neutral shadow. */
  box-shadow: 0 0 0 1px rgb(0 0 0 / 15%), 0 1px 7px rgb(0 0 0 / 55%),
    inset 0 0 0 1px rgb(255 255 255 / 80%);
}

body.discuzx5 #dz_btm_layer {
  position: relative;
  top: auto;
  margin: 20px auto 18px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  height: 384px;
  padding: 12px;
  background: #292646 url(https://c.moenext.com/touhou/bbs/template/discuzx5/style/touhou2026/assets/header.webp?v=e7ec4013fd342318) no-repeat center 43% / cover;
}

/* The old navigation used neutral translucent glass, without a blurred backdrop. */
body.discuzx5 #dz_btm_layer .dz_layer_top {
  box-sizing: border-box;
  height: 48px;
  border: 1px solid rgb(170 170 170 / 70%);
  border-radius: 8px;
  background: linear-gradient(rgb(255 255 255 / 76%), rgb(245 245 245 / 68%));
  box-shadow: 0 1px 3px rgb(0 0 0 / 22%), inset 0 1px 0 rgb(255 255 255 / 75%);
  backdrop-filter: none;
}

body.discuzx5 #dz_btm_layer .dz_nav {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  gap: 16px;
  width: 100%;
  min-width: 0;
  height: 46px;
  padding: 0 16px;
}
body.discuzx5 #dz_btm_layer .dz_nav > .clear { display: none; }
/* Original JPEG border is at x=991/y=31; SVG viewBox is 740 18 250 148.
   Align the border pixels: right = 992 - 990; top = 18 - 31. */
body.discuzx5 #dz_btm_layer .dz_nav_logo {
  position: absolute;
  top: -13px;
  right: 2px;
  width: 250px;
  height: 148px;
  margin: 0;
}
body.discuzx5 #dz_btm_layer .dz_nav_logo .dzlogo {
  display: block;
  width: 100%;
  height: 100%;
}
body.discuzx5 #dz_btm_layer .dz_nav_logo img { width: 100%; height: 100%; object-fit: contain; }
body.discuzx5 #dz_btm_layer .dz_nav_logo a:focus-visible {
  outline: 2px solid #fff;
  outline-offset: 4px;
}
body.discuzx5 #dz_btm_layer .dz_layer_nav { display: flex; flex: 1; width: auto; height: 46px; }
body.discuzx5 #dz_btm_layer .dz_layer_nav ul { display: flex; height: 46px; }
body.discuzx5 #dz_btm_layer .dz_layer_nav li { flex: none; }
body.discuzx5 #dz_btm_layer .dz_layer_nav li a {
  height: 46px;
  margin: 0;
  padding: 0 15px;
  color: #4b4b4b;
  font-size: 14px;
  font-weight: 400;
  line-height: 46px;
  letter-spacing: 0;
  text-shadow: none;
}
body.discuzx5 #dz_btm_layer .dz_layer_nav li.a a { background: none; }
body.discuzx5 #dz_btm_layer .dz_layer_nav li a:hover,
body.discuzx5 #dz_btm_layer .dz_layer_nav li.hover a {
  color: #4b4b4b;
  background: rgb(255 255 255 / 20%);
}
body.discuzx5 #dz_btm_layer .dz_layer_nav li a::before,
body.discuzx5 #dz_btm_layer .dz_layer_nav li a::after { content: none; }
body.discuzx5 #dz_btm_layer .dz_layer_nav li.touhou-signin a { color: #f00; }
body.discuzx5 #dz_btm_layer .dz_layer_dl { flex: none; }
body.discuzx5 #dz_btm_layer :is(.header-right, .header-client, .header-notice, .header-i18n) { height: 46px; }
body.discuzx5 #dz_btm_layer :is(.header-user-dropdown, .notice-dropdown, .i18n-dropdown, .client-dropdown) { top: 100%; }
body.discuzx5 #dz_btm_layer .search-panel { top: calc(100% + 4px); }
body.discuzx5 #dz_btm_layer .header-searcher .search-input {
  box-sizing: border-box;
  width: 170px;
  padding-right: 34px;
  background: rgb(255 255 255 / 72%);
  border-color: rgb(104 99 123 / 22%);
  box-shadow: inset 0 1px 2px rgb(47 38 66 / 8%);
}

body.discuzx5 #wp {
  display: flow-root;
  margin-bottom: 18px;
  padding: 0 12px;
  background: rgb(255 255 255 / 94%);
}
body.discuzx5 #wp > #pt { margin-right: 16px; margin-left: 16px; }

/* Four-grid overview: compact rows and equal-height image/list content. */
/* X5 removes the inner top border; close the existing three-sided outer frame. */
body.discuzx5 .fl:has(> .bm > #category_grid) { border-top: 1px solid var(--dz-borderb); }
body.discuzx5 #category_grid > table,
body.discuzx5 #category_grid > table > tbody { display: block; }
body.discuzx5 #category_grid > table > tbody > tr {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(0, 1fr);
}
body.discuzx5 #category_grid > table > tbody > tr > td {
  display: flex;
  width: auto;
  min-width: 0;
}
body.discuzx5 #category_grid > table > tbody > tr > td:first-child { border-left: 0; }
body.discuzx5 #category_grid > table > tbody > tr > td > div {
  display: flex;
  flex: 1;
  flex-direction: column;
  min-width: 0;
}
body.discuzx5 #category_grid h4 {
  box-sizing: border-box;
  height: 30px;
  line-height: 29px;
  font-size: 13px;
  text-indent: 10px;
}
body.discuzx5 #category_grid h4 span { height: 29px; }
body.discuzx5 #category_grid .category_newlist { flex: 1; padding: 10px; }
body.discuzx5 #category_grid .category_newlist li { height: 21px; line-height: 21px; }
body.discuzx5 #category_grid .slidebox_grid {
  box-sizing: border-box;
  flex: 1;
  min-height: 200px;
  width: auto !important;
  margin: 10px;
}
/* The original slider writes fixed inline dimensions; only its viewport changes. */
body.discuzx5 #category_grid .slidebox_grid > table {
  position: absolute;
  inset: 0;
  width: 100% !important;
  height: 100% !important;
}
body.discuzx5 #category_grid .slideimage {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  border: 0;
}
body.discuzx5 #category_grid .slideimage img { width: 100%; height: 100%; object-fit: contain; }
body.discuzx5 #category_grid .slideouter {
  inset: 0;
  z-index: 1;
  width: auto !important;
  height: auto !important;
  border: 0 !important;
}
body.discuzx5 #category_grid .slidebox_grid > div[id^="switch_"] {
  bottom: 0;
  left: 0;
  z-index: 2;
  margin: 0 !important;
}

/* Custom forum icons carry align="left"; keep the built-in fallback at 68px. */
/* A narrow table column expands to the image's intrinsic width, without spare space. */
body.discuzx5 .fl_icn:has(img[align="left"]) { width: 1px !important; }
body.discuzx5 .fl_icn img[align="left"] {
  width: auto !important;
  height: auto;
}

body.discuzx5 .fl_tb td { line-height: 18px; }
body.discuzx5 .fl_tb td > .xg2 ~ p { display: inline; margin-right: 1em; }
body.discuzx5 .fl_tb .fl_row > td { border-top: 1px dashed #cdcdcd; }

/* Silver glass sampled from the old eis_bar_l.gif, without a bitmap background. */
body.discuzx5 .fl .bm_h:has(+ [id^="category_"]) {
  height: 36px;
  line-height: 36px;
  margin-right: 0;
  margin-left: 0;
  padding-right: 10px;
  padding-left: 10px;
  border: 0;
  border-radius: 8px;
  background: linear-gradient(#f3f3f3 3%, #e7e7e7 47%, #ddd 50%, #d8d8d8 53%, #dadada 70%, #dcdcdc 97%);
  box-shadow: inset 0 0 0 1px #bababa, inset 0 2px 1px rgb(255 255 255 / 45%);
}
/* Foreground sampled from the old collapsed_no.gif. */
body.discuzx5 .fl .bm_h:has(+ [id^="category_"]) .o em { margin-top: 10px; color: #999; }

/* Default footer body in the old theme's compact, right-aligned glass panel. */
body.discuzx5 .dz_footc {
  min-height: 150px;
  margin-bottom: 20px;
  padding: 28px 14px 60px;
  background: #292646 url(https://c.moenext.com/touhou/bbs/template/discuzx5/style/touhou2026/assets/header.webp?v=e7ec4013fd342318) no-repeat center 88% / 100% auto;
}
body.discuzx5 .dz_footc #ft {
  width: auto;
  margin: 0;
  padding: 0;
  border: 0;
  background: none;
  color: #666;
  font: 12px/1.8 Tahoma, Helvetica, SimSun, sans-serif;
}
body.discuzx5 .dz_footc #flk {
  box-sizing: border-box;
  float: none;
  width: 610px;
  min-height: 48px;
  margin-left: auto;
  padding: 2px 8px;
  border: 1px solid rgb(170 170 170 / 70%);
  border-radius: 6px;
  background: rgb(255 255 255 / 78%);
  box-shadow: 0 1px 3px rgb(0 0 0 / 25%), inset 0 1px 0 rgb(255 255 255 / 80%);
  text-align: right;
}
body.discuzx5 .dz_footc #flk p { margin: 0; padding: 0; }
body.discuzx5 .dz_footc #flk .xs0 { font-size: 10px; }
body.discuzx5 .dz_footc a { color: #333; }
body.discuzx5 .dz_footc a:hover { color: #542d64; }
body.discuzx5 .dz_footc .pipe { margin: 0 5px; color: #666; }

/* Keep the configured palette; hide manual color selection. */
body.discuzx5 #sslct,
body.discuzx5 #sslct_menu,
body.discuzx5 .user-card-skin { display: none !important; }
