/* ExamPatrol Current Affairs archive only. No site-wide styling. */
body.ep-ca-custom-archive #primary.content-area { min-width: 0; }
body.ep-ca-custom-archive #right-sidebar,
body.ep-ca-custom-archive #left-sidebar { display: block; }

.ep-ca-page {
    --ep-navy: #082449;
    --ep-navy-deep: #061a35;
    --ep-orange: #ff6a00;
    --ep-orange-dark: #d95100;
    --ep-peach: #fff0e5;
    --ep-border: #dce4ee;
    padding: 0 0 28px;
    color: #243247;
}
.ep-ca-page * { box-sizing: border-box; }
.ep-ca-hero {
    position: relative; isolation: isolate; overflow: hidden;
    color: #fff; background: linear-gradient(125deg, var(--ep-navy-deep), var(--ep-navy) 70%, #123b69);
    border-radius: 16px; padding: 27px 24px 23px; margin: 0 0 17px;
    box-shadow: 0 9px 22px rgba(8,36,73,.13);
}
.ep-ca-hero::before {
    content: ""; position: absolute; z-index: -1; width: 230px; height: 230px;
    border: 34px solid rgba(255,255,255,.09); border-radius: 50%; top: -154px; right: -28px;
    pointer-events: none;
}
.ep-ca-hero-orbit {
    position: absolute; z-index: -1; width: 135px; height: 135px; border-radius: 50%;
    background: rgba(255,106,0,.12); right: 54px; bottom: -100px; pointer-events: none;
}
.ep-ca-hero-top { display: flex; align-items: center; gap: 12px; }
.ep-ca-hero-icon {
    display: flex; align-items: center; justify-content: center; flex: 0 0 47px; height: 47px;
    border-radius: 12px; background: var(--ep-orange); color: #fff; font-size: 27px; line-height: 1;
    box-shadow: 0 5px 12px rgba(255,106,0,.24);
}
.ep-ca-hero h1 { color: #fff; margin: 0; font-size: clamp(25px, 3vw, 33px); line-height: 1.2; font-weight: 800; }
.ep-ca-hero-top p { margin: 5px 0 0; color: #e5edf8; font-size: 14px; }
.ep-ca-hero-accent { display: block; width: 72px; height: 4px; margin: 16px 0 11px; background: var(--ep-orange); border-radius: 4px; }
.ep-ca-hero-categories { color: #f7f9fd; margin: 0 0 17px; font-size: 14px; }
.ep-ca-hero-buttons { display: flex; flex-wrap: wrap; gap: 10px; }
.ep-ca-hero-button { display: inline-flex; align-items: center; justify-content: center; gap: 9px; padding: 10px 14px; border-radius: 8px; font-size: 13px; font-weight: 750; text-decoration: none !important; transition: transform .18s ease, background .18s ease, box-shadow .18s ease; }
.ep-ca-hero-button:hover { transform: translateY(-2px); }
.ep-ca-hero-button-primary { color: #fff !important; background: var(--ep-orange); box-shadow: 0 4px 12px rgba(255,106,0,.2); }
.ep-ca-hero-button-primary:hover { background: #e85d00; }
.ep-ca-hero-button-secondary { color: #fff !important; border: 1px solid rgba(255,255,255,.42); background: rgba(255,255,255,.08); }
.ep-ca-hero-button-secondary:hover { background: rgba(255,255,255,.16); }

.ep-ca-shortcuts { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 12px; margin-bottom: 19px; }
.ep-ca-shortcut {
    position: relative; display: flex; flex-direction: column; align-items: flex-start; gap: 7px; min-width: 0;
    padding: 15px; color: #18263a !important; text-decoration: none !important; background: #fff;
    border: 1px solid var(--ep-border); border-radius: 13px; box-shadow: 0 3px 10px rgba(8,36,73,.045);
    transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.ep-ca-shortcut:hover, .ep-ca-shortcut:focus { color: #18263a !important; border-color: #ffb47e; box-shadow: 0 8px 20px rgba(8,36,73,.1); transform: translateY(-2px); }
.ep-ca-icon { display: flex; align-items: center; justify-content: center; min-width: 38px; height: 36px; padding: 0 8px; border-radius: 9px; color: var(--ep-navy); background: #eaf0f8; font-size: 22px; line-height: 1; }
.ep-ca-icon-orange { color: #fff; background: var(--ep-orange); }
.ep-ca-shortcut strong { color: var(--ep-navy); font-size: 16px; line-height: 1.35; font-weight: 800; }
.ep-ca-description { color: #65748a; font-size: 12px; line-height: 1.45; }
.ep-ca-action { display: flex; align-items: center; justify-content: center; gap: 6px; width: 100%; margin-top: 4px; padding: 9px 8px; text-align: center; border-radius: 8px; color: #a94100; background: var(--ep-peach); font-size: 12px; font-weight: 800; }
.ep-ca-shortcut-primary .ep-ca-action, .ep-ca-shortcut-mcq .ep-ca-action { color: #fff; background: var(--ep-orange); }
.ep-ca-shortcut-mcq { border-color: #ffd0ad; }

.ep-ca-section { margin: 0 0 18px; padding: 16px; background: #f8fafc; border: 1px solid #e9eef5; border-radius: 13px; }
.ep-ca-section-heading { display: flex; align-items: flex-start; gap: 10px; padding-bottom: 13px; margin-bottom: 15px; border-bottom: 1px solid var(--ep-border); }
.ep-ca-heading-mark { flex: 0 0 5px; width: 5px; min-height: 31px; border-radius: 4px; background: var(--ep-orange); }
.ep-ca-section-heading h2 { margin: 0 0 4px; color: var(--ep-navy); font-size: 20px; line-height: 1.35; font-weight: 800; }
.ep-ca-section-heading p { margin: 0; color: #66758a; font-size: 13px; line-height: 1.5; }
.ep-ca-section-heading-resource { align-items: center; gap: 11px; padding: 12px 14px; margin: -16px -16px 15px; border: 0; border-radius: 12px 12px 0 0; background: var(--ep-navy); }
.ep-ca-section-heading-resource h2 { color: #fff; margin-bottom: 3px; font-size: 18px; }
.ep-ca-section-heading-resource p { color: #dce7f5; }
.ep-ca-resource-icon { display: flex; flex: 0 0 35px; width: 35px; height: 35px; align-items: center; justify-content: center; border-radius: 9px; background: var(--ep-orange); color: #fff; font-size: 20px; font-weight: 800; }
.ep-ca-post-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 14px; }
.ep-ca-post-card { min-width: 0; overflow: hidden; background: #fff; border: 1px solid var(--ep-border); border-radius: 11px; box-shadow: 0 3px 10px rgba(8,36,73,.04); transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
.ep-ca-post-card:hover { transform: translateY(-2px); border-color: #c9d5e5; box-shadow: 0 8px 19px rgba(8,36,73,.09); }
.ep-ca-post-image { display: block; overflow: hidden; aspect-ratio: 16 / 9; background: #edf2f8; }
.ep-ca-post-image img { display: block; width: 100%; height: 100%; object-fit: cover; }
.ep-ca-post-body { padding: 14px; }
.ep-ca-date { margin: 0 0 7px; color: #77869a; font-size: 11px; text-transform: uppercase; letter-spacing: .035em; }
.ep-ca-post-body h3 { margin: 0 0 8px; font-size: 17px; line-height: 1.42; font-weight: 800; }
.ep-ca-post-body h3 a { color: var(--ep-navy); text-decoration: none; }
.ep-ca-post-body h3 a:hover { color: var(--ep-orange-dark); }
.ep-ca-excerpt { margin: 0 0 13px; color: #536176; font-size: 13px; line-height: 1.6; }
.ep-ca-read-more { display: inline-flex; align-items: center; gap: 7px; padding: 8px 12px; border-radius: 7px; color: #fff !important; background: var(--ep-orange); text-decoration: none !important; font-size: 12px; font-weight: 800; transition: background .18s ease; }
.ep-ca-read-more:hover { color: #fff !important; background: var(--ep-navy); }

/* Latest monthly posts: deliberately image-free, with a compact date badge and orange details. */
.ep-ca-latest-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
.ep-ca-post-card-latest { position: relative; border-radius: 12px; }
.ep-ca-post-card-latest::after { content: ""; display: block; height: 4px; background: var(--ep-orange); }
.ep-ca-latest-card-top { display: flex; align-items: center; justify-content: space-between; gap: 9px; margin-bottom: 12px; }
.ep-ca-latest-icon { display: inline-flex; align-items: center; justify-content: center; width: 39px; height: 38px; flex: 0 0 39px; border-radius: 10px; color: #fff; background: var(--ep-orange); font-size: 23px; line-height: 1; box-shadow: 0 4px 9px rgba(255,106,0,.18); }
.ep-ca-date-badge { display: inline-block; max-width: 100%; padding: 6px 9px; border-radius: 20px; color: var(--ep-navy); background: #edf2f8; font-size: 10px; line-height: 1.2; font-weight: 800; letter-spacing: .035em; text-transform: uppercase; }
.ep-ca-post-card-latest .ep-ca-post-body { padding: 15px 15px 17px; }
.ep-ca-post-card-latest .ep-ca-post-body h3 { min-height: 2.75em; margin-bottom: 8px; font-size: 17px; }
.ep-ca-post-card-latest .ep-ca-excerpt { min-height: 3.1em; }
.ep-ca-post-card-latest .ep-ca-read-more { background: var(--ep-orange); }
.ep-ca-post-card-latest .ep-ca-read-more:hover { background: var(--ep-navy); }
.ep-ca-empty { margin: 0; padding: 15px; color: #596980; background: #fff; border: 1px dashed #d6e0ec; border-radius: 9px; font-size: 13px; }
.ep-ca-pagination { margin-top: 18px; }
.ep-ca-pagination .page-numbers { display: inline-block; margin: 3px; padding: 7px 11px; border: 1px solid var(--ep-border); border-radius: 6px; background: #fff; color: var(--ep-navy); text-decoration: none; }
.ep-ca-pagination .current { color: #fff; background: var(--ep-navy); }

@media (max-width: 600px) {
    .ep-ca-page { padding-bottom: 20px; }
    .ep-ca-hero { padding: 21px 16px 19px; }
    .ep-ca-hero h1 { font-size: 25px; }
    .ep-ca-hero-categories { font-size: 12px; }
    .ep-ca-hero-button { flex: 1 1 auto; padding: 10px 9px; font-size: 12px; }
    .ep-ca-shortcuts { gap: 9px; }
    .ep-ca-shortcut { padding: 12px 10px; }
    .ep-ca-shortcut strong { font-size: 14px; }
    .ep-ca-description { font-size: 11px; }
    .ep-ca-action { padding: 8px 5px; font-size: 11px; }
    .ep-ca-section { padding: 12px; }
    .ep-ca-section-heading h2 { font-size: 18px; }
    .ep-ca-section-heading-resource { margin: -12px -12px 13px; padding: 11px 12px; }
    .ep-ca-section-heading-resource h2 { font-size: 16px; }
    .ep-ca-post-grid, .ep-ca-latest-grid { grid-template-columns: 1fr; }
    .ep-ca-post-card-latest .ep-ca-post-body h3, .ep-ca-post-card-latest .ep-ca-excerpt { min-height: 0; }
}
@media (prefers-reduced-motion: reduce) {
    .ep-ca-shortcut, .ep-ca-hero-button, .ep-ca-post-card, .ep-ca-read-more { transition: none; }
}
