body#s-PengumumanPublikPage { margin: 0; background: #edf8fd; color: #082c70; }
.announcement-page .announcement-pinned { color: #9a6500; background: #fff0c8; }
.announcement-page .publication-download.disabled { color: #8999af; background: #edf1f4; cursor: not-allowed; }
.announcement-page .publication-item-copy > p { -webkit-line-clamp: 3; }
.announcement-title-link { color: #082f73; text-decoration: none; }
.announcement-title-link:hover { color: #078af0; }
.announcement-item-actions { display: flex; flex-direction: column; align-items: stretch; gap: 7px; }
.announcement-item-actions .publication-download { width: 64px; height: 48px; }
.announcement-open-detail { width: 64px; min-height: 30px; display: flex; align-items: center; justify-content: center; gap: 5px; border-radius: 9px; color: #fff; background: #0878d9; font-size: 9px; font-weight: 700; }
.announcement-open-detail:hover { color: #fff; background: #0566bd; }

/* Detail Pengumuman: konten 2/3 dan ringkasan lainnya 1/3 */
.announcement-detail-layout { display: grid; grid-template-columns: minmax(0, 2fr) minmax(280px, 1fr); align-items: start; gap: 24px; }
.announcement-detail-card { min-width: 0; padding: 34px 38px 45px; border: 1px solid rgba(255,255,255,.9); border-radius: 16px; background: #fff; box-shadow: 0 10px 30px rgba(16,91,140,.09); }
.announcement-back { margin-bottom: 23px; display: inline-flex; align-items: center; gap: 8px; color: #087adf; font-size: 11px; font-weight: 700; }
.announcement-detail-tags { display: flex; flex-wrap: wrap; gap: 7px; margin-bottom: 10px; }
.announcement-detail-tags > span { min-height: 25px; padding: 0 11px; display: inline-flex; align-items: center; gap: 5px; border-radius: 13px; color: #0878d9; background: #e3f3fe; font-size: 10px; font-weight: 800; letter-spacing: .4px; text-transform: uppercase; }
.announcement-detail-tags .announcement-important { color: #9a6500; background: #fff0c8; }
.announcement-detail-card > h1 { margin: 0 0 9px; color: #062e78; font: 800 30px/1.3 Poppins, sans-serif; }
.announcement-detail-meta { display: flex; flex-wrap: wrap; gap: 10px 22px; margin-bottom: 23px; color: #7386a6; font-size: 11px; }
.announcement-detail-meta i { margin-right: 5px; color: #078af0; }
.announcement-detail-lead { min-height: 72px; margin-bottom: 24px; padding: 15px 18px; display: flex; align-items: center; gap: 14px; border-left: 4px solid #078af0; border-radius: 0 10px 10px 0; color: #315983; background: #eef8fe; font-size: 14px; font-weight: 700; }
.announcement-detail-lead i { color: #078af0; font-size: 24px; }
.announcement-detail-content { color: #385484; font-size: 13px; line-height: 1.78; }
.announcement-detail-content h2, .announcement-detail-content h3, .announcement-detail-content h4 { margin: 24px 0 10px; color: #062e78; font-family: Poppins, sans-serif; }
.announcement-detail-content img { max-width: 100%; height: auto; border-radius: 9px; }
.announcement-detail-content a { color: #087adf; text-decoration: underline; }
.announcement-attachment { margin-top: 28px; padding: 16px; display: grid; grid-template-columns: 48px minmax(0, 1fr) auto; align-items: center; gap: 13px; border: 1px solid #dcecf6; border-radius: 12px; background: #f5fbfe; }
.announcement-attachment-icon { width: 48px; height: 48px; display: grid; place-items: center; border-radius: 11px; color: #0878d9; background: #dff1fd; font-size: 19px; }
.announcement-attachment strong, .announcement-attachment small { display: block; }
.announcement-attachment strong { color: #113e78; font-size: 12px; }
.announcement-attachment small { margin-top: 3px; color: #6d83a1; font-size: 9px; line-height: 1.4; }
.announcement-attachment > a { min-height: 36px; padding: 0 14px; display: inline-flex; align-items: center; gap: 7px; border-radius: 18px; color: #fff; background: linear-gradient(90deg, #079cf3, #0872dd); font-size: 10px; font-weight: 700; white-space: nowrap; }

.announcement-related { min-width: 0; position: sticky; top: 125px; padding: 27px 22px 23px; border: 1px solid rgba(255,255,255,.9); border-radius: 16px; background: rgba(255,255,255,.95); box-shadow: 0 10px 30px rgba(16,91,140,.09); }
.announcement-related-header { padding-bottom: 15px; border-bottom: 1px solid #e5f0f6; }
.announcement-related-header > span { display: block; margin-bottom: 4px; color: #078af0; font-size: 10px; font-weight: 800; letter-spacing: 1.4px; }
.announcement-related-header h2 { margin: 0; color: #062e78; font: 800 21px/1.25 Poppins, sans-serif; }
.announcement-related-header p { margin: 6px 0 0; color: #7386a6; font-size: 11px; line-height: 1.5; }
.announcement-related-list { display: flex; flex-direction: column; }
.announcement-related-item { display: grid; grid-template-columns: 64px minmax(0, 1fr); gap: 12px; padding: 16px 0; border-bottom: 1px solid #eaf2f7; }
.announcement-related-date { width: 64px; height: 65px; display: flex; flex-direction: column; align-items: center; justify-content: center; border-radius: 10px; color: #075aa8; background: #e5f3fc; }
.announcement-related-date strong { font-size: 21px; line-height: 1; }
.announcement-related-date span { margin-top: 5px; font-size: 7px; font-weight: 800; white-space: nowrap; }
.announcement-related-item > div { min-width: 0; }
.announcement-related-item > div > small { display: block; overflow: hidden; color: #0781df; font-size: 8px; font-weight: 800; letter-spacing: .3px; text-overflow: ellipsis; text-transform: uppercase; white-space: nowrap; }
.announcement-related-item h3 { margin: 4px 0; font: 700 12px/1.38 Poppins, sans-serif; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; }
.announcement-related-item h3 a { color: #123b74; }
.announcement-related-item p { margin: 0 0 5px; color: #62799b; font-size: 9px; line-height: 1.42; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; }
.announcement-related-link { color: #0781e5; font-size: 9px; font-weight: 700; }
.announcement-related-link i { margin-left: 4px; font-size: 8px; }
.announcement-related-all { min-height: 38px; margin-top: 17px; display: flex; align-items: center; justify-content: center; gap: 9px; border-radius: 20px; color: #fff; background: linear-gradient(90deg, #079cf3, #0872dd); font-size: 11px; font-weight: 700; box-shadow: 0 7px 16px rgba(7,126,224,.18); }
.announcement-related-empty { min-height: 180px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 9px; color: #7189a6; font-size: 11px; }
.announcement-related-empty i { color: #82bddc; font-size: 32px; }

@media (max-width: 960px) {
    .announcement-detail-layout { grid-template-columns: 1fr; }
    .announcement-related { position: static; }
    .announcement-related-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 20px; }
}

@media (max-width: 620px) {
    .announcement-page .publication-item-copy > p { -webkit-line-clamp: 4; }
    .announcement-item-actions { grid-column: 2; flex-direction: row; }
    .announcement-item-actions .publication-download, .announcement-open-detail { width: auto; min-width: 92px; height: 34px; flex-direction: row; }
    .announcement-detail-layout { gap: 16px; }
    .announcement-detail-card { padding: 24px 18px 32px; }
    .announcement-detail-card > h1 { font-size: 24px; }
    .announcement-detail-lead { font-size: 12px; }
    .announcement-attachment { grid-template-columns: 42px minmax(0, 1fr); }
    .announcement-attachment-icon { width: 42px; height: 42px; }
    .announcement-attachment > a { grid-column: 1 / -1; justify-content: center; }
    .announcement-related { padding: 23px 18px 20px; }
    .announcement-related-list { grid-template-columns: 1fr; }
}
