/* Duyurular (page-announcement.tpl) modülü — bağımsız tasarım dosyası.
   Sayfa hem liste hem tekil duyuru görünümünü aynı .tpl içinde ".ann-*"
   class'larıyla render ediyor. Site genelinde paylaşılan class'lara
   (.sub-hero, .breadcrumb-list, .section-wrapper, .v-primary-btn) DOKUNULMUYOR
   — hepsi başka sayfalarda da (sözleşme/politika sayfaları, blog, panel)
   kullanılıyor. .q-card-wrapper / .page-content de aynı sebeple bu sayfada
   artık kullanılmıyor (page-contract.tpl ile paylaşılıyordu, redesign onu
   etkilemesin diye tamamen yeni .ann-* class'larına geçildi).
   Renk/spacing dili templates/veridyen assets/css/style.css'teki mevcut
   design token'larla (var(--color-primary-blue) vb.) birebir aynı; wpkb
   modülündeki kb.css ile aynı görsel dile bilerek uyuldu. (2026-09-16) */

/* ---- Liste sayfası ---- */

.ann-list {
    list-style: none !important;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.ann-item {
    background: var(--white);
    border: 1px solid var(--light);
    border-radius: 12px;
    transition: border-color .15s ease;
}

.ann-item:hover {
    border-color: var(--color-primary-blue);
}

.ann-item-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 18px 22px;
    text-decoration: none !important;
    color: inherit;
}

.ann-item-title {
    display: flex;
    align-items: center;
    gap: 14px;
    min-width: 0;
}

.ann-item-icon {
    flex-shrink: 0;
    width: 34px;
    height: 34px;
    border-radius: 9px;
    background: var(--color-primary-blue-opacity-10);
    display: flex;
    align-items: center;
    justify-content: center;
}

.ann-item-icon i {
    color: var(--color-primary-blue);
    font-size: 15px;
}

.ann-item-title span {
    font-size: var(--font-size-base);
    font-weight: 700;
    color: var(--color-dark-blue);
    font-family: var(--font-family-heading), sans-serif;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ann-item:hover .ann-item-title span {
    color: var(--color-primary-blue);
}

.ann-date-pill {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    padding: 6px 14px;
    border-radius: 999px;
    background: var(--color-primary-blue-opacity-10);
    color: var(--color-primary-blue);
    font-size: var(--font-size-xs);
    font-weight: 700;
    white-space: nowrap;
}

.ann-empty {
    background: var(--white);
    border: 1px solid var(--light);
    border-radius: 12px;
    padding: 40px 24px;
    text-align: center;
    color: #6b7a99;
    font-size: var(--font-size-base);
}

/* ---- Tekil duyuru sayfası ---- */

.ann-detail-card {
    background: var(--white);
    border: 1px solid var(--light);
    border-radius: 12px;
    overflow: hidden;
}

.ann-detail-head {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 24px 30px;
    border-bottom: 1px solid var(--light);
}

.ann-detail-icon {
    flex-shrink: 0;
    width: 40px;
    height: 40px;
    border-radius: 10px;
    background: var(--color-primary-blue-opacity-10);
    display: flex;
    align-items: center;
    justify-content: center;
}

.ann-detail-icon i {
    color: var(--color-primary-blue);
    font-size: 18px;
}

.ann-detail-body {
    padding: 28px 30px;
    font-size: var(--font-size-base);
    line-height: var(--line-height-relaxed);
    color: #4b5565;
}

.ann-detail-body h2,
.ann-detail-body h3,
.ann-detail-body h4,
.ann-detail-body h5,
.ann-detail-body h6 {
    color: var(--color-dark-blue);
    font-family: var(--font-family-heading), sans-serif;
    font-weight: var(--font-weight-semibold);
    margin: 24px 0 12px;
}

.ann-detail-body h2 { font-size: var(--font-size-lg); }
.ann-detail-body h3 { font-size: var(--font-size-md); }
.ann-detail-body h4,
.ann-detail-body h5,
.ann-detail-body h6 { font-size: var(--font-size-base); }

.ann-detail-body > *:first-child {
    margin-top: 0;
}

.ann-detail-body p {
    margin: 0 0 16px;
}

.ann-detail-body ul,
.ann-detail-body ol {
    padding-left: 22px !important;
    margin: 0 0 16px;
}

.ann-detail-body ul {
    list-style-type: disc !important;
}

.ann-detail-body ol {
    list-style-type: decimal !important;
}

.ann-detail-body li {
    margin-bottom: 6px;
}

.ann-detail-body li::marker {
    color: var(--color-primary-blue);
}

.ann-detail-body a {
    color: var(--color-primary-blue);
    text-decoration: underline;
}

.ann-detail-body strong,
.ann-detail-body b {
    color: var(--color-dark-blue);
    font-weight: var(--font-weight-semibold);
}

.ann-detail-footer {
    padding: 20px 30px;
    border-top: 1px solid var(--light);
}
