/* ==========================================================================
   NetConfig.io — design tokens (news-portal blue identity)

   Consolidates what used to be three separate, scattered color systems
   in the Blogsy-child theme: hardcoded hex values in footer-redesign-v11
   .css, a separate --toc-* set in toc-sidebar-v1.css, and ad-hoc
   var(--pt-accent-color, #2563eb) fallbacks throughout the rest of the
   child theme's CSS (all referencing Blogsy PARENT theme variables that
   don't exist under GeneratePress). This is the one real source of
   truth going forward — every other stylesheet in this theme should
   reference these --nc-* custom properties instead of a hardcoded hex
   value or a var(--pt-*, ...) fallback.

   Accent swapped from the original Burp Suite Light orange to a blue
   news-portal palette, at the user's request, matched to the real hex
   values pulled from news.un.org's own published stylesheet (#009EDB
   primary blue, #0A5A82 darker blue for hover/active states) — a color
   choice, not a copy of any UN logo, emblem, layout, or copy.

   GeneratePress's own color system is Customizer-driven (dynamic
   --{slug} properties injected inline via wp_head, not a static
   stylesheet a child theme overrides) — these tokens sit alongside that
   rather than replacing it, and are what this theme's own custom
   components (footer, TOC, code blocks, ad unit, tools box) style
   against.
   ========================================================================== */

:root {
	/* Brand accent (news-portal blue) */
	--nc-accent: #009EDB;
	--nc-accent-dark: #0A5A82;
	--nc-accent-light: #1B75BB;
	--nc-accent-tint: rgba( 0, 158, 219, 0.08 );

	/* Neutrals */
	--nc-bg-paper: #F8FAFC;
	--nc-bg-panel: #FFFFFF;
	--nc-border: #E2E8F0;
	--nc-border-subtle: #F1F5F9;
	--nc-border-hover: #CBD5E1;
	--nc-ink: #0F172A;
	--nc-ink-soft: #475569;
	--nc-muted: #64748B;
	--nc-muted-light: #94A3B8;

	/* Semantic */
	--nc-signal: #10B981;
	--nc-alert: #EF4444;
	--nc-warning: #F59E0B;
}

/*
 * Real bug found via a Playwright audit at tablet width (820px): WP core's
 * block-library CSS sets `.wp-block-search__label{width:100%}` for the
 * Search block, and that rule has the same specificity as (and, on this
 * site, loads after) core's own `.screen-reader-text{width:1px}` rule --
 * so a Search block with "Hide label" enabled (our footer/sidebar search
 * widget) renders its visually-hidden label at full container width
 * instead of 1px. Because .screen-reader-text is `position:absolute`, that
 * oversized invisible box still extends the page's scrollable width,
 * forcing horizontal overflow (confirmed live: page rendered 1433px wide
 * inside an 820px tablet viewport) -- which in turn threw off every fr/%
 * based responsive layout below it (e.g. the footer's 4-column grid never
 * saw the real, narrower viewport). Re-asserting the correct hidden size
 * here, scoped to any screen-reader-text label inside a search block, is
 * a targeted fix that doesn't touch WP core files.
 */
.wp-block-search__label.screen-reader-text {
	width: 1px !important;
}
