/**
 * No Signal Media Shell
 * Main app-shell layout only.
 */



:root {
	--nsm-bg: #0f1010;
	--nsm-text: #f4f2ea;
	--nsm-muted: rgba(244, 242, 234, 0.62);
	--nsm-shell-max: 1480px;
	--nsm-sidebar-width: 220px;
	--nsm-utility-width: 220px;
}

html {
	background: var(--nsm-bg);
}

body {
	background: var(--nsm-bg);
	color: var(--nsm-text);
}

.nsm-shell-page {
	width: min(100%, var(--nsm-shell-max));
	margin: 0 auto;
	min-height: 100vh;
	background: var(--nsm-bg);
	color: var(--nsm-text);
}

.nsm-shell {
	display: grid;
	grid-template-columns: var(--nsm-sidebar-width) minmax(0, 1fr) var(--nsm-utility-width);
	gap: 24px;
	align-items: start;
	width: 100%;
	padding: 24px;
	box-sizing: border-box;
}

.nsm-content {
	min-width: 0;
	width: 100%;
}

.nsm-content > .wp-block-post-title,
.nsm-content > h1 {
	margin-top: 0;
	margin-bottom: 24px;
	color: var(--nsm-text);
	font-size: clamp(2.1rem, 5vw, 4.5rem);
	line-height: 0.95;
	letter-spacing: -0.06em;
}

.nsm-content .wp-block-post-content {
	width: 100%;
	max-width: none;
}

.nsm-content a {
	color: #dfd37a;
	text-underline-offset: 0.18em;
}

.nsm-content p {
	color: var(--nsm-muted);
}



@media (max-width: 1024px) {
	.nsm-shell {
		grid-template-columns: 1fr;
		gap: 18px;
		padding: 18px;
	}

	.nsm-content {
		order: 1;
        padding: 1rem;
	}

	.nsm-sidebar {
		order: 2;
	}

	.nsm-utility {
		order: 3;
	}
}

@media (max-width: 782px) {
	.nsm-shell-page {
		width: 100%;
	}

	.nsm-shell {
		display: block;
		padding: 6px;
	}

	.nsm-content > .wp-block-post-title,
	.nsm-content > h1 {
		font-size: clamp(2rem, 12vw, 3.8rem);
		margin-bottom: 18px;
	}
}


/* =========================================================
   No Signal Shell: Remove WordPress Root Padding Drift
   ========================================================= */

body .nsm-shell-page,
body .nsm-shell-page.has-global-padding,
body .nsm-shell-page .has-global-padding {
	--wp--style--root--padding-left: 0;
	--wp--style--root--padding-right: 0;
}

body .nsm-shell-page .entry-content.has-global-padding {
	padding-left: 0;
	padding-right: 0;
}

body .nsm-shell-page > .alignfull,
body .nsm-shell-page .entry-content > .alignfull {
	margin-left: 0;
	margin-right: 0;
	width: 100%;
}