/* ==========================================================================
   Kishoreganj University — Single Notice  (/notice/{slug})
   Loaded alongside home.css/listing.css, which set the shared token palette.
   ========================================================================== */

.kiu-notice-single {
    max-width: 760px;
    margin: 0 auto;
    background: var(--kiu-white);
    border: 1px solid var(--kiu-border);
    border-radius: var(--kiu-radius-lg);
    padding: 36px 40px 40px;
    box-shadow: var(--kiu-shadow);
}

.kiu-notice-single__title {
    font-size: 24px;
    line-height: 1.4;
    font-weight: 800;
    color: var(--kiu-ink, var(--kiu-navy));
    margin-bottom: 16px;
}

.kiu-notice-single__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 18px;
    font-size: 13.5px;
    color: var(--kiu-muted);
    margin-bottom: 24px;
}

.kiu-notice-single__meta span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

/* Attachment strip — the file, described, with its two actions. */
.kiu-notice-single__file {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 16px 18px;
    margin-bottom: 28px;
    border-radius: var(--kiu-radius);
    background: var(--kiu-surface, #F5F7FB);
}

.kiu-notice-single__file-icon {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 46px;
    border-radius: var(--kiu-radius-sm);
    background: var(--kiu-navy);
    color: var(--kiu-white);
    font-size: 22px;
}

.kiu-notice-single__file-text {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}

.kiu-notice-single__file-text strong {
    font-size: 15px;
    font-weight: 700;
    color: var(--kiu-ink, var(--kiu-navy));
}

.kiu-notice-single__file-text span {
    font-size: 13px;
    color: var(--kiu-muted);
}

.kiu-notice-single__actions {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    margin-left: auto;
}

.kiu-notice-single__back {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: 24px;
    font-size: 14px;
    font-weight: 700;
    color: var(--kiu-navy);
}

.kiu-notice-single__btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 22px;
    border-radius: var(--kiu-radius-sm);
    font-size: 14px;
    font-weight: 700;
    transition: background var(--kiu-dur-fast) var(--kiu-ease-out), transform var(--kiu-dur-press) var(--kiu-ease-out);
}

.kiu-notice-single__btn:hover {
    transform: translateY(var(--kiu-lift));
}

.kiu-notice-single__btn--view {
    background: var(--kiu-navy);
    color: var(--kiu-white);
}

.kiu-notice-single__btn--view:hover {
    background: var(--kiu-navy-deep, #12294D);
    color: var(--kiu-white);
}

.kiu-notice-single__btn--download {
    background: var(--kiu-surface, #F5F7FB);
    color: var(--kiu-navy);
    border: 1px solid var(--kiu-border, #E1E7F0);
}

.kiu-notice-single__btn--download:hover {
    background: var(--kiu-surface-alt, #EDF1F8);
    color: var(--kiu-navy);
}

.kiu-notice-single__body {
    font-size: 15px;
    line-height: 1.9;
    color: var(--kiu-body);
    border-top: 1px solid var(--kiu-border);
    padding-top: 24px;
}

.kiu-notice-single__body p {
    margin-bottom: 10px;
}

@media (max-width: 575px) {
    .kiu-notice-single {
        padding: 24px 18px 28px;
    }

    .kiu-notice-single__title {
        font-size: 19px;
    }

    .kiu-notice-single__file {
        flex-wrap: wrap;
    }

    .kiu-notice-single__actions {
        margin-left: 0;
        width: 100%;
    }

    .kiu-notice-single__btn {
        flex: 1 1 0;
        justify-content: center;
    }
}
