/* ═══ Daily current affairs (/current-affairs/) ═══ */
:root{--ca-serif:'Fraunces',Georgia,'Times New Roman',serif}

/* Masthead: newspaper-style edition header */
.ca-mast{position:relative;overflow:hidden;background:
    radial-gradient(circle at 100% 0,rgba(var(--primary-rgb),.10) 0 160px,transparent 161px),
    radial-gradient(circle at 92% 100%,rgba(13,148,136,.08) 0 110px,transparent 111px),var(--surface);
  border:1px solid var(--border);border-radius:var(--radius-lg);padding:22px 26px 22px;margin-bottom:12px;box-shadow:var(--shadow-sm)}
.ca-mast::before{content:"";position:absolute;inset:0 0 auto 0;height:5px;background:linear-gradient(90deg,#1e3a8a,#2563eb 40%,#0d9488 75%,#f59e0b)}
.ca-mast-top{display:flex;justify-content:space-between;align-items:center;gap:10px;padding-bottom:10px;margin-bottom:14px;border-bottom:3px double var(--border-m)}
.ca-brand{font-family:var(--ca-serif);font-weight:700;font-size:1.05rem;color:var(--text)}
.ca-brand em{font-style:normal;color:var(--primary)}
.ca-issue{font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text-m)}
.ca-kicker{font-size:.75rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#b45309}
[data-theme="dark"] .ca-kicker{color:#fbbf24}
.ca-title{font-family:var(--ca-serif);font-weight:700;font-size:clamp(1.6rem,4vw,2.5rem);line-height:1.12;letter-spacing:-.01em;margin:6px 0 10px;color:var(--text)}
.ca-meta{display:flex;flex-wrap:wrap;row-gap:4px;font-size:.86rem;color:var(--text-m)}
.ca-meta span{white-space:nowrap}
.ca-meta span:not(:last-child)::after{content:"\00b7";margin:0 10px;color:var(--text-l)}
.ca-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.ca-btn{display:inline-flex;align-items:center;gap:6px;font-weight:700;font-size:.84rem;border-radius:30px;padding:8px 16px;text-decoration:none;cursor:pointer;font-family:var(--font);background:var(--primary);color:#fff;border:1px solid var(--primary);transition:all .15s}
.ca-btn:hover{text-decoration:none;filter:brightness(1.08);color:#fff}
.ca-btn.ghost{background:var(--surface);color:var(--text);border-color:var(--border)}
.ca-btn.ghost:hover{border-color:var(--primary);color:var(--primary);filter:none}
.ca-daynav{display:flex;justify-content:space-between;gap:10px;margin:0 2px 14px;font-size:.85rem;font-weight:600}
.ca-daynav a{color:var(--primary)}
.ca-preview{background:#fef3c7;color:#92400e;border:1px solid #fcd34d;border-radius:10px;padding:9px 14px;font-size:.85rem;margin-bottom:12px}

/* Recap + at a glance, side by side */
.ca-top{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:16px;align-items:start;margin-bottom:6px}
.ca-top .ca-glance{margin-bottom:0}
.ca-top .ca-kpis{grid-template-columns:repeat(2,1fr)}
@media(max-width:820px){.ca-top{grid-template-columns:1fr}}
.ca-recap{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px 18px}
.ca-recap-t{font-family:var(--ca-serif);font-size:1.15rem;margin:0 0 6px;color:var(--text)}
.ca-recap ol{list-style:none;counter-reset:r;margin:0;padding:0}
.ca-recap li{counter-increment:r;display:flex;gap:12px;align-items:baseline;padding:8px 0;border-bottom:1px dashed var(--border);font-size:.9rem;line-height:1.45}
.ca-recap li:last-child{border-bottom:none;padding-bottom:0}
.ca-recap li::before{content:counter(r,decimal-leading-zero);flex:none;width:22px;font-family:var(--ca-serif);font-weight:700;color:var(--ca)}
.ca-recap a{color:var(--text)}
.ca-recap a:hover{color:var(--ca);text-decoration:none}

/* At a glance */
.ca-glance{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px 18px;margin-bottom:20px}
.ca-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:14px}
.ca-kpis div{background:var(--surface-2);border-radius:10px;padding:10px 12px;text-align:center}
.ca-kpis b{display:block;font-family:var(--ca-serif);font-size:1.6rem;line-height:1.1;color:var(--primary)}
.ca-kpis span{font-size:.72rem;color:var(--text-m)}
.ca-bar{display:flex;height:12px;border-radius:20px;overflow:hidden;gap:2px;background:var(--surface-2)}
.ca-bar span{min-width:6px}
.ca-legend{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:10px}
.ca-leg{display:inline-flex;align-items:center;gap:6px;font-size:.78rem;color:var(--text-m)}
.ca-leg i{width:10px;height:10px;border-radius:3px;display:inline-block}
.ca-leg b{color:var(--text)}
@media(max-width:560px){.ca-kpis{grid-template-columns:repeat(2,1fr)}}

/* Section headings: Northeast / National / International (or topics) */
.ca-sechd{display:flex;align-items:center;gap:12px;margin:30px 0 12px;font-family:var(--ca-serif);font-size:1.4rem;line-height:1.2;color:var(--ca,var(--text))}
.ca-sechd span{display:inline-flex;align-items:center;gap:8px}
.ca-sechd::after{content:"";flex:1;height:2px;background:var(--border)}
.ca-sechd em{order:2;font-family:var(--font);font-style:normal;font-size:.78rem;font-weight:600;color:var(--text-m)}

/* Story card */
.ca-list{display:flex;flex-direction:column;gap:16px}
.ca-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-sm);scroll-margin-top:80px}
.ca-band{display:flex;align-items:center;gap:10px;padding:10px 16px;background:linear-gradient(90deg,color-mix(in srgb,var(--ca) 16%,var(--surface)),var(--surface));border-bottom:1px solid color-mix(in srgb,var(--ca) 22%,var(--border))}
.ca-ic{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:var(--ca);color:#fff;flex:none;box-shadow:0 4px 10px color-mix(in srgb,var(--ca) 35%,transparent)}
.ca-lead{font-size:.66rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#fff;background:#b45309;border-radius:20px;padding:3px 9px}
.ca-cat{font-weight:800;font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;color:var(--ca)}
.ca-reg{font-size:.75rem;font-weight:600;color:var(--text-m);background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:2px 9px}
.ca-num{margin-left:auto;font-family:var(--ca-serif);font-weight:700;font-size:1.6rem;line-height:1;color:color-mix(in srgb,var(--ca) 35%,transparent)}
.ca-body{display:flex;gap:20px;padding:16px 18px 6px}
.ca-main{flex:1;min-width:0}
.ca-side{flex:none;width:168px;padding-top:4px;margin:0;order:2}
.ca-side figcaption{text-align:center;font-size:.72rem;font-weight:700;color:var(--ca);margin-top:2px}
.ca-map,.ca-scene{width:100%;height:auto;display:block}
.ca-scene{border-radius:14px}
.ca-date{font-size:.75rem;font-weight:700;color:var(--text-l);margin-bottom:2px}
.ca-h{font-family:var(--ca-serif);font-weight:600;font-size:1.25rem;line-height:1.3;margin:0 0 6px;color:var(--text)}
.ca-sum{margin:0 0 12px;color:var(--text-m);font-size:.94rem;line-height:1.65}
.ca-figs{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px;margin-bottom:12px}
.ca-fig{border:1px solid var(--border);border-top:3px solid var(--ca);border-radius:10px;padding:8px 12px;background:var(--surface-2)}
.ca-fig b{display:block;font-family:var(--ca-serif);font-size:1.2rem;line-height:1.2;color:var(--ca);word-break:break-word}
.ca-fig span{font-size:.74rem;color:var(--text-m);line-height:1.3;display:block;margin-top:2px}
.ca-pts{list-style:none;margin:0 0 12px;padding:0;display:flex;flex-direction:column;gap:6px}
.ca-pts li{position:relative;padding-left:20px;font-size:.9rem;line-height:1.5;color:var(--text)}
.ca-pts li::before{content:"";position:absolute;left:3px;top:.55em;width:8px;height:8px;border-radius:2px;transform:rotate(45deg);background:var(--ca)}
.ca-bg{margin:0 0 12px;padding:10px 14px;border-radius:10px;background:color-mix(in srgb,var(--ca) 6%,var(--surface));border:1px dashed color-mix(in srgb,var(--ca) 40%,var(--border))}
.ca-bg-t{font-size:.7rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--ca);margin-bottom:4px}
.ca-bg ul{margin:0;padding-left:18px}
.ca-bg li{font-size:.86rem;line-height:1.5;color:var(--text-m);margin:2px 0}
.ca-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:10px 18px;border-top:1px dashed var(--border);background:var(--surface-2)}
.ca-exam{font-size:.82rem;color:var(--text)}
.ca-src{font-size:.78rem;font-weight:600;color:var(--text-m)}
.ca-src a{white-space:nowrap}

/* Top story: bigger headline and artwork */
.ca-card.is-lead{border-color:color-mix(in srgb,var(--ca) 35%,var(--border));box-shadow:var(--shadow)}
.ca-card.is-lead .ca-h{font-size:1.6rem;line-height:1.22}
.ca-card.is-lead .ca-side{width:230px}
.ca-card.is-lead .ca-sum{font-size:1rem}

@media(max-width:600px){
  .ca-mast{padding:18px 16px}
  .ca-body{display:block;padding:14px 14px 4px}
  .ca-side,.ca-card.is-lead .ca-side{float:right;width:100px;margin:0 0 6px 12px;padding:0}
  .ca-figs,.ca-pts,.ca-bg{clear:both}
  .ca-h{font-size:1.12rem}
  .ca-card.is-lead .ca-h{font-size:1.3rem}
  /* header strip: chips stay on one line each, wrapping as whole chips */
  .ca-band{flex-wrap:wrap;row-gap:6px;padding:9px 14px}
  .ca-band>span{white-space:nowrap}
  .ca-num{display:none}
  .ca-ic{width:30px;height:30px}
  /* key numbers: one compact row each instead of squeezed tiles */
  .ca-figs{grid-template-columns:1fr;gap:6px}
  .ca-fig{display:flex;align-items:baseline;gap:10px;border-top:1px solid var(--border);border-left:3px solid var(--ca);padding:7px 12px}
  .ca-fig b{flex:none;font-size:1.05rem}
  .ca-fig span{margin-top:0}
}

/* Quiz */
.ca-quiz{margin-top:30px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:18px}
.ca-quiz-hd{display:flex;gap:12px;align-items:center;margin-bottom:14px}
.ca-quiz-hd h2{margin:0;font-family:var(--ca-serif);font-size:1.3rem}
.ca-quiz-hd p{margin:2px 0 0;font-size:.85rem;color:var(--text-m)}
.ca-quiz-ic{font-size:1.6rem;width:46px;height:46px;border-radius:12px;display:grid;place-items:center;background:var(--primary-l);flex:none}
.qz-streak{margin-bottom:14px;font-size:.9rem;color:var(--text);background:var(--surface-2);border:1px solid var(--border);border-radius:10px;padding:10px 14px}
.qz-list{margin:0 0 16px;padding-left:22px;display:flex;flex-direction:column;gap:16px}
.qz-q{padding-left:4px}
.qz-text{font-weight:600;color:var(--text);margin:0 0 8px;line-height:1.5}
.qz-topic{display:inline-block;font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--primary);background:var(--primary-l);border-radius:20px;padding:1px 8px;margin-right:8px;vertical-align:middle}
.qz-opts{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px}
.qz-opt{display:flex;align-items:center;gap:8px;border:1.5px solid var(--border);border-radius:10px;padding:9px 12px;cursor:pointer;background:var(--surface);font-size:.92rem;color:var(--text);transition:border-color .15s}
.qz-opt:hover{border-color:var(--primary)}
.qz-opt input{accent-color:var(--primary)}
.qz-opt.is-right{border-color:#16a34a;background:#f0fdf4}
.qz-opt.is-wrong{border-color:#dc2626;background:#fef2f2}
[data-theme="dark"] .qz-opt.is-right{background:rgba(22,163,74,.15)}
[data-theme="dark"] .qz-opt.is-wrong{background:rgba(220,38,38,.15)}
.qz-done .qz-opt{cursor:default}
.qz-exp{margin:8px 0 0;font-size:.85rem;color:var(--text-m);border-left:3px solid var(--border);padding-left:10px}
.qz-result{margin-top:20px;padding:16px 18px;border:1px solid var(--border);border-left:4px solid var(--primary);border-radius:10px;background:var(--surface-2)}
.qz-score{font-size:1.05rem;color:var(--text);line-height:1.6}
.qz-score b{font-size:1.6rem;color:var(--primary)}
.qz-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}

/* Index / month pages */
.ca-days{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.ca-day{display:flex;flex-direction:column;align-items:flex-start;gap:2px;border:1px solid var(--border);border-radius:12px;padding:10px 12px;background:var(--surface);text-decoration:none;transition:all .15s}
.ca-day:hover{border-color:var(--primary);text-decoration:none;transform:translateY(-1px)}
.ca-day b{font-family:var(--ca-serif);font-size:1.5rem;line-height:1;color:var(--text)}
.ca-day span{font-size:.75rem;color:var(--text-m)}
.ca-day em{font-style:normal;font-size:.72rem;font-weight:700;color:var(--primary)}
.ca-months{display:flex;flex-wrap:wrap;gap:8px}
.ca-month{border:1px solid var(--border);border-radius:30px;padding:7px 14px;font-weight:600;font-size:.85rem;background:var(--surface);color:var(--text);text-decoration:none}
.ca-month:hover{border-color:var(--primary);color:var(--primary);text-decoration:none}
.ca-catnav{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:6px}
.ca-catnav a{display:inline-flex;align-items:center;gap:6px;font-size:.8rem;font-weight:600;border-radius:30px;padding:5px 12px;border:1px solid var(--border);background:var(--surface);color:var(--text);text-decoration:none}
.ca-catnav a:hover{border-color:var(--ca);color:var(--ca)}
.ca-catnav i{width:9px;height:9px;border-radius:3px;background:var(--ca)}
.ca-empty{text-align:center;padding:40px 20px;border:1px dashed var(--border);border-radius:var(--radius);color:var(--text-m)}

/* Homepage card */
.ca-home{border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;background:var(--surface)}
.ca-home-hd{padding:12px 14px;color:#fff;background:linear-gradient(120deg,#1e3a8a,#2563eb 60%,#0d9488)}
.ca-home-hd b{display:block;font-size:.95rem}
.ca-home-hd span{font-size:.75rem;opacity:.85}
.ca-home ul{list-style:none;margin:0;padding:6px 14px}
.ca-home li{display:flex;gap:8px;align-items:flex-start;padding:7px 0;border-bottom:1px solid var(--border);font-size:.84rem;line-height:1.4}
.ca-home li:last-child{border-bottom:none}
.ca-home li i{flex:none;width:8px;height:8px;border-radius:2px;margin-top:6px;transform:rotate(45deg)}
.ca-home li a{color:var(--text)}
.ca-home-ft{display:flex;gap:6px;padding:0 14px 12px}
.ca-home-ft a{flex:1;text-align:center;font-size:.8rem;font-weight:700;border-radius:8px;padding:7px 4px;background:var(--primary-l);color:var(--primary);text-decoration:none}

@media print{
  .site-header,.site-footer,.ca-actions,.ca-daynav,.ca-quiz,.breadcrumb,.ca-catnav,.ca-preview,.no-print{display:none!important}
  .ca-card{break-inside:avoid;box-shadow:none}
  .ca-mast,.ca-band,.ca-ic,.ca-fig,.ca-bar span,.ca-map polygon,.ca-scene,.ca-bg,.ca-lead{-webkit-print-color-adjust:exact;print-color-adjust:exact}
}
