/* GTAFB unified light theme for Discuz common pages */
:root {
  --gta-primary: #178bff;
  --gta-primary-deep: #1677ff;
  --gta-bg: #eef5fc;
  --gta-bg-soft: #f8fbff;
  --gta-text: #1b2a41;
  --gta-muted: #60738f;
  --gta-border: #dbe7f3;
  --gta-shadow: 0 12px 30px rgba(24, 67, 115, 0.12);
}

html,
body {
  min-height: 100%;
}

body {
  font-family: "Alibaba PuHuiTi 3.0", "HarmonyOS Sans SC", "PingFang SC", "Noto Sans SC", "Microsoft YaHei", sans-serif;
  color: var(--gta-text);
  background:
    radial-gradient(circle at 10% -20%, rgba(20, 156, 255, 0.16), transparent 44%),
    radial-gradient(circle at 100% 0, rgba(255, 178, 52, 0.18), transparent 46%),
    linear-gradient(180deg, #f8fbff 0%, var(--gta-bg) 56%, #f8fbff 100%);
}

a {
  color: #24364e;
}

a:hover {
  color: var(--gta-primary);
}

.wp,
#wp {
  width: 1200px;
  max-width: calc(100% - 32px);
  min-width: 0;
}

#toptb {
  border-bottom: 1px solid rgba(20, 56, 103, 0.08);
  background: rgba(255, 255, 255, 0.72);
  backdrop-filter: blur(4px);
}

#toptb .wp {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 36px;
}

#toptb .wp .z,
#toptb .wp .y {
  float: none;
}

#toptb .wp .z {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

#toptb .wp .y {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  flex-wrap: wrap;
}

#toptb a,
#toptb span {
  color: var(--gta-muted);
}

.gtafb-top-user {
  list-style: none;
  margin: 0 0 0 6px;
  padding: 0;
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

.gtafb-top-user li {
  margin: 0;
  padding: 0;
}

.gtafb-top-user a {
  color: var(--gta-muted) !important;
  font-size: 12px;
  white-space: nowrap;
}

.gtafb-top-user a:hover {
  color: var(--gta-primary) !important;
}

.gtafb-top-user .gtafb-top-setting {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  border-radius: 6px;
  border: 1px solid rgba(23, 139, 255, 0.28);
  background: rgba(227, 241, 255, 0.6);
  color: #2f78be !important;
  line-height: 1;
}

.gtafb-top-user .gtafb-top-setting:hover {
  border-color: #178bff;
  background: #178bff;
  color: #fff !important;
}

.gtafb-top-user .gtafb-setting-ico {
  font-size: 12px;
  line-height: 1;
}

.gtafb-top-avatar img {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  display: block;
}

#hd {
  background: transparent;
  border-bottom: 0;
}

#hd .wp {
  margin-top: 14px;
  border-radius: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
  padding: 0;
}

#hd .hdc {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 12px;
  gap: 18px;
  border-radius: 18px;
  border: 1px solid rgba(255, 255, 255, 0.75);
  background: rgba(255, 255, 255, 0.9);
  box-shadow: var(--gta-shadow);
  padding: 18px 20px 14px;
}

#hd h2 img,
#hd h2 svg {
  max-height: 56px;
  width: auto;
}

#hd h2.gtafb-site-logo {
  margin: 0;
  flex: 0 0 auto;
}

#hd h2.gtafb-site-logo a {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  width: 220px;
  height: 56px;
}

#hd h2.gtafb-site-logo img {
  display: block;
  max-height: 56px;
  width: auto;
}

.gtafb-header-search {
  flex: 1 1 auto;
  min-width: 320px;
}

.gtafb-search-form {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0;
}

.gtafb-search-input {
  flex: 1 1 auto;
  width: 100%;
  min-width: 0;
  height: 46px;
  border: 1px solid #d5e4f3;
  border-radius: 24px;
  background: #f9fcff;
  padding: 0 18px;
  color: #425a78;
  box-shadow: inset 0 1px 1px rgba(18, 62, 112, 0.04);
  outline: none;
}

.gtafb-search-input:focus {
  border-color: #97c8f4;
  background: #fff;
  box-shadow: 0 0 0 3px rgba(23, 139, 255, 0.12);
}

.gtafb-search-btn {
  flex: 0 0 auto;
  min-width: 116px;
  height: 46px;
  border-radius: 24px;
  border: 0;
  background: linear-gradient(90deg, #40a8e4 0%, #4295d7 100%);
  box-shadow: 0 8px 18px rgba(54, 145, 214, 0.35);
  color: #fff;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
}

.gtafb-search-btn:hover {
  background: linear-gradient(90deg, #319ddd 0%, #338ccd 100%);
}

.gtafb-header-actions {
  flex: 0 0 auto;
  display: flex;
  gap: 10px;
}

#nv {
  border: 0;
  border-radius: 0;
  background: linear-gradient(90deg, #48a8df 0%, #5aa3df 100%);
  box-shadow: none;
  min-height: 46px;
  overflow: hidden;
  padding-left: 0;
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  margin-bottom: 0;
}

#nv #qmenu {
  display: none;
}

#nv ul,
#nv ul li {
  height: 46px;
  line-height: 46px;
}

