/* 2026-08-06 17:30 共练页面/gongzhi.html按客户提供HTML页面还原内容区域间距、字体和文字大小，公共head、导航和底部保持不变 */
/* 2026-08-06 17:40 在电脑版最大宽度1280px内优化内容列表宽度，压缩左侧分类栏并将内容卡片由4列调整为3列 */
.c_gongzhi_directory {
  --brand: #62c9bd;
  --brand-dark: #32a99d;
  --brand-soft: #e8f7f5;
  --ink: #20242a;
  --muted: #66717d;
  --line: #dce3e2;
  --section: #e5f1ed;
  --panel: #fff;
  --radius: 8px;
  --shadow: 0 14px 30px rgba(31, 48, 62, .12);
  width: calc(100% - 48px);
  max-width: 1280px;
  margin: 8px auto 48px;
  display: grid;
  grid-template-columns: 176px minmax(0, 1fr);
  gap: 12px;
  align-items: start;
  color: var(--ink);
  font-family: "Microsoft YaHei", "PingFang SC", Arial, sans-serif;
  font-size: 16px;
  letter-spacing: 0;
}
.c_gongzhi_directory *,
.c_gongzhi_directory *::before,
.c_gongzhi_directory *::after {
  box-sizing: border-box;
}
.c_gongzhi_directory a {
  color: inherit;
  text-decoration: none;
}
.c_gongzhi_directory button,
.c_gongzhi_directory input {
  font: inherit;
}
.c_gongzhi_directory button,
.c_gongzhi_directory a {
  -webkit-tap-highlight-color: transparent;
}
.c_gongzhi_directory button {
  cursor: pointer;
}
.c_gongzhi_directory button:focus-visible,
.c_gongzhi_directory a:focus-visible,
.c_gongzhi_directory input:focus-visible {
  outline: 3px solid rgba(50, 169, 157, .28);
  outline-offset: 2px;
}
.c_gongzhi_directory [hidden] {
  display: none !important;
}
.c_gongzhi_directory .sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.c_gongzhi_directory .category-sidebar {
  position: sticky;
  top: 90px;
  min-height: calc(100vh - 112px);
  padding-bottom: 18px;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 0 0 var(--radius) var(--radius);
  background: #f4f7f6;
}
.c_gongzhi_directory .category-link {
  min-height: 55px;
  padding: 0 14px;
  display: flex;
  align-items: center;
  gap: 10px;
  border-left: 3px solid transparent;
  color: #53606b;
  font-size: 16px;
}
.c_gongzhi_directory .category-link svg {
  flex: 0 0 auto;
  color: #7e8b95;
}
.c_gongzhi_directory .category-icon {
  width: 26px;
  height: 26px;
  flex: 0 0 auto;
  overflow: hidden;
  display: grid;
  place-items: center;
  border: 1px solid rgba(121, 139, 151, .16);
  border-radius: 5px;
  background: #fff;
}
.c_gongzhi_directory .category-icon img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}
.c_gongzhi_directory .category-link:hover {
  color: var(--brand-dark);
  background: #f4fbfa;
}
.c_gongzhi_directory .category-link.is-active {
  border-left-color: var(--brand-dark);
  background: #d9efeb;
  color: #268f85;
  font-weight: 700;
}
.c_gongzhi_directory .category-link.is-active svg {
  color: var(--brand-dark);
}
.c_gongzhi_directory .category-link.is-active .category-icon {
  border-color: rgba(50, 169, 157, .34);
  box-shadow: 0 3px 8px rgba(35, 83, 78, .08);
}
.c_gongzhi_directory .directory-content {
  min-width: 0;
}
.c_gongzhi_directory .search-panel {
  min-height: 108px;
  padding: 24px 28px;
  display: flex;
  align-items: center;
  gap: 0;
  background: #fbfdfd;
  border: 1px solid var(--line);
}
.c_gongzhi_directory .search-input {
  width: 100%;
  height: 64px;
  min-width: 0;
  padding: 0 20px;
  border: 1.5px solid var(--brand-dark);
  border-right: 0;
  border-radius: 8px 0 0 8px;
  background: #fbfdfd;
  color: var(--ink);
  font-size: 17px;
}
.c_gongzhi_directory .search-input::placeholder {
  color: #8d99a2;
}
.c_gongzhi_directory .search-input:focus {
  outline: none;
  box-shadow: inset 0 0 0 1px var(--brand-dark);
}
.c_gongzhi_directory .search-submit {
  width: 102px;
  height: 64px;
  flex: 0 0 auto;
  border: 0;
  border-radius: 0 8px 8px 0;
  background: var(--brand);
  color: #fff;
  font-size: 17px;
}
.c_gongzhi_directory .search-submit:hover {
  background: var(--brand-dark);
}
.c_gongzhi_directory .search-status {
  margin: 12px 4px -2px;
  color: var(--muted);
  font-size: 14px;
}
.c_gongzhi_directory .directory-section {
  margin-top: 16px;
  padding: 27px 26px 30px;
  border: 1px solid rgba(128, 151, 146, .12);
  border-radius: var(--radius);
  background: var(--section);
}
.c_gongzhi_directory .directory-section:nth-of-type(4n+1) {
  background: #e8edf4;
}
.c_gongzhi_directory .directory-section:nth-of-type(4n+2) {
  background: #e7f2f2;
}
.c_gongzhi_directory .directory-section:nth-of-type(4n+3) {
  background: #e5f1ed;
}
.c_gongzhi_directory .directory-section:nth-of-type(4n+4) {
  background: #f3eee5;
}
.c_gongzhi_directory .section-heading {
  min-height: 56px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.c_gongzhi_directory .section-title {
  margin: 0;
  color: #232930;
  font-family: "Microsoft YaHei", "PingFang SC", Arial, sans-serif;
  font-size: 29px;
  font-weight: 700;
  line-height: 1;
}
.c_gongzhi_directory .directory-grid,
.c_gongzhi_directory .c_gongyongul-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  margin: 0;
  padding: 0;
}
.c_gongzhi_directory .c_gongyongul-card {
  position: relative;
  overflow: hidden;
  min-width: 0;
  min-height: 132px;
  height: auto;
  padding: 0;
  border: 1px solid rgba(128, 145, 155, .22);
  border-radius: var(--radius);
  background: var(--panel);
  box-shadow: 0 8px 22px rgba(35, 50, 61, .09);
  text-align: center;
  transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.c_gongzhi_directory .c_gongyongul-card::before {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 3px;
  background: var(--brand);
  content: "";
  transition: height .18s ease;
}
.c_gongzhi_directory .directory-section:nth-of-type(4n+1) .c_gongyongul-card::before {
  background: #8ca4bd;
}
.c_gongzhi_directory .directory-section:nth-of-type(4n+2) .c_gongyongul-card::before {
  background: #5baeb0;
}
.c_gongzhi_directory .directory-section:nth-of-type(4n+3) .c_gongyongul-card::before {
  background: #65ae91;
}
.c_gongzhi_directory .directory-section:nth-of-type(4n+4) .c_gongyongul-card::before {
  background: #c9a15a;
}
.c_gongzhi_directory .c_gongyongul-card:hover {
  border-color: rgba(50, 169, 157, .6);
  box-shadow: var(--shadow);
  transform: translateY(-2px);
}
.c_gongzhi_directory .c_gongyongul-card:hover::before {
  height: 4px;
}
.c_gongzhi_directory .c_gongyongul-card > a {
  min-height: 132px;
  padding: 19px 18px 16px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  color: inherit;
}
/* 2026-08-06 17:36 修正共练内容卡片受公共资源卡片样式影响，按客户提供HTML页面保持卡片标题、简介隐藏和按钮显示 */
.c_gongzhi_directory .c_gongyongul-card .c_gongyongul-card-image {
  display: none;
  width: 0;
  height: 0;
  margin: 0;
  padding: 0;
}
.c_gongzhi_directory .c_gongyongul-card .c_gongyongul-card-content {
  width: 100%;
  display: block;
}
.c_gongzhi_directory .c_gongyongul-card .c_gongyongul-card-content .card-content-title {
  width: 100%;
  min-height: 44px;
  margin: 0;
  display: grid;
  place-items: center;
  color: #1f252c;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.35;
  white-space: normal;
  overflow-wrap: anywhere;
}
.c_gongzhi_directory .c_gongyongul-card .c_gongyongul-card-content .card-content-desc {
  display: none;
  margin: 0;
  height: 0;
  overflow: hidden;
}
.c_gongzhi_directory .c_gongyongul-card > a::after {
  content: "开始";
  align-self: center;
  min-width: 80px;
  height: 32px;
  margin-top: 12px;
  padding: 0 18px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  background: var(--brand-dark);
  box-shadow: 0 4px 10px rgba(50, 169, 157, .18);
  color: #fff;
  font-size: 13px;
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
  transition: background-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.c_gongzhi_directory .c_gongyongul-card:hover > a::after {
  background: #278f85;
  box-shadow: 0 6px 14px rgba(50, 169, 157, .28);
  transform: translateY(-1px);
}
.c_gongzhi_directory .empty-state {
  margin: 18px 0 0;
  padding: 36px 20px;
  border: 1px dashed #cbd7da;
  border-radius: var(--radius);
  background: #fff;
  color: var(--muted);
  text-align: center;
}
@media (prefers-reduced-motion: reduce) {
  .c_gongzhi_directory *,
  .c_gongzhi_directory *::before,
  .c_gongzhi_directory *::after {
    transition-duration: .01ms !important;
  }
}
@media (max-width: 1100px) {
  .c_gongzhi_directory {
    width: calc(100% - 28px);
    grid-template-columns: 166px minmax(0, 1fr);
    gap: 10px;
  }
  .c_gongzhi_directory .directory-grid,
  .c_gongzhi_directory .c_gongyongul-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 860px) {
  .c_gongzhi_directory {
    grid-template-columns: 1fr;
    margin-top: 8px;
  }
  .c_gongzhi_directory .category-sidebar {
    position: static;
    min-height: 0;
    padding: 10px;
    display: flex;
    gap: 8px;
    overflow-x: auto;
    border-radius: var(--radius);
  }
  .c_gongzhi_directory .category-link {
    min-height: 42px;
    padding: 0 12px;
    flex: 0 0 auto;
    border-left: 0;
    border-radius: 999px;
    border: 1px solid transparent;
    font-size: 14px;
    background: #fff;
  }
  .c_gongzhi_directory .category-link.is-active {
    border-color: rgba(50, 169, 157, .34);
  }
  .c_gongzhi_directory .search-panel {
    min-height: auto;
    padding: 16px;
  }
  .c_gongzhi_directory .search-input,
  .c_gongzhi_directory .search-submit {
    height: 48px;
    font-size: 15px;
  }
  .c_gongzhi_directory .search-submit {
    width: 82px;
  }
  .c_gongzhi_directory .directory-section {
    padding: 20px 16px 22px;
  }
  .c_gongzhi_directory .section-heading {
    min-height: 44px;
  }
  .c_gongzhi_directory .section-title {
    font-size: 24px;
  }
  .c_gongzhi_directory .directory-grid,
  .c_gongzhi_directory .c_gongyongul-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
  }
}
@media (max-width: 560px) {
  .c_gongzhi_directory {
    width: calc(100% - 20px);
    margin-bottom: 30px;
  }
  .c_gongzhi_directory .category-icon {
    width: 22px;
    height: 22px;
  }
  .c_gongzhi_directory .search-panel {
    padding: 12px;
  }
  .c_gongzhi_directory .search-input {
    padding: 0 12px;
  }
  .c_gongzhi_directory .search-submit {
    width: 70px;
  }
  .c_gongzhi_directory .directory-grid,
  .c_gongzhi_directory .c_gongyongul-grid {
    grid-template-columns: 1fr;
  }
  .c_gongzhi_directory .c_gongyongul-card,
  .c_gongzhi_directory .c_gongyongul-card > a {
    min-height: 112px;
  }
  .c_gongzhi_directory .c_gongyongul-card .c_gongyongul-card-content .card-content-title {
    min-height: 36px;
    font-size: 18px;
  }
}
