:root{
	--alijm-title-color:#111;
	--alijm-text-color:#222;
	--alijm-link-color:#0b5fff;
	--alijm-link-hover-color:#0847c6;

	--alijm-page-bg:#fff;
	--alijm-content-bg:#fff;
	--alijm-border-color:#e7e7e7;

	--alijm-header-bg:#fff;
	--alijm-header-text:#111;

	--alijm-footer-bg:#0f172a;
	--alijm-footer-text:#e5e7eb;

	--alijm-font-family: "IRANSansX", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
	--alijm-base-font-size:16px;
	--alijm-base-line-height:1.75;
	--alijm-heading-scale:1.25;
	--alijm-font-weight-body:400;
	--alijm-font-weight-headings:700;

	--alijm-container-normal: 1100px;
	--alijm-container-wide:   1320px;
	--alijm-container-narrow: 800px;
	--alijm-sidebar-width: 320px;
	--alijm-gap: 24px;
}

*{ box-sizing:border-box; }
body{
	margin:0;
	font-family: var(--alijm-font-family);
	font-size: var(--alijm-base-font-size);
	line-height: var(--alijm-base-line-height);
	font-weight: var(--alijm-font-weight-body);
	color: var(--alijm-text-color);
	background: var(--alijm-page-bg);
	text-rendering: optimizeLegibility;
}

a{ color: var(--alijm-link-color); text-decoration: none; }
a:hover, a:focus{ color: var(--alijm-link-hover-color); text-decoration: underline; }

h1,h2,h3,h4,h5,h6{
	color: var(--alijm-title-color);
	line-height:1.25;
	font-weight: var(--alijm-font-weight-headings);
	margin: 0 0 .6em;
}
h1{ font-size: calc(var(--alijm-base-font-size) * (var(--alijm-heading-scale) * 1.7)); }
h2{ font-size: calc(var(--alijm-base-font-size) * (var(--alijm-heading-scale) * 1.35)); }
h3{ font-size: calc(var(--alijm-base-font-size) * (var(--alijm-heading-scale) * 1.15)); }

p{ margin: 0 0 1em; }
img{ max-width:100%; height:auto; }

.alijm-container{
	margin-inline:auto;
	padding-inline: 16px;
	max-width: var(--alijm-container-normal);
}

/* Header/Footer simple blocks */
.site-header{
	background: var(--alijm-header-bg);
	color: var(--alijm-header-text);
	border-bottom: 1px solid var(--alijm-border-color);
	padding: 18px 0;
}
.site-header a{ color: inherit; text-decoration: underline; }

.site-footer{
	background: var(--alijm-footer-bg);
	color: var(--alijm-footer-text);
	border-top: 1px solid color-mix(in srgb, var(--alijm-border-color) 40%, transparent);
	padding: 26px 0;
	margin-top: 40px;
}
.site-footer a{ color: inherit; text-decoration: underline; }

/* Responsive text slots: show only one per breakpoint */
.alijm-responsive-content .alijm-device{ display:none; }

/* Desktop */
@media (min-width: 993px){
	.alijm-responsive-content .alijm-desktop{ display:block; }
}

/* Tablet */
@media (min-width: 601px) and (max-width: 992px){
	.alijm-responsive-content .alijm-tablet{ display:block; }
}

/* Mobile */
@media (max-width: 600px){
	.alijm-responsive-content .alijm-mobile{ display:block; }
}

/* Main */
.site-main{ padding-top: 22px; }

.alijm-layout{
	display:grid;
	grid-template-columns: 1fr;
	gap: var(--alijm-gap);
}

.alijm-content{
	min-width:0;
	background: var(--alijm-content-bg);
	border: 1px solid var(--alijm-border-color);
	border-radius: 12px;
	padding: 18px;
}

.alijm-sidebar{
	background: var(--alijm-content-bg);
	border: 1px solid var(--alijm-border-color);
	padding: 16px;
	border-radius: 12px;
}

/* Container width control based on layout */
body.alijm-layout-no-sidebar-normal .alijm-container{ max-width: var(--alijm-container-normal); }
body.alijm-layout-no-sidebar-wide   .alijm-container{ max-width: var(--alijm-container-wide); }
body.alijm-layout-no-sidebar-narrow .alijm-container{ max-width: var(--alijm-container-narrow); }

/* Widgets */
.widget-title{ margin: 0 0 10px; font-size: 1.05em; }

/* Forms */
input, textarea, select{
	max-width:100%;
	padding: 10px 12px;
	border-radius: 10px;
	border: 1px solid var(--alijm-border-color);
	background: #fff;
	color: inherit;
	font: inherit;
}
button, .button, input[type="submit"]{
	border: 0;
	border-radius: 10px;
	padding: 10px 14px;
	background: var(--alijm-link-color);
	color: #fff;
	cursor: pointer;
	font: inherit;
}
button:hover, .button:hover, input[type="submit"]:hover{
	background: var(--alijm-link-hover-color);
}

/* Gutenberg basics */
.wp-block-image img{ height:auto; }
.wp-block-cover{ border-radius: 12px; overflow:hidden; }
.wp-block-table table{ width:100%; border-collapse: collapse; }
.wp-block-table td, .wp-block-table th{ border:1px solid var(--alijm-border-color); padding:8px; }