/* ============================================================
   Hama News — Extra Styles (out of Tailwind output)
   ============================================================ */
* { -webkit-tap-highlight-color:transparent; }

/* ============================================================
   IRANYekanXFaNum Font — Self-hosted
   ============================================================ */
@font-face{ font-family:'IRANYekanXFaNum'; src:url('../../Webfonts/Woff2/IRANYekanXFaNum-UltraLight.woff2') format('woff2'), url('../../Webfonts/Woff/IRANYekanXFaNum-UltraLight.woff') format('woff'); font-weight:200; font-display:swap; }
@font-face{ font-family:'IRANYekanXFaNum'; src:url('../../Webfonts/Woff2/IRANYekanXFaNum-Light.woff2') format('woff2'), url('../../Webfonts/Woff/IRANYekanXFaNum-Light.woff') format('woff'); font-weight:300; font-display:swap; }
@font-face{ font-family:'IRANYekanXFaNum'; src:url('../../Webfonts/Woff2/IRANYekanXFaNum-Regular.woff2') format('woff2'), url('../../Webfonts/Woff/IRANYekanXFaNum-Regular.woff') format('woff'); font-weight:400; font-display:swap; }
@font-face{ font-family:'IRANYekanXFaNum'; src:url('../../Webfonts/Woff2/IRANYekanXFaNum-Medium.woff2') format('woff2'), url('../../Webfonts/Woff/IRANYekanXFaNum-Medium.woff') format('woff'); font-weight:500; font-display:swap; }
@font-face{ font-family:'IRANYekanXFaNum'; src:url('../../Webfonts/Woff2/IRANYekanXFaNum-DemiBold.woff2') format('woff2'), url('../../Webfonts/Woff/IRANYekanXFaNum-DemiBold.woff') format('woff'); font-weight:600; font-display:swap; }
@font-face{ font-family:'IRANYekanXFaNum'; src:url('../../Webfonts/Woff2/IRANYekanXFaNum-Bold.woff2') format('woff2'), url('../../Webfonts/Woff/IRANYekanXFaNum-Bold.woff') format('woff'); font-weight:700; font-display:swap; }
@font-face{ font-family:'IRANYekanXFaNum'; src:url('../../Webfonts/Woff2/IRANYekanXFaNum-ExtraBold.woff2') format('woff2'), url('../../Webfonts/Woff/IRANYekanXFaNum-ExtraBold.woff') format('woff'); font-weight:800; font-display:swap; }
@font-face{ font-family:'IRANYekanXFaNum'; src:url('../../Webfonts/Woff2/IRANYekanXFaNum-Heavy.woff2') format('woff2'), url('../../Webfonts/Woff/IRANYekanXFaNum-Heavy.woff') format('woff'); font-weight:900; font-display:swap; }

*{ font-family:'IRANYekanXFaNum',Vazirmatn, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif; }
h1,h2,h3,h4,h5,h6{ font-family:'IRANYekanXFaNum',Vazirmatn, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif; }

/* ============================================================
   Global Card Styles — یکپارچه برای همه کارت‌های خبری
   ============================================================ */

/* بج دسته‌بندی — برای همه سکشن‌ها یکسان */
.hn-cat-badge{
	position:absolute;
	top:10px;
	inset-inline-end:10px;
	z-index:5;
	display:inline-block;
	width:fit-content;
	padding:4px 10px;
	border-radius:6px;
	font-size:.7rem;
	font-weight:700;
	line-height:1.4;
	color:#fff;
	background:rgb(255, 57, 57);
	backdrop-filter:blur(4px);
	-webkit-backdrop-filter:blur(4px);
	pointer-events:none;
	white-space:nowrap;
}

/* کانتینر عکس شاخص */
.hn-card-img{
	position:relative;
	overflow:hidden;
	border-radius:.5rem;
	background:#f1f5f9;
}
.dark .hn-card-img{
	background:#1e293b;
}
.hn-card-img img{
	display:block;
	width:100%;
	height:100%;
	object-fit:cover;
	transition:transform .5s ease;
}
article.group:hover .hn-card-img img{
	transform:scale(1.05);
}

/* بج inline برای کارت‌های کوچک — داخل کادر متن */
.card-badge-inline{
	display:inline-block;
	width:fit-content;
	padding:2px 8px;
	margin-bottom:6px;
	border-radius:4px;
	font-size:.65rem;
	font-weight:700;
	color:#fff;
	background:rgb(248, 55, 55);
	backdrop-filter:blur(4px);
	-webkit-backdrop-filter:blur(4px);
	white-space:nowrap;
	line-height:1.5;
}
.hn-card-img.hn-card-img-hero img{
	object-fit:cover;
	width:100%;
	height:100%;
}

/* عکس absolute (هیرو) - تصاویر تمام قد */
.hn-card-img-abs{
	position:absolute;
	inset:0;
	overflow:hidden;
}
.hn-card-img-abs img{
	width:100%;
	height:100%;
	object-fit:cover;
}
html { scroll-behavior:smooth; }
body { padding-bottom:0; }
@media (min-width:768px){ body{ padding-bottom:0; } }