#nv ul {
  background: transparent;
  width: 1200px;
  max-width: calc(100% - 32px);
  margin: 0 auto;
  padding: 0;
  float: none;
  border: 0;
  border-top: 0;
  border-bottom: 0;
  box-shadow: none;
  background-image: none;
}

#nv ul:before,
#nv ul:after {
  content: none;
  display: none;
}

#nv li {
  background: transparent;
  border-right: 0;
  border-top: 0;
  border-bottom: 0;
  background-image: none;
}

#nv li a {
  display: block;
  height: 46px;
  line-height: 46px;
  background: transparent;
  padding: 0 12px;
  color: #fff;
  font-weight: 600;
  border: 0;
  font-size: 15px;
  background-image: none;
  text-shadow: none;
}

#nv li > a.a,
#nv li > a.current {
  background: transparent !important;
  color: #fff !important;
}

#nv li.a a {
  background: rgba(255, 255, 255, 0.2);
  color: #fff;
}

#nv li:hover a {
  background: rgba(255, 255, 255, 0.06);
  color: #fff;
}

/* Force single active nav by current basescript to avoid dual-highlight issues */
body#nv_forum #nv li.a,
body#nv_plugin #nv li.a {
  margin-left: 0 !important;
  background: transparent !important;
}

body#nv_forum #nv li a {
  background: transparent !important;
}

body#nv_forum #nv li.a a {
  background: transparent !important;
}

body#nv_forum #nv li a[href*="forum.php"] {
  background: rgba(255, 255, 255, 0.2) !important;
}

body#nv_plugin #nv li a {
  background: transparent !important;
}

body#nv_plugin #nv li.a a {
  background: transparent !important;
}

body#nv_plugin #nv li a[href*="plugin.php?id=mini_gamelist"] {
  background: rgba(255, 255, 255, 0.2) !important;
}

#mu {
  display: none;
}

body.pg_space #ct.ct2_a,
body.pg_spacecp #ct.ct2_a {
  display: flex;
  align-items: stretch;
  padding: 0;
  border: 1px solid #dbe7f3;
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.88);
  box-shadow: 0 8px 20px rgba(24, 67, 115, 0.06);
  overflow: hidden;
}

body.pg_space #ct.ct2_a:after,
body.pg_spacecp #ct.ct2_a:after {
  content: none;
  display: none;
}

body.pg_space #ct.ct2_a .appl,
body.pg_spacecp #ct.ct2_a .appl {
  order: 1;
  flex: 0 0 192px;
  width: 192px;
  margin: 0;
  padding: 14px 12px;
  float: none;
  border: 0;
  border-right: 1px solid #e6eef8;
  background: #f8fbff;
  align-self: stretch;
  box-sizing: border-box;
}

body.pg_space #ct.ct2_a .mn,
body.pg_spacecp #ct.ct2_a .mn {
  order: 2;
  flex: 1 1 auto;
  min-width: 0;
  float: none;
  width: auto;
  margin: 0;
  padding: 14px 16px 18px;
  box-sizing: border-box;
}

body.pg_space #ct.ct2_a .mn .bm.bw0,
body.pg_spacecp #ct.ct2_a .mn .bm.bw0 {
  border: 0;
  background: transparent;
  box-shadow: none;
}

body.pg_space #ct.ct2_a .mn .emp,
body.pg_spacecp #ct.ct2_a .mn .emp {
  margin: 12px 0;
  padding: 18px 16px;
  border: 1px solid #e4edf8;
  border-radius: 12px;
  background: #fff;
}

body.pg_space #ct.ct2_a .tbn,
body.pg_spacecp #ct.ct2_a .tbn {
  margin: 0;
  border: 1px solid #e3edf9;
  border-radius: 12px;
  background: #fff;
}

body.pg_space #ct.ct2_a .tbn .mt,
body.pg_spacecp #ct.ct2_a .tbn .mt {
  margin: 0;
  padding: 12px;
  border-bottom: 1px solid #e6eef8;
}

body.pg_space #ct.ct2_a .tbn li,
body.pg_spacecp #ct.ct2_a .tbn li {
  margin: 0;
  padding: 0 10px;
  height: 38px;
  line-height: 38px;
  border-bottom: 1px dashed #d8e6f5;
}

body.pg_space #ct.ct2_a .tbn li.a,
body.pg_spacecp #ct.ct2_a .tbn li.a {
  margin: 0;
  padding: 0 10px;
  border-top: 0;
  border-bottom: 1px solid #d9e8f8;
  background: #edf6ff;
}

