/* ===== extracted from ./blog-post.php ===== */
.pnv_wrap { padding:0 0 40px;box-sizing:border-box;max-width:840px;margin:0 auto; }
.pnv_wrap *{box-sizing:border-box;}
.pnv_topnav { display:flex;align-items:center;gap:10px;padding:20px 22px;flex-wrap:wrap; }
.pnv_topnav_link { display:inline-flex;align-items:center;gap:6px;color:#6B7280;font-size:13.5px;font-weight:700;text-decoration:none;transition:.2s; }
.pnv_topnav_link.main { color:#4B0687; }
.pnv_topnav_link:hover { color:#4B0687; }
.pnv_topnav_sep { color:#D1D5DB;font-size:13px; }
.pnv_article { padding:0 22px; }
.pnv_article_head { padding:20px 0 0; }
.pnv_cat_chip { display:inline-flex;align-items:center;background:rgba(75,6,135,.08);color:#4B0687;font-size:12px;font-weight:700;padding:5px 14px;border-radius:20px;margin-bottom:14px; }
.pnv_cat_chip.small{font-size:10.5px;padding:3px 10px;}
.pnv_article_head h1 { font-size:30px;font-weight:900;color:#111827;margin:0 0 16px;line-height:1.3; }
.pnv_meta_row { display:flex;align-items:center;gap:18px;flex-wrap:wrap;font-size:13px;color:#9CA3AF;padding-bottom:22px;border-bottom:1px solid #EAECF0;margin-bottom:24px; }
.pnv_meta_row span { display:inline-flex;align-items:center;gap:6px; }
.pnv_hero_img { border-radius:20px;overflow:hidden;margin-bottom:30px;background:#F3F4F6;max-height:440px; }
.pnv_hero_img img { width:100%;height:100%;max-height:440px;object-fit:cover;display:block; }
/* CONTENT (Quill output) */
.pnv_content { font-size:16.5px;line-height:1.85;color:#1F2937; }
.pnv_content h1,.pnv_content h2,.pnv_content h3 { font-weight:900;color:#111827;margin:32px 0 14px;line-height:1.35; }
.pnv_content h2 { font-size:24px; }
.pnv_content h3 { font-size:20px; }
.pnv_content p { margin:0 0 18px; }
.pnv_content ul,.pnv_content ol { margin:0 0 18px;padding-left:26px; }
.pnv_content li { margin-bottom:8px; }
.pnv_content a { color:#4B0687;font-weight:700;text-decoration:underline; }
.pnv_content img { max-width:100%;border-radius:14px;margin:14px 0;display:block; }
.pnv_content blockquote { margin:22px 0;padding:16px 22px;border-left:4px solid #6A11CB;background:#F5F3FF;border-radius:0 12px 12px 0;font-style:italic;color:#4B0687;font-size:16px; }
.pnv_content pre { background:#0F172A;color:#E2E8F0;padding:16px 18px;border-radius:14px;overflow-x:auto;font-size:13.5px;margin:18px 0; }
.pnv_content code { background:#F3F4F6;padding:2px 6px;border-radius:6px;font-size:14px; }
/* TAGS */
.pnv_tags { display:flex;flex-wrap:wrap;gap:8px;margin-top:30px; }
.pnv_tag { background:#F3F4F6;color:#6B7280;font-size:12px;font-weight:700;padding:6px 13px;border-radius:20px;display:inline-flex;align-items:center;gap:3px; }
/* SHARE */
.pnv_share { display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-top:30px;padding-top:24px;border-top:1px solid #EAECF0; }
.pnv_share_label { font-size:13px;font-weight:700;color:#374151; }
.pnv_share_btns { display:flex;gap:10px; }
.pnv_share_btn { width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:19px;color:#fff;text-decoration:none;border:none;cursor:pointer;transition:.2s; }
.pnv_share_btn:hover { transform:translateY(-2px); }
.pnv_share_btn.wa { background:#25D366; }
.pnv_share_btn.fb { background:#1877F2; }
.pnv_share_btn.tw { background:#0F1419; }
.pnv_share_btn.copy { background:#6B7280; }
/* REACTIONS (post) */
.pnv_reactions { display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:30px;padding:18px 20px;background:#F9FAFB;border-radius:18px; }
.pnv_reactions_label { font-size:13px;font-weight:700;color:#374151;white-space:nowrap; }
.pnv_reaction_btns { display:flex;gap:6px;flex-wrap:wrap; }
.pnv_reaction_btn { display:inline-flex;align-items:center;gap:6px;height:38px;padding:0 12px;border-radius:20px;border:1.5px solid #E5E7EB;background:#fff;cursor:pointer;transition:.15s;font-family:inherit; }
.pnv_reaction_btn .emoji { font-size:17px;line-height:1; }
.pnv_reaction_btn .count { font-size:12.5px;font-weight:700;color:#6B7280;min-width:8px; }
.pnv_reaction_btn:hover { transform:translateY(-2px);border-color:#C4B5FD; }
.pnv_reaction_btn.active { background:#F5F3FF;border-color:#6A11CB; }
.pnv_reaction_btn.active .count { color:#4B0687; }
.pnv_reaction_total { font-size:12px;color:#9CA3AF;margin-left:auto; }
/* COMMENTS */
.pnv_comments { padding:0 22px;margin-top:8px; }
.pnv_comments_title { font-size:20px;font-weight:900;color:#111827;margin:0 0 20px;padding-top:36px;border-top:1px solid #EAECF0; }
.pnv_comments_count { color:#9CA3AF;font-weight:700; }
.pnv_comment_list { display:flex;flex-direction:column;gap:20px;margin-bottom:32px; }
.pnv_no_comments { font-size:14px;color:#9CA3AF;padding:18px 0; }
.pnv_comment { display:flex;gap:14px; }
.pnv_comment_avatar { width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,#4A0585,#6A11CB);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:15px;flex-shrink:0; }
.pnv_comment_body { flex:1;min-width:0; }
.pnv_comment_head { display:flex;align-items:baseline;gap:10px;margin-bottom:6px;flex-wrap:wrap; }
.pnv_comment_head strong { font-size:14.5px;color:#111827; }
.pnv_comment_date { font-size:12px;color:#9CA3AF; }
.pnv_comment_text { font-size:14.5px;color:#374151;line-height:1.65;margin:0 0 10px;word-break:break-word; }
.pnv_mini_reactions { display:flex;gap:4px;flex-wrap:wrap; }
.pnv_mini_reaction { display:inline-flex;align-items:center;gap:4px;height:28px;padding:0 9px;border-radius:14px;border:1px solid #EAECF0;background:#fff;cursor:pointer;transition:.15s;font-family:inherit; }
.pnv_mini_reaction .emoji { font-size:13px;line-height:1; }
.pnv_mini_reaction .count { font-size:11px;font-weight:700;color:#9CA3AF;min-width:6px; }
.pnv_mini_reaction:hover { border-color:#C4B5FD; }
.pnv_mini_reaction.active { background:#F5F3FF;border-color:#6A11CB; }
.pnv_mini_reaction.active .count { color:#4B0687; }
/* COMMENT FORM */
.pnv_comment_form_wrap { background:#F9FAFB;border-radius:20px;padding:24px;margin-bottom:40px; }
.pnv_comment_form_wrap h4 { font-size:16px;font-weight:800;color:#111827;margin:0 0 4px; }
.pnv_comment_note { font-size:12.5px;color:#9CA3AF;margin:0 0 16px; }
.pnv_form_row { display:flex;gap:12px;margin-bottom:12px;flex-wrap:wrap; }
.pnv_form_input { flex:1;min-width:180px;height:48px;border:1.5px solid #E5E7EB;border-radius:12px;padding:0 16px;font-size:20px;outline:none;background:#fff;font-family:inherit;box-sizing:border-box; }
.pnv_form_input:focus { border-color:#6A11CB; }
.pnv_form_textarea { width:100%;border:1.5px solid #E5E7EB;border-radius:12px;padding:14px 16px;font-size:14px;outline:none;background:#fff;font-family:inherit;box-sizing:border-box;resize:vertical;margin-bottom:12px; }
.pnv_form_textarea:focus { border-color:#6A11CB; }
.pnv_comment_msg { font-size:13px;margin-bottom:12px;display:none; }
.pnv_comment_msg.success { display:block;color:#15803D; }
.pnv_comment_msg.error { display:block;color:#DC2626; }
.pnv_comment_submit { height:48px;padding:0 26px;background:linear-gradient(135deg,#4A0585,#6A11CB);color:#fff;border:none;border-radius:12px;font-size:14px;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;gap:8px;font-family:inherit;transition:.2s; }
.pnv_comment_submit:hover { transform:translateY(-1px);box-shadow:0 8px 20px rgba(74,5,133,.25); }
.pnv_comment_submit:disabled { opacity:.6;cursor:default;transform:none;box-shadow:none; }
/* RELATED */
.pnv_related { margin-top:48px;padding:0 22px; }
.pnv_related h3 { font-size:20px;font-weight:900;color:#111827;margin:0 0 18px; }
.pnv_related_grid { display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px; }
.pnv_related_card { background:white;border-radius:18px;border:1px solid #EAECF0;overflow:hidden;text-decoration:none;color:inherit;transition:.25s;display:flex;flex-direction:column; }
.pnv_related_card:hover { transform:translateY(-3px);box-shadow:0 10px 26px rgba(0,0,0,.08);border-color:#C4B5FD; }
.pnv_related_img { height:130px;background:#F3F4F6;overflow:hidden; }
.pnv_related_img img { width:100%;height:100%;object-fit:cover; }
.pnv_related_body { padding:14px; }
.pnv_related_body h4 { font-size:14px;font-weight:800;color:#111827;margin:8px 0 8px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden; }
.pnv_related_meta { font-size:11.5px;color:#9CA3AF;display:inline-flex;align-items:center;gap:4px; }
@media(max-width:600px){
    .pnv_article_head h1 { font-size:23px; }
    .pnv_hero_img{max-height:240px;}
    .pnv_content{font-size:15.5px;}
    .pnv_share{flex-direction:column;align-items:flex-start;}
    .pnv_reactions{gap:10px;}
    .pnv_reaction_total{margin-left:0;}
    .pnv_form_row{flex-direction:column;}
    .pnv_form_input{min-width:100%;}
    .pnv_comment_form_wrap{padding:18px;}
}
