/*
Theme Name: Nairobi Law Monthly
Theme URI: https://nairobilawmonthly.com
Author: Nairobi Law Monthly
Author URI: https://nairobilawmonthly.com
Description: A fast, secure, SEO-optimised news/magazine theme built for Nairobi Law Monthly — a Kenyan legal affairs publication. Custom homepage, single, archive and page templates, a reusable magazine sidebar, and built-in structured data.
Version: 1.0.0
Requires at least: 6.4
Tested up to: 6.7
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: nairobi-law-monthly
Tags: news, blog, one-column, two-columns, right-sidebar, custom-menu, custom-logo, featured-images, threaded-comments, translation-ready, theme-options, sticky-post, footer-widgets, full-width-template

Nairobi Law Monthly WordPress Theme, Copyright 2026 Nairobi Law Monthly.
Nairobi Law Monthly is distributed under the terms of the GNU GPL v2 or later.
*/

/* ==========================================================================
   This file intentionally stays small. Almost all visual styling lives in
   the compiled, purged utility stylesheet at assets/css/tailwind.css
   (built from Tailwind CSS — see /README.md "Rebuilding the CSS").
   What's below covers: WordPress core alignment classes, accessibility
   helpers, print styling, and a couple of things utility classes can't
   express cleanly (the reading-progress bar, skip link).
   ========================================================================== */

/* ---------- WordPress core alignment classes ---------- */
.alignleft { float: left; margin: 0.4em 1.5em 1em 0; }
.alignright { float: right; margin: 0.4em 0 1em 1.5em; }
.aligncenter { display: block; margin-left: auto; margin-right: auto; }
.alignwide { width: 100%; max-width: 1152px; margin-left: auto; margin-right: auto; }
.alignfull { width: 100vw; position: relative; left: 50%; right: 50%; margin-left: -50vw; margin-right: -50vw; max-width: none; }
.wp-caption { max-width: 100%; }
.wp-caption-text { font-size: 0.875rem; color: #6b7280; margin-top: 0.5rem; font-style: italic; }
.wp-block-image img { height: auto; max-width: 100%; }
.sticky { position: relative; }
.gallery-caption { font-size: 0.8rem; color: #6b7280; }
.bypostauthor { position: relative; }

/* ---------- Accessibility ---------- */
.screen-reader-text {
  border: 0; clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%);
  height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute !important;
  width: 1px; word-wrap: normal !important;
}
.screen-reader-text:focus {
  background-color: #111827; border-radius: 0.375rem; box-shadow: 0 0 4px rgba(0,0,0,.4);
  clip: auto !important; clip-path: none; color: #fff; display: block; font-size: 0.875rem;
  font-weight: 600; height: auto; left: 1rem; line-height: normal; padding: 1rem 1.5rem;
  text-decoration: none; top: 1rem; width: auto; z-index: 100000;
}
:focus-visible {
  outline: 2px solid #dc2626;
  outline-offset: 2px;
}

/* ---------- Reading progress bar (single posts) ---------- */
#nlm-reading-progress {
  position: fixed; top: 0; left: 0; height: 3px; width: 0%;
  background: #dc2626; z-index: 60; transition: width 0.1s linear;
}

/* ---------- Respect reduced motion ---------- */
@media (prefers-reduced-motion: reduce) {
  * { animation-duration: 0.001ms !important; animation-iteration-count: 1 !important; transition-duration: 0.001ms !important; scroll-behavior: auto !important; }
}

/* ---------- Print ---------- */
@media print {
  header, footer, aside, #nlm-reading-progress, .no-print, nav, .nlm-breaking-bar, .nlm-social-share { display: none !important; }
  article { width: 100% !important; }
  a[href]:after { content: " (" attr(href) ")"; font-size: 0.75em; color: #555; }
}