body.pg_space #ct.ct2_a .tbn ul a,
body.pg_spacecp #ct.ct2_a .tbn ul a {
  height: 38px;
  line-height: 38px;
}

body.pg_spacecp #retpre a {
  display: inline-block;
  padding: 4px 10px;
  border: 1px solid #b7cff0;
  border-radius: 8px;
  background: #f2f8ff;
  color: #2f78be;
}

body.pg_spacecp #retpre a:hover {
  border-color: #7fb5ea;
  background: #fff;
}

#pt {
  margin: 14px auto;
  border: 1px solid #deebf8;
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.9);
  box-shadow: 0 6px 16px rgba(24, 67, 115, 0.06);
  padding: 0 12px;
}

#pt .z {
  line-height: 40px;
}

#pt .z a {
  color: #5e7390;
}

.bm {
  border: 1px solid var(--gta-border);
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 8px 24px rgba(21, 72, 130, 0.06);
}

.bm_h {
  border-bottom: 1px solid #edf3fa;
  background: linear-gradient(180deg, #fbfdff 0%, #f7fbff 100%);
  color: #2f405a;
}

.bm_c,
.pbn,
.pbm {
  color: #2a3d57;
}

.pg strong,
.pg a,
.pgb a,
.pg label {
  border-radius: 8px;
  border-color: #d8e5f5;
}

.pg strong {
  background: var(--gta-primary);
  border-color: var(--gta-primary);
}

.pn,
.pnc,
a.pnc {
  border-radius: 8px;
  border-color: var(--gta-primary);
  background: var(--gta-primary);
  color: #fff;
}

.pn:hover,
.pnc:hover,
a.pnc:hover {
  border-color: var(--gta-primary-deep);
  background: var(--gta-primary-deep);
}

input,
textarea,
select,
.px,
.pt,
.ps {
  border-color: #d6e4f3;
  border-radius: 8px;
}

.p_pop,
.p_opt,
.fwinmask,
.fwin {
  border-radius: 10px;
}

#ft {
  margin-top: 24px;
  border-top: 0;
  background: linear-gradient(180deg, #1f3045 0%, #24364e 100%);
  color: #d4e7ff;
  padding: 22px 0 26px;
}

#ft .wp {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 22px;
}

#flk p,
#frt p,
#flk,
#frt,
#ft .xs0,
#ft a {
  color: #d4e7ff;
}

#flk .pipe {
  color: rgba(212, 231, 255, 0.45);
}

#scrolltop a {
  border-radius: 10px;
}

@media (max-width: 1024px) {
  .wp,
  #wp {
    width: auto;
    max-width: calc(100% - 20px);
  }

  #toptb .wp {
    display: block;
    padding: 5px 0;
  }

  #toptb .wp .y {
    justify-content: flex-start;
    margin-top: 4px;
  }

  #hd .wp {
    padding: 0;
  }

  #hd .hdc {
    display: block;
    padding: 14px 12px 10px;
  }

  #hd .hdc h2 {
    margin-bottom: 10px;
  }

  .gtafb-header-search {
    margin-bottom: 10px;
  }

  .gtafb-search-form {
    gap: 8px;
  }

  .gtafb-search-input {
    height: 42px;
  }

  .gtafb-search-btn {
    min-width: 92px;
    height: 42px;
  }

  .gtafb-header-actions {
    justify-content: flex-start;
    margin-bottom: 8px;
  }

  #nv ul,
  #nv ul li {
    height: 46px;
    line-height: 46px;
  }

  #nv li {
    float: none;
    border-top: 0;
  }

  body.pg_space #ct.ct2_a,
  body.pg_spacecp #ct.ct2_a {
    display: block;
    overflow: visible;
  }

  body.pg_space #ct.ct2_a .appl,
  body.pg_spacecp #ct.ct2_a .appl {
    width: auto;
    flex: 0 0 auto;
    border-right: 0;
    border-bottom: 1px solid #e6eef8;
  }

  body.pg_space #ct.ct2_a .mn,
  body.pg_spacecp #ct.ct2_a .mn {
    width: auto;
    margin: 0;
    padding: 12px;
  }

  #ft .wp {
    display: block;
  }
}

.cnet-footer {
  margin-top: 24px;
  background: linear-gradient(180deg, #1f3045 0%, #24364e 100%);
  color: #d4e7ff;
}

.cnet-copyright {
  width: 1200px;
  max-width: calc(100% - 32px);
  margin: 0 auto;
  padding: 22px 0 24px;
  text-align: center;
}

.cnet-footer a,
.cnet-footer p,
.cnet-footer strong,
.cnet-footer em,
.cnet-footer .xs0 {
  color: #d4e7ff;
}

.cnet-footer .pipe {
  color: rgba(212, 231, 255, 0.45);
}