.no-scrollbar::-webkit-scrollbar{ display:none; }
.no-scrollbar{ -ms-overflow-style:none; scrollbar-width:none; }

/* لوگوی وردپرس در هدر و فوتر */
.site-logo img,
.custom-logo-link img{ max-height:50px; width:auto; }
footer .custom-logo-link img{ max-height:44px; }

.glass-nav{ background:rgba(255,255,255,.9); backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px); }
.dark .glass-nav{ background:rgba(11,19,41,.92); backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px); }

.glass-dock{ background:rgba(255,255,255,.94); backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px); box-shadow:0 -4px 25px -5px rgba(0,0,0,.08); }
.dark .glass-dock{ background:rgba(15,23,42,.94); backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px); box-shadow:0 -4px 25px -5px rgba(0,0,0,.4); }

.newsroom-bg{ position:relative; }
.newsroom-bg::before{ content:""; position:absolute; inset:0; opacity:.045; background-image:radial-gradient(#1E3E62 1px,transparent 1px),repeating-linear-gradient(45deg,transparent,transparent 24px,rgba(30,62,98,.25) 25px,transparent 26px); background-size:16px 16px,60px 60px; pointer-events:none; z-index:0; }
.dark .newsroom-bg::before{ opacity:.08; background-image:radial-gradient(#fff 1px,transparent 1px),repeating-linear-gradient(45deg,transparent,transparent 24px,rgba(255,255,255,.2) 25px,transparent 26px); }

.news-ambient-glow{ position:absolute; width:450px; height:120px; top:-40px; right:15%; background:radial-gradient(circle,rgba(225,29,72,.06) 0%,rgba(30,62,98,.04) 50%,transparent 80%); filter:blur(40px); pointer-events:none; z-index:0; }

@keyframes slowSpin { from{transform:rotate(0)} to{transform:rotate(360deg)} }
.animate-spin-very-slow{ animation:slowSpin 140s linear infinite; }

/* متن خبر (single) */
.article-content p{ margin-bottom:1.5rem; line-height:2.1; text-align:justify; }
.article-content blockquote{ margin:1.6rem 0; padding:1rem 1.25rem; border-radius:1rem; background:rgba(225,29,72,.06); border-inline-start:4px solid #E11D48; font-weight:700; }
/* کانتینر اسکرول منو */
.hn-nav-scroll {
    width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
}
.hn-nav-scroll::-webkit-scrollbar {
    display: none;
}

/* خود منو */
.hn-nav {
    display: flex;
    align-items: center;
    justify-content: flex-start;  /* 👈 تغییر از center به flex-start */
    gap: .375rem;
    padding: .5rem 0;
    min-width: max-content;  /* 👈 مهم: جلوگیری از فشرده شدن */
}
@media (min-width: 1024px) {
    .hn-nav { gap: .625rem; }
}

.hn-nav a,
.hn-nav button {
    flex-shrink: 0;
    padding: .375rem .875rem;
    font-size: .78rem;
    font-weight: 500;
    color: #334155;
    border-radius: .5rem;
    transition: all .15s;
    white-space: nowrap;
}
.hn-nav a:hover,
.hn-nav button:hover { color: #E11D48; }
.hn-nav .is-active,
.hn-nav .hn-active {
    color: #fff;
    background: #E11D48;
    font-weight: 800;
}
.dark .hn-nav a,
.dark .hn-nav button { color: #e2e8f0; }
/* تیکر: فقط یک خبر در هر لحظه */
#hn-ticker{ position:relative; height:24px; overflow:hidden; }
.hn-ticker-item{ position:absolute; inset-inline-start:0; top:0; width:100%; opacity:0; transform:translateX(24px); pointer-events:none; transition:opacity .3s ease, transform .3s ease; white-space:nowrap; text-overflow:ellipsis; overflow:hidden; display:inline-block; direction:rtl; text-align:right; }
.hn-ticker-item.is-active{ position:relative; opacity:1; transform:translateX(0); pointer-events:auto; }
.hn-ticker-item.is-leave{ opacity:0; transform:translateX(-24px); }

/* دکمهٔ خبر فوری + حلقهٔ پیشرفت + شمارنده */
.hn-pill-border{ position:relative; width:fit-content; padding:3px; border-radius:999px; isolation:isolate; }
.hn-pill{ position:relative; z-index:1; display:inline-flex; align-items:center; gap:8px; background:#fff; color:#E11D48; font-size:.75rem; font-weight:900; padding:.3rem .7rem .3rem .9rem; border-radius:999px; box-shadow:0 1px 6px rgba(0,0,0,.18); cursor:default; -webkit-user-select:none; user-select:none; }
.hn-progress-ring{ width:28px; height:28px; transform:rotate(-90deg); }
.hn-progress-track{ color:#E11D48; }
.hn-progress-bar{ transition:none; }
.hn-progress-text{ color:#E11D48; font-weight:900; }
@keyframes hnProgress{ from{ stroke-dashoffset:113.1; } to{ stroke-dashoffset:0; } }

/* دریور موبایل */
.hn-drawer{
	position:fixed;
	top:0;
	bottom:0;
	width:280px;
	background:#fff;
	z-index:60;
	padding:1.25rem;
	overflow-y:auto;
	transform:translateX(100%);
	transition:transform .3s ease-in-out;
	box-shadow:-4px 0 20px rgba(0,0,0,.08);
}
[dir="rtl"] .hn-drawer{
	right:0;
	left:auto;
	transform:translateX(100%);
}
.hn-drawer.is-open{
	transform:translateX(0);
}
.hn-backdrop{
	position:fixed;
	inset:0;
	background:rgba(0,0,0,.5);
	z-index:55;
	opacity:0;
	visibility:hidden;
	transition:opacity .3s, visibility .3s;
}
.hn-backdrop.is-open{
	opacity:1;
	visibility:visible;
}
.dark .hn-drawer{ background:#0f172a; border-color:#1e293b; }

/* مودال جستجو */
.hn-modal{ position:fixed; inset:0; z-index:80; display:none; }
.hn-modal.is-open{ display:flex; }
.hn-modal .hn-modal-card{ animation:modalIn .25s ease; }
@keyframes modalIn { from{ transform:translateY(14px); opacity:0 } to{ transform:none; opacity:1 } }

/* پینگ */
.hn-ping{ position:relative; }
.hn-ping::after{ content:""; position:absolute; inset:0; border-radius:9999px; background:currentColor; opacity:.55; animation:ping 1.4s cubic-bezier(0,0,.2,1) infinite; }
@keyframes ping { 0%{ transform:scale(1); opacity:.6 } 80%,100%{ transform:scale(2.2); opacity:0 } }

/* تصویر fallback برای پست‌های بی‌تصویر */
.img-fallback{ object-fit:cover; background:linear-gradient(135deg,#1E3E62,#0B192C); }

/* ============================================================
   Hama News — Blocks (صفحه اول) و ویجت‌ها
   ============================================================ */
.layout{ display:grid; grid-template-columns:minmax(0,1fr); gap:2rem; align-items:start; }
@media (min-width:1024px){ .layout{ grid-template-columns:minmax(0,1fr) 320px; } }
.section{ margin-top:2rem; padding-top:1.5rem; border-top:1px solid #e2e8f0; }
.dark .section{ border-color:#1e293b; }

/* چیپ */
.chip-row{ display:flex; gap:8px; overflow-x:auto; padding-block:2px 6px; margin-block:12px 0; scrollbar-width:none; }
.chip-row::-webkit-scrollbar{ display:none; }
.chip{ display:inline-flex; align-items:center; padding:7px 16px; border:1px solid #e2e8f0; border-radius:999px; background:#fff; color:#64748b; font-size:.8rem; font-weight:600; white-space:nowrap; transition:all .15s; }
.dark .chip{ background:#1e293b; border-color:#334155; color:#cbd5e1; }
.chip:hover{ border-color:#0f172a; color:#0f172a; }
.chip.is-active{ background:#E11D48; border-color:#E11D48; color:#fff; }
.dark .chip.is-active{ background:#E11D48; border-color:#E11D48; color:#fff; }

/* گریدها */
.grid{ display:grid; gap:1.25rem; }
.grid-cols-2{ grid-template-columns:repeat(2,minmax(0,1fr)); }
.grid-cols-4{ grid-template-columns:repeat(4,minmax(0,1fr)); }
@media (max-width:991px){ .grid-cols-4{ grid-template-columns:repeat(2,minmax(0,1fr)); } .grid-cols-2{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:639px){ .grid-cols-2,.grid-cols-4{ grid-template-columns:1fr; } }

/* کارت‌های هیرو/بلوک‌ها */
.card-list{ display:grid; grid-template-columns:1fr; gap:1.25rem; }
@media (min-width:768px){ .card-list{ grid-template-columns:repeat(2,1fr); } }
@media (min-width:992px){ .card-list{ grid-template-columns:repeat(3,1fr); } }

.card--horizontal{ display:flex; flex-direction:row; gap:12px; align-items:stretch; padding:10px; }
.card--horizontal .card-media{ flex:0 0 112px; width:112px; border-radius:10px; overflow:hidden; }
@media (max-width:767px){ .card--horizontal .card-media{ flex:0 0 112px; width:112px; } }

.block-mixed{ display:grid; grid-template-columns:1fr; gap:1.25rem; }
@media (min-width:768px){ .block-mixed{ grid-template-columns:1.5fr 1fr; } .block-mixed__small{ display:grid; gap:1.25rem; align-content:start; } }

.latest-block{ display:grid; grid-template-columns:1fr; gap:1.25rem; }
@media (min-width:768px){ .latest-block{ grid-template-columns:1.4fr .8fr .8fr; } .latest-block__col{ display:grid; gap:1.25rem; align-content:start; } }

.block-afg{ display:grid; grid-template-columns:1fr; gap:1.25rem; }
@media (min-width:768px){ .block-afg{ grid-template-columns:1.4fr 1fr; } .block-afg__minis{ display:grid; grid-template-columns:1fr 1fr; gap:1.25rem; align-content:start; } }
.mini-card{ background:#fff; border:1px solid #e2e8f0; border-radius:14px; padding:14px; display:flex; flex-direction:column; gap:8px; transition:box-shadow .18s,border-color .18s; }
.dark .mini-card{ background:#0f172a; border-color:#1e293b; }
.mini-card:hover{ box-shadow:0 10px 25px -5px rgba(0,0,0,.1); }
.mini-card .badge{ align-self:flex-start; }
.mini-card__title{ font-size:.85rem; font-weight:700; line-height:1.7; margin:0; -webkit-line-clamp:3; overflow:hidden; }
.mini-card__title a{ color:#0f172a; }
.dark .mini-card__title a{ color:#e2e8f0; }
.mini-card__meta{ font-size:.72rem; color:#94a3b8; margin-top:auto; }

/* نبض خبر */
.live-block{ display:grid; grid-template-columns:1fr; gap:1.25rem; background:#fff; border:1px solid #e2e8f0; border-radius:18px; padding:20px; }
.dark .live-block{ background:#0f172a; border-color:#1e293b; }
@media (min-width:768px){ .live-block{ grid-template-columns:.8fr 1.6fr; } }
.live-block__intro{ background:#0f172a; color:#fff; border-radius:14px; padding:22px; display:flex; flex-direction:column; justify-content:center; }
.dark .live-block__intro{ background:#1e293b; }
.live-block__intro h3{ margin:0 0 8px; font-size:22px; }
.live-block__intro p{ margin:0; font-size:12px; color:#cbd5e1; }
.live-feed{ display:grid; gap:0; }
.live-feed__row{ display:grid; grid-template-columns:62px 14px 1fr; align-items:center; gap:6px; border-bottom:1px solid #e2e8f0; padding:10px 0; }
.dark .live-feed__row{ border-color:#1e293b; }
.live-feed__row:last-child{ border-bottom:0; }
.live-feed__time{ font-size:11px; color:#94a3b8; }
.live-feed__dot{ width:9px; height:9px; background:#E11D48; border-radius:50%; }
.live-feed__title{ font-size:.8rem; font-weight:700; line-height:1.6; color:#0f172a; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
.dark .live-feed__title{ color:#e2e8f0; }
.live-feed__title:hover{ color:#E11D48; }

/* بج */
.badge{ display:inline-flex; align-items:center; gap:6px; padding:.25rem .65rem; border-radius:.45rem; font-size:.7rem; font-weight:800; background:#E11D48; color:#fff; }
.badge--cat{ background:#E11D48; color:#fff; }

/* دکمه */
.btn--outline{ display:inline-flex; align-items:center; gap:6px; padding:.6rem 1.5rem; border-radius:.9rem; border:1px solid #E11D48; color:#E11D48; font-weight:700; font-size:.85rem; transition:all .15s; }
.btn--outline:hover{ background:#E11D48; color:#fff; }

/* ویجت‌ها */
.widget-title{ font-size:.9rem; font-weight:800; margin:0 0 .5rem; color:#0f172a; }
.dark .widget-title{ color:#e2e8f0; }
.rank{ list-style:none; margin:0; padding:0; display:grid; gap:6px; }
.rank-item a{ display:grid; grid-template-columns:30px 1fr; align-items:center; gap:12px; padding:12px 0; border-bottom:1px solid #e2e8f0; }
.dark .rank-item a{ border-color:#1e293b; }
.rank-item:last-child a{ border-bottom:0; }
.rank-num{ width:30px; height:30px; border-radius:8px; background:#E11D48; color:#fff; font-weight:800; font-size:.8rem; display:inline-flex; align-items:center; justify-content:center; }
.rank-body{ min-width:0; }
.rank-title{ display:block; font-size:.78rem; font-weight:700; line-height:1.6; color:#0f172a; -webkit-line-clamp:2; overflow:hidden; }
.dark .rank-title{ color:#e2e8f0; }
.rank-title:hover{ color:#E11D48; }
.rank-meta{ display:block; font-size:.7rem; color:#94a3b8; margin-top:2px; }

/* سایدبار */
.sidebar{ display:grid; gap:1.5rem; align-content:start; }

/* صفحه سینگل */
.article__figure{ margin:0 0 1.5rem; border-radius:1rem; overflow:hidden; }
.article__figure figcaption{ padding:.6rem; font-size:.72rem; color:#94a3b8; text-align:center; background:#f1f5f9; }
.dark .article__figure figcaption{ background:#1e293b; }
.article__meta-item{ color:#94a3b8; font-size:.75rem; }
.image-fallback{ object-fit:cover; }

/* empty state */
.empty-state svg{ opacity:.6; }

/* ============================================================
   Hama Modern Home — سکشن‌های ۲ به بعد (مطابق دمو)
   ============================================================ */

/* Tailwind utility classes that may not exist in tailwind-output.css */
.max-w-7xl{ max-width:80rem; }
.mx-auto{ margin-inline:auto; }
.px-4{ padding-inline:1rem; }
@media(min-width:640px){ .sm\:px-6{ padding-inline:1.5rem; } }
@media(min-width:1024px){ .lg\:px-8{ padding-inline:2rem; } }
.mt-5{ margin-top:1.25rem; }
.mt-8{ margin-top:2rem; }
.mt-10{ margin-top:2.5rem; }
.mb-8{ margin-bottom:2rem; }
.mb-4{ margin-bottom:1rem; }
.mb-2{ margin-bottom:.5rem; }
.mb-6{ margin-bottom:1.5rem; }
.mb-1{ margin-bottom:.25rem; }
@media(min-width:768px){ .md\:mt-7{ margin-top:1.75rem; } }
.pt-6{ padding-top:1.5rem; }
.pb-3{ padding-bottom:.75rem; }
.p-8{ padding:2rem; }
.p-5{ padding:1.25rem; }
.p-4{ padding:1rem; }
.p-3\.5{ padding:.875rem; }
.p-3{ padding:.75rem; }
.px-2\.5{ padding-inline:.625rem; }
.px-2{ padding-inline:.5rem; }
.px-3{ padding-inline:.75rem; }
.px-4{ padding-inline:1rem; }
.px-5{ padding-inline:1.25rem; }
.py-3{ padding-block:.75rem; }
.py-1{ padding-block:.25rem; }
.py-1\.5{ padding-block:.375rem; }
.py-0\.5{ padding-block:.125rem; }
.gap-7{ gap:1.75rem; }
.gap-5{ gap:1.25rem; }
.gap-4{ gap:1rem; }
.gap-3\.5{ gap:.875rem; }
.gap-3{ gap:.75rem; }
.gap-2\.5{ gap:.625rem; }
.gap-2{ gap:.5rem; }
.gap-1{ gap:.25rem; }
.gap-1\.5{ gap:.375rem; }
@media(min-width:640px){ .sm\:flex-row{ flex-direction:row; } .sm\:items-center{ align-items:center; } }
.flex-col{ flex-direction:column; }
.items-start{ align-items:flex-start; }
.items-center{ align-items:center; }
.items-end{ align-items:flex-end; }
.justify-between{ justify-content:space-between; }
.justify-center{ justify-content:center; }
.flex{ display:flex; }
.flex-1{ flex:1 1 0%; }
.shrink-0{ flex-shrink:0; }
.min-w-0{ min-width:0; }
.w-full{ width:100%; }
.w-\[78\%\]{ width:78%; }
@media(min-width:640px){ .sm\:w-\[48\%\]{ width:48%; } }
@media(min-width:768px){ .md\:w-\[calc\(25\%-12px\)\]{ width:calc(25% - 12px); } }
.w-2\.5{ width:.625rem; }
.w-2{ width:.5rem; }
.w-8{ width:2rem; }
.w-7{ width:1.75rem; }
.w-28{ width:7rem; }
.h-6{ height:1.5rem; }
.h-8{ height:2rem; }
.h-7{ height:1.75rem; }
.h-24{ height:6rem; }
.h-44{ height:11rem; }
.h-64{ height:16rem; }
.h-72{ height:18rem; }
.h-full{ height:100%; }
.rounded-full{ border-radius:9999px; }
.rounded-3xl{ border-radius:1.5rem; }
.rounded-2xl{ border-radius:1rem; }
.rounded-xl{ border-radius:.75rem; }
.rounded-lg{ border-radius:.5rem; }
.rounded-md{ border-radius:.375rem; }
.overflow-hidden{ overflow:hidden; }
.overflow-x-auto{ overflow-x:auto; }
.relative{ position:relative; }
.absolute{ position:absolute; }
.inset-0{ inset:0; }
.top-2\.5{ top:.625rem; }
.right-2\.5{ inset-inline-end:.625rem; }
.bottom-2\.5{ bottom:.625rem; }
.top-3\.5{ top:.875rem; }
.right-3\.5{ inset-inline-end:.875rem; }
.top-1\.5{ top:.375rem; }
.right-1\.5{ inset-inline-end:.375rem; }
.bottom-0{ bottom:0; }
.left-0{ inset-inline-start:0; }
.right-0{ inset-inline-end:0; }
.z-10{ z-index:10; }
.z-0{ z-index:0; }
.object-cover{ object-fit:cover; }
.text-xs{ font-size:.75rem; }
.text-sm{ font-size:.875rem; }
.text-lg{ font-size:1.125rem; }
.text-xl{ font-size:1.25rem; }
.text-2xl{ font-size:1.5rem; }
.text-\[11px\]{ font-size:.6875rem; }
.text-\[10px\]{ font-size:.625rem; }
.text-\[9px\]{ font-size:.5625rem; }
.font-black{ font-weight:900; }
.font-extrabold{ font-weight:800; }
.font-bold{ font-weight:700; }
.font-medium{ font-weight:500; }
.font-semibold{ font-weight:600; }
.leading-snug{ line-height:1.375; }
.leading-relaxed{ line-height:1.625; }
.tracking-tight{ letter-spacing:-.025em; }
.text-white{ color:#fff; }
.text-white\/80{ color:rgba(255,255,255,.8); }
.text-slate-900{ color:#0f172a; }
.text-slate-800{ color:#1e293b; }
.text-slate-700{ color:#334155; }
.text-slate-600{ color:#475569; }
.text-slate-500{ color:#64748b; }
.text-slate-400{ color:#94a3b8; }
.text-slate-300{ color:#cbd5e1; }
.text-brand-red{ color:#E11D48; }
.bg-white{ background:#fff; }
.bg-slate-900{ background:#0f172a; }
.bg-slate-100{ background:#f1f5f9; }
.bg-slate-50{ background:#f8fafc; }
.bg-brand-red{ background:#E11D48; }
.bg-red-50{ background:rgba(225,29,72,.06); }
.border{ border-width:1px; }
.border-t{ border-top-width:1px; }
.border-b{ border-bottom-width:1px; }
.border-slate-200\/80{ border-color:rgba(226,232,240,.8); }
.border-slate-200\/50{ border-color:rgba(226,232,240,.5); }
.border-slate-100{ border-color:#f1f5f9; }
.border-slate-200{ border-color:#e2e8f0; }
.dark .border-slate-200\/80{ border-color:rgba(30,41,59,.8); }
.dark .border-slate-200\/50{ border-color:rgba(30,41,59,.5); }
.dark .border-slate-100{ border-color:rgba(30,41,59,.5); }
.shadow-sm{ box-shadow:0 1px 2px rgba(0,0,0,.05); }
.shadow-md{ box-shadow:0 4px 6px -1px rgba(0,0,0,.1); }
.shadow-lg{ box-shadow:0 10px 15px -3px rgba(0,0,0,.1); }
object-cover img{ width:100%; height:100%; object-fit:cover; }
.whitespace-nowrap{ white-space:nowrap; }
.truncate{ overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.text-center{ text-align:center; }
@media(max-width:767px){ .hidden{ display:none; } }
@media(min-width:768px){ .md\:hidden{ display:none; } }

/* Dark mode overrides for newsroom sections */
.dark .text-slate-700{ color:#cbd5e1; }
.dark .text-slate-600{ color:#94a3b8; }

/* Scrollable track */
.hn-scroll-track{ -webkit-overflow-scrolling:touch; }
.hn-scroll-track::-webkit-scrollbar{ display:none; }
.hn-scroll-track{ scrollbar-width:none; }

/* Line clamps */
.line-clamp-2{ display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.line-clamp-3{ display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }

/* Snap scroll */
.snap-x{ scroll-snap-type:x mandatory; }
.snap-start{ scroll-snap-align:start; }
.scroll-smooth{ scroll-behavior:smooth; }
.flex-shrink-0{ flex-shrink:0; }

/* Transition utilities */
.transition-all{ transition-property:all; transition-timing-function:cubic-bezier(.4,0,.2,1); transition-duration:.15s; }
.duration-300{ transition-duration:.3s; }
.duration-500{ transition-duration:.5s; }
.duration-700{ transition-duration:.7s; }
.ease-out{ transition-timing-function:cubic-bezier(0,0,.2,1); }
.group:hover .group-hover\:scale-105{ transform:scale(1.05); }
.group:hover .group-hover\:text-brand-red{ color:#E11D48; }
.group:hover .group-hover\:text-red-300{ color:#fca5a5; }
.group:hover .group-hover\:text-red-200{ color:#fecaca; }
.hover\:scale-105:hover{ transform:scale(1.05); }

/* Aspect square */
.aspect-square{ aspect-ratio:1/1; }

/* Background/Border dark mode overrides for new sections */
.dark .hn-scroll-track .bg-white{ background:#0F172A; }
.dark .border-slate-200\/80{ border-color:rgba(226,232,240,.8); }
.dark .border-slate-100{ border-color:rgba(30,41,59,.5); }
.dark .bg-slate-100{ background:#1E293B; }
.dark .text-slate-900{ color:#F1F5F9; }
.dark .text-slate-800{ color:#E2E8F0; }
.dark .text-slate-500{ color:#64748B; }
.dark .text-slate-400{ color:#94A3B8; }
.dark .text-slate-300{ color:#CBD5E1; }
.dark .bg-slate-50{ background:#070D1E; }

/* Newsletter section */
@keyframes slowSpin{ from{transform:rotate(0)} to{transform:rotate(360deg)} }
.animate-spin-very-slow{ animation:slowSpin 140s linear infinite; }

/* صفحهبندی */
nav.hn-pagination,
nav.navigation.hn-pagination{
	margin:8px;
	width:100%;
}
nav.hn-pagination h2.screen-reader-text{
	display:none;
}
nav.hn-pagination .nav-links{
	width:100%;
	margin:2.5rem 0;
}
nav.hn-pagination ul.page-numbers,
ul.page-numbers{
	list-style:none;
	display:flex;
	justify-content:center;
	gap:.5rem;
	padding:0;
	margin:8;
	flex-wrap:wrap;
}
ul.page-numbers li{
	display:inline-flex;
	margin:0;
}
ul.page-numbers .page-numbers{
	width:2.25rem;
	height:2.25rem;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	border-radius:.75rem;
	background:#fff;
	border:1px solid #e2e8f0;
	font-weight:700;
	color:#334155;
	font-size:.75rem;
	text-decoration:none;
	transition:all .15s;
}
ul.page-numbers .page-numbers.current{
	background:#E11D48 !important;
	color:#fff !important;
	border-color:#E11D48 !important;
}
ul.page-numbers a.page-numbers:hover{
	border-color:#E11D48;
}
.dark ul.page-numbers .page-numbers{
	background:#1e293b;
	border-color:#334155;
	color:#e2e8f0;
}
.dark ul.page-numbers .page-numbers.current{
	background:#E11D48 !important;
	border-color:#E11D48 !important;
	color:#fff !important;
}
ul.page-numbers .prev.page-numbers,
ul.page-numbers .next.page-numbers{
	font-size:0;
	width:2.25rem;
	height:2.25rem;
	padding:0;
	display:inline-flex;
	align-items:center;
	justify-content:center;
}
ul.page-numbers .prev.page-numbers svg,
ul.page-numbers .next.page-numbers svg{
	width:1rem;
	height:1rem;
}
ul.page-numbers .page-numbers.dots{
	border-color:transparent;
	background:transparent;
	color:#94a3b8;
}

/* ================================================ */
/* صفحه‌بندی (Pagination) — فواصل بالا و پایین        */
/* ================================================ */
.nav-links {
	margin:3rem 0 2.5rem;
	display:flex;
	justify-content:center;
	align-items:center;
	width:100%;
}
.nav-links ul.page-numbers {
	display:flex;
	align-items:center;
	justify-content:center;
	gap:.5rem;
	list-style:none;
	padding:0;
	margin:0;
	flex-wrap:wrap;
}
.nav-links .page-numbers {
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-width:2.5rem;
	height:2.5rem;
	padding:0 .75rem;
	border-radius:.75rem;
	font-size:.875rem;
	font-weight:700;
	color:#334155;
	transition:all .2s ease;
	text-decoration:none;
}
.nav-links .page-numbers:hover {
	background:#f1f5f9;
	color:#E11D48;
	border-color:#E11D48;
}
.nav-links .page-numbers.current {
	background:#E11D48;
	color:#fff;
	border-color:#E11D48;
}
.nav-links .page-numbers.next,
.nav-links .page-numbers.prev {
	padding:0 1rem;
}
.dark .nav-links .page-numbers {
	background:#1e293b;
	color:#e2e8f0;
	border-color:#334155;
}
.dark .nav-links .page-numbers:hover {
	background:#334155;
	color:#E11D48;
}
.dark .nav-links .page-numbers.current {
	background:#E11D48;
	color:#fff;
	border-color:#E11D48;
}

/* ================================================ */
/* منوی دریور موبایل — آیتم‌های دسته‌بندی             */
/* ================================================ */
.hn-drawer nav a{
	display:block;
	padding:.625rem .75rem;
	border-radius:.75rem;
	font-size:.875rem;
	font-weight:600;
	color:#334155;
	transition:all .15s;
	text-decoration:none;
}
.hn-drawer nav a:hover{
	color:#E11D48;
	background:rgba(225,29,72,.06);
}
.hn-drawer nav a.is-active,
.hn-drawer nav a.hn-active{
	color:#fff;
	background:#E11D48;
}
.dark .hn-drawer nav a{
	color:#e2e8f0;
}
.dark .hn-drawer nav a:hover{
	background:rgba(225,29,72,.12);
}
.dark .hn-drawer nav a.is-active,
.dark .hn-drawer nav a.hn-active{
	color:#fff;
	background:#E11D48;
}

/* ================================================ */
/* دکمه «رفتن به بالا» در نوار پایین                */
/* ================================================ */
.hn-backtotop-btn svg{
	transition:transform .2s;
}
.hn-backtotop-btn:active svg{
	transform:translateY(-2px);
}

/* ================================================ */
/* نوار پایین اپلیکیشنی موبایل (Bottom Nav)         */
/* ================================================ */
.hn-bottom-nav{
	position:fixed;
	bottom:12px;
	left:12px;
	right:12px;
	max-width:480px;
	margin:0 auto;
	background:#fff;
	border-radius:20px;
	box-shadow:0 10px 30px -5px rgba(0,0,0,.15);
	display:flex;
	align-items:center;
	justify-content:space-around;
	padding:8px 4px;
	z-index:50;
}
.hn-bottom-nav .nav-item{
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	gap:2px;
	flex:1;
	padding:6px 4px;
	border-radius:12px;
	color:#64748b;
	font-size:10px;
	font-weight:600;
	transition:all .2s;
	text-decoration:none;
	border:0;
	background:none;
	cursor:pointer;
	-webkit-tap-highlight-color:transparent;
}
.hn-bottom-nav .nav-item:hover,
.hn-bottom-nav .nav-item.is-active{
	color:#E11D48;
}
.hn-bottom-nav .nav-item svg{
	width:20px;
	height:20px;
	display:block;
}
.hn-bottom-nav .nav-center{
	position:relative;
	flex:1;
	display:flex;
	align-items:center;
	justify-content:center;
}
.hn-bottom-nav .nav-center-btn{
	position:relative;
	bottom:0;
	width:44px;
	height:44px;
	border-radius:50%;
	background:#E11D48;
	color:#fff;
	display:flex;
	align-items:center;
	justify-content:center;
	box-shadow:0 8px 20px -4px rgba(225,29,72,.5);
	border:3px solid #fff;
	transition:transform .2s;
	text-decoration:none;
	transform:translateY(-12%);
}
.hn-bottom-nav .nav-center-btn:hover{
	transform:scale(1.05);
}
.hn-bottom-nav .nav-center-btn svg{
	width:24px;
	height:24px;
	display:block;
}
.dark .hn-bottom-nav{
	background:#1e293b;
}
.dark .hn-bottom-nav .nav-item{
	color:#94a3b8;
}
.dark .hn-bottom-nav .nav-item.is-active{
	color:#E11D48;
}
.dark .hn-bottom-nav .nav-center-btn{
	border-color:#1e293b;
}

@media(min-width:768px){
	.hn-bottom-nav{ display:none !important; }
}

/* ================================================ */
/* فاصله محتوای اصلی از فوتر                        */
/* ================================================ */
#hn-main{
	padding-bottom:4rem;
}
@media(max-width:767px){
	#hn-main{
		padding-bottom:6rem;
	}
	/* عکس‌های بزرگ در موبایل کوچیکتر */
	.hn-card-img.w-full.h-72,
	.hn-card-img.w-full.h-80{
		max-height:14rem;
}
}

/* Sticky sidebar */
@media(min-width:1024px){
	.lg\:sticky{
		position:sticky;
	}
	.lg\:top-24{
		top:6rem;
	}
	.lg\:self-start{
		align-self:start;
	}
}

/* Fallback image */
.img-fallback,
img:not([src]){ 
	object-fit:cover; 
	background:linear-gradient(135deg,#1E3E62,#0B192C); 
}

/* Editorial list item background */
.divide-y > article{
	padding:12px 16px;
	border-radius:12px;
	background:#fff;
	transition:background .2s;
}
.dark .divide-y > article{
	background:#1e293b;
	border-color:#1e293b;
}

/* ================================================ */
/* Editorial List — لیست ادیتوریال (بدون کارت)       */
/* ================================================ */
.divide-y > article{
	transition:background .15s;
}
.divide-y > article:hover{
	background:rgba(241,245,249,.5);
}
.dark .divide-y > article:hover{
	background:rgba(30,41,59,.3);
}

/* ================================================ */
/* Sidebar — سبک‌تر و کم‌وزن‌تر                       */
/* ================================================ */
.sidebar-box{
	background:#f8fafc;
	border:1px solid #e2e8f0;
	border-radius:1rem;
	padding:1rem;
}
.dark .sidebar-box{
	background:#1e293b;
	border-color:#334155;
}
.sidebar-box h4{
	font-size:.875rem;
	font-weight:800;
	color:#0f172a;
	margin-bottom:.75rem;
}
.dark .sidebar-box h4{
	color:#f1f5f9;
}
.sidebar-box .border-t{
	border-color:#e2e8f0;
}
.dark .sidebar-box .border-t{
	border-color:#334155;
}

/* Sticky sidebar */
@media(min-width:1024px){
	.lg\:sticky{
		position:sticky;
	}
	.lg\:top-24{
		top:6rem;
	}
	.lg\:self-start{
		align-self:start;
	}
}

/* Fallback image */
.img-fallback,
img:not([src]){ 
	object-fit:cover; 
	background:linear-gradient(135deg,#1E3E62,#0B192C); 
}

/* Editorial list item background */
.divide-y > article{
	padding:12px 16px;
	border-radius:12px;
	background:#fff;
	transition:background .2s;
}
.dark .divide-y > article{
	background:#1e293b;
	border-color:#1e293b;
}

/* Sidebar background fix */
aside[class*="col-span-4"]{
	position:relative;
}
aside[class*="col-span-4"] > div{
	margin-bottom:1rem;
}

/* Responsive sticky sidebar */
@media(min-width:1024px){
	.lg\:sticky{
		position:sticky !important;
	}
	.lg\:top-24{
		top:6rem !important;
	}
	.lg\:self-start{
		align-self:start !important;
	}
}
