/* ==========================================================================
   Ain Prokash Editorial & Institutional Pages Stylesheet (ap-pages.css)
   Dignified, clean, typography-driven layout for legal articles & policies
   ========================================================================== */

/* 1. Theme Canvas Clean Reset (Update-Immune) */
body.page #the-post.container-wrapper.post-content,
body.page .main-content #the-post.container-wrapper.post-content {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin-bottom: 0 !important;
}

body.page #content.site-content {
    padding-top: 15px !important;
}

body.page .main-content {
    margin-bottom: 0 !important;
}

body.page .entry-content.entry.clearfix {
    padding: 0 !important;
}

body.page .tie-breadcrumbs,
body.page .entry-header-outer {
    display: none !important;
}

/* 2. Main Page Reading Container */
.ap-page-container {
    max-width: 880px;
    margin: 10px auto 50px auto;
    font-family: 'SolaimanLipi', 'Hind Siliguri', 'Bangla', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
    color: #2d3748;
    line-height: 1.85;
    font-size: 16px;
}

.ap-page-container * {
    box-sizing: border-box;
}

/* 3. Document Header (Clean & Authoritative) */
.ap-doc-header {
    margin-bottom: 28px;
    padding-bottom: 22px;
    border-bottom: 2px solid #e2e8f0;
}

.ap-doc-badge {
    display: inline-block;
    background: #e6fffa;
    color: #0f766e;
    border: 1px solid #b2f5ea;
    padding: 3px 12px;
    border-radius: 4px;
    font-size: 13px;
    font-weight: 600;
    margin-bottom: 12px;
}

.ap-doc-title {
    font-size: 28px;
    font-weight: 700;
    color: #0f172a;
    margin: 0 0 14px 0;
    line-height: 1.35;
    letter-spacing: -0.01em;
}

.ap-doc-lead {
    font-size: 16.5px;
    color: #334155;
    line-height: 1.8;
    margin: 0;
    background: #f8fafc;
    border-left: 4px solid #0f766e;
    padding: 14px 18px;
    border-radius: 0 6px 6px 0;
}

/* 4. Headings & Typography */
.ap-page-container h2.ap-h2 {
    font-size: 21px;
    font-weight: 700;
    color: #0f172a;
    margin: 35px 0 14px 0;
    padding-bottom: 8px;
    border-bottom: 1.5px solid #e2e8f0;
    line-height: 1.4;
}

.ap-page-container h3.ap-h3 {
    font-size: 17.5px;
    font-weight: 600;
    color: #1e293b;
    margin: 24px 0 10px 0;
    line-height: 1.4;
}

.ap-page-container p {
    margin-bottom: 16px;
    color: #334155;
    text-align: justify;
}

.ap-page-container ul,
.ap-page-container ol {
    margin: 12px 0 20px 22px;
    padding-left: 6px;
    color: #334155;
}

.ap-page-container li {
    margin-bottom: 8px;
    line-height: 1.75;
}

.ap-page-container strong {
    color: #0f172a;
    font-weight: 600;
}

/* 5. Dignified Notice & Callout Boxes */
.ap-notice {
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-left: 4px solid #0f766e;
    padding: 16px 20px;
    border-radius: 4px;
    margin: 22px 0;
    font-size: 15px;
    color: #334155;
    line-height: 1.75;
}

.ap-notice p:last-child {
    margin-bottom: 0;
}

.ap-warning {
    background: #fffbeb;
    border: 1px solid #fde68a;
    border-left: 4px solid #d97706;
    padding: 16px 20px;
    border-radius: 4px;
    margin: 22px 0;
    font-size: 15px;
    color: #78350f;
    line-height: 1.75;
}

.ap-warning p:last-child {
    margin-bottom: 0;
}

.ap-info {
    background: #eff6ff;
    border: 1px solid #bfdbfe;
    border-left: 4px solid #2563eb;
    padding: 16px 20px;
    border-radius: 4px;
    margin: 22px 0;
    font-size: 15px;
    color: #1e40af;
    line-height: 1.75;
}

.ap-info p:last-child {
    margin-bottom: 0;
}

/* 6. Clean Institutional Tables */
.ap-table-wrap {
    overflow-x: auto;
    margin: 22px 0;
}

.ap-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 15px;
    background: #ffffff;
}

.ap-table th {
    background: #f8fafc;
    color: #0f172a;
    font-weight: 600;
    padding: 12px 14px;
    border: 1px solid #e2e8f0;
    text-align: left;
}

.ap-table td {
    padding: 11px 14px;
    border: 1px solid #e2e8f0;
    color: #334155;
    line-height: 1.6;
}

.ap-table tr:nth-child(even) td {
    background: #fafafa;
}

/* 7. Form Section Header */
.ap-form-intro {
    margin-top: 45px;
    padding-top: 25px;
    border-top: 2px dashed #e2e8f0;
}

.ap-form-intro h2 {
    font-size: 21px;
    font-weight: 700;
    color: #0f172a;
    margin: 0 0 8px 0;
}

.ap-form-intro p {
    color: #64748b;
    font-size: 15px;
    margin: 0 0 20px 0;
}

/* 8. Mobile Responsiveness */
@media (max-width: 768px) {
    .ap-page-container {
        padding: 0 14px;
    }
    .ap-doc-title {
        font-size: 24px;
    }
    .ap-doc-lead {
        font-size: 15.5px;
        padding: 12px 14px;
    }
}
