/* ── NSC Popular Posts — admin + front-end styles ─────────────────── */

/* Google Fonts — must be at top */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@700&display=swap');

/* ================================================================
   FRONT-END WIDGET
   Scoped under .nsc-pp-widget (set via 'classname' in constructor)
   ================================================================ */

.nsc-pp-widget .nsc-pp-list {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.nsc-pp-widget .nsc-pp-item {
    display: flex !important;
    align-items: flex-start;
    gap: 8px;
    padding: 10px 0 !important;
    border-top: 1px solid #e5ddd0 !important;
    margin: 0 !important;
}
.nsc-pp-widget .nsc-pp-item:first-child {
    border-top: none !important;
    padding-top: 0 !important;
}
/* Defeat theme ::before / ::after counters on li */
.nsc-pp-widget .nsc-pp-item::before,
.nsc-pp-widget .nsc-pp-item::after { display: none !important; content: none !important; }

.nsc-pp-widget .nsc-pp-rank {
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 20px !important;
    font-weight: 700;
    color: #d4c9b0;
    line-height: 1;
    min-width: 18px;
    text-align: center;
    flex-shrink: 0;
    margin-top: 3px;
    display: block;
}

.nsc-pp-widget .nsc-pp-thumb {
    display: block !important;
    width: 58px !important;
    height: 48px !important;
    flex-shrink: 0;
    overflow: hidden;
    border: 1px solid #d0c8b8;
    margin: 0 !important;
    padding: 0 !important;
}
.nsc-pp-widget .nsc-pp-thumb img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover;
    display: block !important;
    margin: 0 !important;
    border: none !important;
    box-shadow: none !important;
}

.nsc-pp-widget .nsc-pp-info {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.nsc-pp-widget .nsc-pp-cat {
    display: inline-block !important;
    font-size: 9px !important;
    font-weight: 700 !important;
    letter-spacing: .12em;
    text-transform: uppercase;
    border: 1px solid #b91c1c !important;
    padding: 1px 5px !important;
    margin: 0 !important;
    color: #b91c1c !important;
    line-height: 1.4;
    background: none !important;
    border-radius: 0 !important;
    align-self: flex-start;
}

.nsc-pp-widget .nsc-pp-title {
    display: block !important;
    font-family: 'Playfair Display', Georgia, serif !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
    color: #1a1a1a !important;
    text-decoration: none !important;
    font-weight: 600 !important;
    margin: 0 !important;
    padding: 0 !important;
}
.nsc-pp-widget .nsc-pp-title:hover {
    text-decoration: underline !important;
    color: #b91c1c !important;
}

.nsc-pp-widget .nsc-pp-meta {
    display: flex !important;
    align-items: center;
    gap: 5px;
    font-size: 10px !important;
    color: #999 !important;
    font-family: Georgia, serif !important;
    margin: 0 !important;
}
.nsc-pp-widget .nsc-pp-meta span { margin: 0 !important; padding: 0 !important; }
.nsc-pp-widget .nsc-pp-dot { color: #ccc !important; }

.nsc-pp-widget .nsc-pp-footer {
    border-top: 1px solid #ddd4c0;
    padding: 8px 0 0 !important;
    margin: 4px 0 0 !important;
    text-align: right;
}
.nsc-pp-widget .nsc-pp-footer a {
    font-size: 11px !important;
    color: #b91c1c !important;
    text-decoration: none !important;
    letter-spacing: .02em;
}
.nsc-pp-widget .nsc-pp-footer a:hover { text-decoration: underline !important; }

/* ================================================================
   WP ADMIN PAGE SHELL
   ================================================================ */

#nsc-pp-admin-root {
    margin-top: 0 !important;
}

#nsc-pp-app {
    font-family: Georgia, 'Times New Roman', serif;
    color: #1a1a1a;
}

#nsc-pp-admin-root > .notice,
#nsc-pp-admin-root > .updated,
#nsc-pp-admin-root > .error {
    margin-top: 20px;
}
