.hidden { display: none !important; }

.page-container { flex-grow: 1; }

.hero-card { background-color: #ffffff; padding: 1.5rem 1rem; border-bottom: 1px solid #c4c5d5; box-shadow: 0 1px 2px 0 rgba(0,0,0,0.05); }
.inst-info { display: flex; align-items: center; gap: 1rem; margin-bottom: 1rem; }
.logo-wrapper {  overflow: hidden;  margin:0 auto;}
.logo-wrapper img{height: 80px;margin:0 auto;}
.inst-title { font-family: "Noto Serif SC", serif; font-size: 22px; line-height: 30px; font-weight: 700; color: #002068; }
.badge { display: inline-block; padding: 0.125rem 0.5rem; background-color: rgba(0,51,153,0.1); color: #002068; border: 1px solid rgba(0,32,104,0.2); border-radius: 0.5rem; font-family: "Work Sans", sans-serif; font-size: 12px; line-height: 16px; font-weight: 500; }
.hzz-logo-wrapper{}
.hzz-logo-wrapper img{width:120px; height: auto;}


.tabs-nav { display: flex; border-bottom: 1px solid #c4c5d5; margin-bottom: 1rem; }
.tab-btn { flex: 1; padding: 0.75rem 0; text-align: center; border: none; background: transparent; cursor: pointer; color: #444653; font-family: inherit; font-size: 14px; transition: all 0.2s; }
.tab-btn:hover { color: #002068; }
.tab-btn.active-tab { border-bottom: 3px solid #002068; color: #002068; font-weight: 700; }

.intro-banner { border-radius: 0.75rem; overflow: hidden; box-shadow: 0 1px 2px 0 rgba(0,0,0,0.05); border: 1px solid #c4c5d5; margin-bottom: 1rem; }
.banner-img { width: 100%; height: 12rem; object-fit: cover; }
.intro-text-box { display: flex; flex-direction: column; gap: 1rem; color: #444653; line-height: 1.625; }
.quote-text { border-left: 4px solid #002068; padding-left: 1rem; font-style: italic; color: rgba(27,28,28,0.8); }

.works-list { display: flex; flex-direction: column; gap: 1rem; }
.work-item { display: flex; gap: 0.5rem; padding: 0.5rem; border-radius: 0.5rem; border: 1px solid transparent; transition: background-color 0.2s, border-color 0.2s; cursor: pointer; }
.work-item:hover { background-color: #f6f3f2; border-color: #c4c5d5; }
.work-thumb { width: 6rem; height: 6rem; object-fit: cover; border-radius: 0.5rem; flex-shrink: 0; }
.work-details { display: flex; flex-direction: column; justify-content: space-between; padding: 0.25rem 0; flex: 1; }
.work-title { font-size: 16px; line-height: 24px; font-weight: bold; color: #1b1c1c; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.work-meta { display: flex; align-items: center; gap: 0.75rem; font-family: "Work Sans", sans-serif; font-size: 12px; line-height: 16px; font-weight: 500; color: #444653; }
.meta-views { display: flex; align-items: center; gap: 0.25rem; }
.meta-views .material-symbols-outlined { font-size: 12px; }

.article-card { background-color: #ffffff; border-radius: 0.75rem; box-shadow: 0 1px 2px 0 rgba(0,0,0,0.05); overflow: hidden; border: 1px solid #c4c5d5; }
.article-item { padding: 1rem; border-bottom: 1px solid #c4c5d5; cursor: pointer; transition: background-color 0.2s; }
.article-item:hover { background-color: #f9fafb; }
.article-card .article-item:last-child { border-bottom: 0; }
.article-item-title { font-size: 16px; line-height: 24px; font-weight: bold; color: #1b1c1c; margin-bottom: 0.5rem; }
.article-item-desc { color: #444653; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }

.audio-grid { display: grid; grid-template-columns: 1fr; gap: 0.5rem; }
.audio-card { background-color: #ffffff; padding: 0.75rem; border-radius: 0.75rem; display: flex; align-items: center; gap: 1rem; border: 1px solid #c4c5d5; cursor: pointer; transition: background-color 0.2s; }
.audio-card:hover { background-color: #f9fafb; }
.audio-play-btn { width: 2.5rem; height: 2.5rem; background-color: rgba(0,51,153,0.2); color: #002068; border-radius: 9999px; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.audio-info { flex-grow: 1; }
.audio-title { font-weight: bold; color: #1b1c1c; }
.audio-meta { font-family: "Work Sans", sans-serif; font-size: 12px; line-height: 16px; font-weight: 500; color: #444653; }


/* 针对 hzz_list.html 的特定样式 */
.page-header-sec { padding: 1.5rem 1rem; background-color: #ffffff; border-bottom: 1px solid #c4c5d5; }
.section-accent { border-left: 4px solid #002068; padding-left: 1rem; }
.page-title { font-family: "Noto Serif SC", serif; font-size: 24px; font-weight: 700; color: #1b1c1c; }
.partner-grid { padding-top: 1.5rem; display: grid; grid-template-columns: 1fr; gap: 1.5rem; }
.partner-card { background-color: #ffffff; border: 1px solid #c4c5d5; border-radius: 0.75rem; padding: 1.5rem; cursor: pointer; transition: transform 0.2s, box-shadow 0.2s; }
.partner-card:hover { transform: translateY(-2px); box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1); }
.hzz-card-title { font-size: 16px; font-weight: 700; color: #002068; margin: 1rem 0 0.5rem; }
.hzz-card-desc { font-size: 14px; color: #444653; line-height: 1.5; }