/* =========================================================
   Service DZ - Frontend Design System (v2.0 - Enhanced UI)
========================================================= */

/* =========================================================
   01. Design Tokens (نظام التصميم المتقدم)
========================================================= */
:root {
    /* ==========================================
       الألوان الأساسية - الهوية الوطنية
    ========================================== */
    --sdz-primary: #006B3F;
    --sdz-primary-rgb: 0, 107, 63;
    --sdz-primary-dark: #004D2E;
    --sdz-primary-light: #EAF5EF;
    --sdz-primary-lighter: #F4FAF6;
    --sdz-primary-hover: #005233;

    --sdz-secondary: #B79B4A;
    --sdz-secondary-rgb: 183, 155, 74;
    --sdz-secondary-light: #F6F1E3;
    --sdz-secondary-dark: #9A803A;

    /* ==========================================
       الألوان الوظيفية (Semantic)
    ========================================== */
    --sdz-success: #15803D;
    --sdz-success-light: #DCFCE7;
    --sdz-warning: #B45309;
    --sdz-warning-light: #FEF3C7;
    --sdz-danger: #B91C1C;
    --sdz-danger-light: #FEE2E2;
    --sdz-info: #1D4ED8;
    --sdz-info-light: #DBEAFE;

    /* ==========================================
       النصوص والخلفيات (Neutral Palette)
    ========================================== */
    --sdz-text: #0F172A;        /* Slate-900 */
    --sdz-text-secondary: #334155; /* Slate-700 */
    --sdz-text-muted: #64748B;   /* Slate-500 */
    --sdz-text-inverse: #FFFFFF;
    --sdz-background: #F8FAFC;   /* Slate-50 */
    --sdz-surface: #FFFFFF;
    --sdz-border: #E2E8F0;       /* Slate-200 */
    --sdz-border-light: #F1F5F9; /* Slate-100 */

    /* ==========================================
       الأشكال والظلال (Modern Depth)
    ========================================== */
    --sdz-radius-xs: 4px;
    --sdz-radius-sm: 8px;
    --sdz-radius-md: 16px;
    --sdz-radius-lg: 24px;
    --sdz-radius-xl: 32px;
    --sdz-radius-full: 9999px;

    /* Multi-layer shadows for better depth perception */
    --sdz-shadow-xs: 0 1px 2px 0 rgba(0, 0, 0, 0.04);
    --sdz-shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, 0.04), 0 1px 2px -1px rgba(0, 0, 0, 0.06);
    --sdz-shadow-md: 0 4px 16px 0 rgba(0, 0, 0, 0.06), 0 2px 4px -2px rgba(0, 0, 0, 0.04);
    --sdz-shadow-lg: 0 12px 40px 0 rgba(0, 0, 0, 0.08), 0 4px 12px -4px rgba(0, 0, 0, 0.04);
    --sdz-shadow-xl: 0 24px 64px 0 rgba(0, 0, 0, 0.10), 0 8px 24px -6px rgba(0, 0, 0, 0.04);
    --sdz-shadow-primary: 0 4px 16px 0 rgba(0, 107, 63, 0.20);
    --sdz-shadow-primary-hover: 0 8px 32px 0 rgba(0, 107, 63, 0.30);

    /* ==========================================
       الحركة والانتقالات (Motion)
    ========================================== */
    --sdz-transition: 0.25s cubic-bezier(0.4, 0, 0.2, 1);
    --sdz-transition-slow: 0.4s cubic-bezier(0.4, 0, 0.2, 1);

    /* ==========================================
       الطباعة (Typography)
    ========================================== */
    --sdz-font-family: 'Changa', 'Cairo', 'Tahoma', 'Arial', sans-serif;
    --sdz-font-size-base: 16px;
    --sdz-line-height-base: 1.6;

    /* ==========================================
       التباعد (Spacing Scale)
    ========================================== */
    --sdz-spacing-1: 4px;
    --sdz-spacing-2: 8px;
    --sdz-spacing-3: 12px;
    --sdz-spacing-4: 16px;
    --sdz-spacing-5: 20px;
    --sdz-spacing-6: 24px;
    --sdz-spacing-8: 32px;
    --sdz-spacing-10: 40px;
    --sdz-spacing-12: 48px;

    /* ==========================================
       الحاوية (Container)
    ========================================== */
    --sdz-container: 1200px;
    --sdz-container-sm: 640px;
    --sdz-container-md: 768px;
    --sdz-container-lg: 1024px;
}

/* =========================================================
   02. Scoped Base (نطاق محدد - محسن)
========================================================= */
.sdz-home-wrapper,
.sdz-archive-wrapper,
.sdz-single-wrapper,
.sdz-procedure-page {
    font-family: var(--sdz-font-family);
    color: var(--sdz-text);
    font-size: var(--sdz-font-size-base);
    line-height: var(--sdz-line-height-base);
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    scroll-behavior: smooth;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.sdz-home-wrapper *,
.sdz-archive-wrapper *,
.sdz-single-wrapper *,
.sdz-procedure-page * {
    box-sizing: border-box;
}

/* =========================================================
   03. Accessibility & Typography (إمكانية الوصول والطباعة)
========================================================= */
.sdz-home-wrapper a,
.sdz-archive-wrapper a,
.sdz-single-wrapper a,
.sdz-procedure-page a {
    text-decoration: none;
    color: inherit;
    transition: color var(--sdz-transition);
}

.sdz-home-wrapper a:hover,
.sdz-archive-wrapper a:hover,
.sdz-single-wrapper a:hover,
.sdz-procedure-page a:hover {
    color: var(--sdz-primary);
}

.sdz-home-wrapper a:focus-visible,
.sdz-archive-wrapper a:focus-visible,
.sdz-single-wrapper a:focus-visible,
.sdz-procedure-page a:focus-visible,
.sdz-home-wrapper button:focus-visible,
.sdz-archive-wrapper button:focus-visible,
.sdz-single-wrapper button:focus-visible,
.sdz-procedure-page button:focus-visible,
.sdz-home-wrapper input:focus-visible,
.sdz-archive-wrapper input:focus-visible,
.sdz-single-wrapper input:focus-visible,
.sdz-procedure-page input:focus-visible,
.sdz-home-wrapper select:focus-visible,
.sdz-archive-wrapper select:focus-visible,
.sdz-single-wrapper select:focus-visible,
.sdz-procedure-page select:focus-visible {
    outline: 3px solid var(--sdz-secondary);
    outline-offset: 3px;
    border-radius: var(--sdz-radius-sm);
}

.sdz-home-wrapper h1,
.sdz-home-wrapper h2,
.sdz-home-wrapper h3,
.sdz-home-wrapper h4 {
    font-weight: 700;
    letter-spacing: -0.02em;
    color: var(--sdz-text);
}

/* =========================================================
   04. Layout (التخطيط العام)
========================================================= */
.sdz-archive-container,
.sdz-home-container {
    width: min(100% - 32px, var(--sdz-container));
    margin-inline: auto;
}

/* =========================================================
   05. Buttons (الأزرار - محسنة)
========================================================= */
.sdz-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: var(--sdz-spacing-2);
    min-height: 48px;
    padding: var(--sdz-spacing-3) var(--sdz-spacing-6);
    border-radius: var(--sdz-radius-md);
    font-weight: 700;
    font-size: 0.95rem;
    cursor: pointer;
    transition: all var(--sdz-transition);
    border: none;
    text-decoration: none;
    line-height: 1.2;
    white-space: nowrap;
}

.sdz-btn-primary {
    background: var(--sdz-primary);
    color: var(--sdz-text-inverse);
    box-shadow: var(--sdz-shadow-primary);
}

.sdz-btn-primary:hover {
    background: var(--sdz-primary-dark);
    transform: translateY(-2px);
    box-shadow: var(--sdz-shadow-primary-hover);
}

.sdz-btn-primary:active {
    transform: translateY(0);
    box-shadow: var(--sdz-shadow-sm);
}

.sdz-btn-outline {
    background: transparent;
    color: var(--sdz-primary);
    border: 2px solid var(--sdz-primary);
    box-shadow: none;
}

.sdz-btn-outline:hover {
    background: var(--sdz-primary);
    color: var(--sdz-text-inverse);
    transform: translateY(-2px);
    box-shadow: var(--sdz-shadow-md);
}

.sdz-btn-secondary {
    background: var(--sdz-secondary);
    color: var(--sdz-text-inverse);
    box-shadow: 0 4px 16px rgba(183, 155, 74, 0.25);
}

.sdz-btn-secondary:hover {
    background: var(--sdz-secondary-dark);
    transform: translateY(-2px);
    box-shadow: 0 8px 24px rgba(183, 155, 74, 0.35);
}

.sdz-btn-sm {
    min-height: 36px;
    padding: var(--sdz-spacing-2) var(--sdz-spacing-4);
    font-size: 0.85rem;
}

.sdz-btn-lg {
    min-height: 56px;
    padding: var(--sdz-spacing-4) var(--sdz-spacing-8);
    font-size: 1.05rem;
}

/* =========================================================
   06. Search (البحث - محسن)
========================================================= */
.sdz-archive-search {
    display: flex;
    gap: var(--sdz-spacing-3);
    width: min(100%, 820px);
    margin-inline: auto;
}

.sdz-search-field {
    position: relative;
    flex: 1;
}

.sdz-search-field input {
    width: 100%;
    min-height: 56px;
    padding: 0 52px 0 48px;
    border: 2px solid var(--sdz-border);
    border-radius: var(--sdz-radius-md);
    background: var(--sdz-surface);
    color: var(--sdz-text);
    font: inherit;
    transition: all var(--sdz-transition);
}

.sdz-search-field input:focus {
    border-color: var(--sdz-primary);
    box-shadow: 0 0 0 4px rgba(var(--sdz-primary-rgb), 0.10);
    outline: none;
}

.sdz-search-field input::placeholder {
    color: var(--sdz-text-muted);
    opacity: 0.8;
}

.sdz-search-button {
    min-width: 110px;
    border: none;
    border-radius: var(--sdz-radius-md);
    background: var(--sdz-primary);
    color: var(--sdz-text-inverse);
    font: inherit;
    font-weight: 700;
    cursor: pointer;
    transition: all var(--sdz-transition);
    padding: 0 var(--sdz-spacing-5);
}

.sdz-search-button:hover {
    background: var(--sdz-primary-dark);
    transform: translateY(-2px);
    box-shadow: var(--sdz-shadow-primary-hover);
}

/* =========================================================
   07. Cards (البطاقات - محسنة)
========================================================= */
.sdz-procedure-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(min(100%, 300px), 1fr));
    gap: var(--sdz-spacing-5);
}

.sdz-procedure-card {
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 0;
    padding: var(--sdz-spacing-6);
    border: 1px solid var(--sdz-border);
    border-radius: var(--sdz-radius-lg);
    background: var(--sdz-surface);
    box-shadow: var(--sdz-shadow-sm);
    transition: all var(--sdz-transition);
}

.sdz-procedure-card:hover {
    border-color: var(--sdz-primary);
    box-shadow: var(--sdz-shadow-lg);
    transform: translateY(-4px);
}

.sdz-card-icon {
    width: 48px;
    height: 48px;
    display: grid;
    place-items: center;
    margin-bottom: var(--sdz-spacing-4);
    border-radius: var(--sdz-radius-md);
    background: var(--sdz-primary-light);
    color: var(--sdz-primary);
    font-size: 22px;
    transition: all var(--sdz-transition);
}

.sdz-procedure-card:hover .sdz-card-icon {
    background: var(--sdz-primary);
    color: var(--sdz-text-inverse);
    transform: scale(1.05);
}

.sdz-card-content {
    min-width: 0;
}

.sdz-card-content h2 {
    margin: 0 0 var(--sdz-spacing-2);
    font-size: clamp(17px, 2vw, 20px);
    line-height: 1.4;
    font-weight: 700;
}

.sdz-card-content h2 a {
    color: var(--sdz-text);
    transition: color var(--sdz-transition);
}

.sdz-card-content h2 a:hover {
    color: var(--sdz-primary);
}

.sdz-card-excerpt {
    margin: 0 0 var(--sdz-spacing-4);
    color: var(--sdz-text-muted);
    font-size: 0.9rem;
    line-height: 1.7;
}

.sdz-card-meta {
    display: flex;
    flex-wrap: wrap;
    gap: var(--sdz-spacing-2);
    margin-top: auto;
}

.sdz-card-meta span {
    display: inline-flex;
    align-items: center;
    gap: var(--sdz-spacing-1);
    min-height: 28px;
    padding: var(--sdz-spacing-1) var(--sdz-spacing-3);
    border: 1px solid var(--sdz-border-light);
    border-radius: var(--sdz-radius-full);
    background: var(--sdz-background);
    color: var(--sdz-text-muted);
    font-size: 0.75rem;
    font-weight: 500;
    transition: border-color var(--sdz-transition);
}

.sdz-card-meta span:hover {
    border-color: var(--sdz-primary-light);
}

.sdz-card-action {
    position: absolute;
    inset-inline-start: var(--sdz-spacing-5);
    bottom: var(--sdz-spacing-5);
    width: 40px;
    height: 40px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: var(--sdz-primary);
    color: var(--sdz-text-inverse);
    box-shadow: var(--sdz-shadow-primary);
    transition: all var(--sdz-transition);
    opacity: 0.9;
}

.sdz-procedure-card:hover .sdz-card-action {
    transform: translateX(-6px) scale(1.05);
    box-shadow: var(--sdz-shadow-primary-hover);
    opacity: 1;
}

/* =========================================================
   08. Verification Badges (شارات التحقق - محسنة)
========================================================= */
.sdz-verification-badge {
    display: inline-flex;
    align-items: center;
    gap: var(--sdz-spacing-1);
    min-height: 28px;
    padding: var(--sdz-spacing-1) var(--sdz-spacing-3);
    border-radius: var(--sdz-radius-full);
    font-size: 0.75rem;
    font-weight: 700;
    border: 1px solid transparent;
    transition: all var(--sdz-transition);
}

.badge-verified {
    background: var(--sdz-success-light);
    color: var(--sdz-success);
    border-color: var(--sdz-success);
}

.badge-reviewed {
    background: var(--sdz-info-light);
    color: var(--sdz-info);
    border-color: var(--sdz-info);
}

.badge-pending {
    background: var(--sdz-warning-light);
    color: var(--sdz-warning);
    border-color: var(--sdz-warning);
}

.badge-outdated {
    background: var(--sdz-danger-light);
    color: var(--sdz-danger);
    border-color: var(--sdz-danger);
}

/* =========================================================
   09. Single Procedure Page (صفحة الإجراء الفردي)
========================================================= */
.sdz-procedure-layout {
    width: min(100% - 32px, var(--sdz-container));
    margin: var(--sdz-spacing-8) auto;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 340px;
    gap: var(--sdz-spacing-6);
}

.sdz-main-content,
.sdz-widget {
    border: 1px solid var(--sdz-border);
    border-radius: var(--sdz-radius-lg);
    background: var(--sdz-surface);
    box-shadow: var(--sdz-shadow-sm);
    transition: box-shadow var(--sdz-transition);
}

.sdz-main-content:hover,
.sdz-widget:hover {
    box-shadow: var(--sdz-shadow-md);
}

.sdz-main-content {
    min-width: 0;
    padding: clamp(20px, 4vw, 40px);
}

.sdz-sidebar {
    min-width: 0;
}

.sdz-widget {
    position: sticky;
    top: var(--sdz-spacing-6);
    padding: var(--sdz-spacing-6);
}

.sdz-procedure-header .sdz-procedure-kicker {
    display: inline-flex;
    align-items: center;
    gap: var(--sdz-spacing-1);
    color: var(--sdz-primary);
    font-weight: 700;
    font-size: 0.85rem;
    margin-bottom: var(--sdz-spacing-2);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.sdz-procedure-header h1 {
    font-size: clamp(28px, 4vw, 38px);
    font-weight: 900;
    color: var(--sdz-text);
    margin: 0 0 var(--sdz-spacing-4);
    line-height: 1.1;
    letter-spacing: -0.02em;
}

.sdz-procedure-actions {
    display: flex;
    gap: var(--sdz-spacing-3);
    flex-wrap: wrap;
    margin-top: var(--sdz-spacing-2);
}

.sdz-breadcrumbs {
    display: flex;
    align-items: center;
    gap: var(--sdz-spacing-2);
    font-size: 0.9rem;
    color: var(--sdz-text-muted);
    margin-bottom: var(--sdz-spacing-6);
    flex-wrap: wrap;
}

.sdz-breadcrumbs a {
    color: var(--sdz-text-muted);
    transition: color var(--sdz-transition);
}

.sdz-breadcrumbs a:hover {
    color: var(--sdz-primary);
}

.sdz-breadcrumbs span[aria-current="page"] {
    color: var(--sdz-text);
    font-weight: 600;
}

/* =========================================================
   10. Sidebar Widget (الشريط الجانبي - محسن)
========================================================= */
.sdz-widget h3 {
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--sdz-text);
    margin: 0 0 var(--sdz-spacing-5);
    padding-bottom: var(--sdz-spacing-3);
    border-bottom: 2px solid var(--sdz-border);
}

.sdz-widget-item {
    display: flex;
    gap: var(--sdz-spacing-3);
    padding: var(--sdz-spacing-3) 0;
    border-bottom: 1px solid var(--sdz-border-light);
}

.sdz-widget-item:last-child {
    border-bottom: none;
}

.sdz-widget-item .sdz-icon {
    width: 40px;
    height: 40px;
    display: grid;
    place-items: center;
    border-radius: var(--sdz-radius-sm);
    background: var(--sdz-primary-light);
    color: var(--sdz-primary);
    font-size: 1.1rem;
    flex-shrink: 0;
}

.sdz-widget-item strong {
    display: block;
    color: var(--sdz-text);
    font-size: 0.95rem;
    margin-bottom: 2px;
}

.sdz-widget-item p {
    margin: 0;
    color: var(--sdz-text-muted);
    font-size: 0.85rem;
    line-height: 1.5;
}

/* =========================================================
   11. Trust Badge (شارة الموثوقية - محسنة)
========================================================= */
.sdz-trust-badge {
    display: flex;
    align-items: flex-start;
    gap: var(--sdz-spacing-3);
    margin: var(--sdz-spacing-4) 0;
    padding: var(--sdz-spacing-4);
    border: 1px solid var(--sdz-border);
    border-radius: var(--sdz-radius-md);
    background: var(--sdz-background);
    transition: all var(--sdz-transition);
}

.sdz-trust-badge:hover {
    border-color: var(--sdz-primary);
    background: var(--sdz-primary-lighter);
}

.sdz-trust-icon {
    width: 32px;
    height: 32px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: var(--sdz-primary-light);
    color: var(--sdz-primary);
    font-size: 1rem;
    font-weight: 700;
    flex-shrink: 0;
}

.sdz-trust-content {
    flex: 1;
    min-width: 0;
}

.sdz-trust-content strong {
    display: block;
    font-size: 0.95rem;
    color: var(--sdz-text);
}

.sdz-trust-meta {
    margin-top: var(--sdz-spacing-1);
    display: flex;
    flex-wrap: wrap;
    gap: var(--sdz-spacing-2);
    font-size: 0.85rem;
    color: var(--sdz-text-muted);
}

.sdz-trust-meta a {
    color: var(--sdz-primary);
    text-decoration: underline;
    text-underline-offset: 2px;
}

/* =========================================================
   12. Relationships Sections (أقسام العلاقات)
========================================================= */
.sdz-section {
    margin-top: var(--sdz-spacing-10);
    padding-top: var(--sdz-spacing-8);
    border-top: 2px solid var(--sdz-border);
}

.sdz-section h2 {
    font-size: 1.2rem;
    font-weight: 700;
    color: var(--sdz-text);
    display: flex;
    align-items: center;
    gap: var(--sdz-spacing-3);
    margin: 0 0 var(--sdz-spacing-4);
}

.sdz-section h2 i {
    color: var(--sdz-primary);
    font-size: 1.4rem;
}

.sdz-list {
    display: grid;
    gap: var(--sdz-spacing-3);
}

.sdz-list-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--sdz-spacing-3);
    min-width: 0;
    padding: var(--sdz-spacing-3) var(--sdz-spacing-4);
    border: 1px solid var(--sdz-border);
    border-radius: var(--sdz-radius-md);
    background: var(--sdz-background);
    transition: all var(--sdz-transition);
}

.sdz-list-item:hover {
    border-color: var(--sdz-primary);
    background: var(--sdz-surface);
    transform: translateX(-4px);
    box-shadow: var(--sdz-shadow-sm);
}

.sdz-list-item a {
    color: var(--sdz-text);
    font-weight: 500;
    transition: color var(--sdz-transition);
}

.sdz-list-item a:hover {
    color: var(--sdz-primary);
}

/* =========================================================
   13. Homepage Components (مكونات الصفحة الرئيسية)
========================================================= */
.sdz-hero {
    background: linear-gradient(135deg, var(--sdz-primary), var(--sdz-primary-dark));
    border-radius: var(--sdz-radius-lg);
    padding: 60px 30px;
    text-align: center;
    color: var(--sdz-text-inverse);
    margin-bottom: var(--sdz-spacing-12);
    box-shadow: var(--sdz-shadow-xl);
    position: relative;
    overflow: hidden;
}

.sdz-hero::before {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at 20% 30%, rgba(183, 155, 74, 0.10) 0%, transparent 60%);
    pointer-events: none;
}

.sdz-hero h1 {
    font-size: clamp(32px, 5vw, 44px);
    font-weight: 900;
    margin: 0 0 var(--sdz-spacing-4);
    color: inherit;
    position: relative;
    z-index: 1;
}

.sdz-hero p {
    font-size: 1.1rem;
    opacity: 0.9;
    max-width: 600px;
    margin: 0 auto var(--sdz-spacing-6);
    line-height: 1.7;
    position: relative;
    z-index: 1;
}

.sdz-hero-search {
    max-width: 600px;
    margin: 0 auto;
    display: flex;
    gap: var(--sdz-spacing-3);
    background: rgba(255, 255, 255, 0.12);
    border-radius: var(--sdz-radius-full);
    padding: var(--sdz-spacing-1);
    backdrop-filter: blur(4px);
    position: relative;
    z-index: 1;
}

.sdz-hero-search input {
    flex: 1;
    padding: var(--sdz-spacing-3) var(--sdz-spacing-5);
    border: none;
    border-radius: var(--sdz-radius-full);
    font-size: 1rem;
    outline: none;
    background: rgba(255, 255, 255, 0.95);
    color: var(--sdz-text);
}

.sdz-hero-search input:focus {
    box-shadow: 0 0 0 4px rgba(183, 155, 74, 0.30);
}

.sdz-hero-search button {
    padding: var(--sdz-spacing-3) var(--sdz-spacing-6);
    border: none;
    border-radius: var(--sdz-radius-full);
    background: var(--sdz-text);
    color: var(--sdz-text-inverse);
    font-weight: 700;
    cursor: pointer;
    transition: all var(--sdz-transition);
}

.sdz-hero-search button:hover {
    background: #000;
    transform: scale(1.02);
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.20);
}

.sdz-stats-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
    gap: var(--sdz-spacing-5);
    margin-bottom: var(--sdz-spacing-12);
}

.sdz-stat-card {
    background: var(--sdz-surface);
    border: 1px solid var(--sdz-border);
    border-radius: var(--sdz-radius-lg);
    padding: var(--sdz-spacing-6) var(--sdz-spacing-4);
    text-align: center;
    transition: all var(--sdz-transition);
    box-shadow: var(--sdz-shadow-sm);
}

.sdz-stat-card:hover {
    transform: translateY(-6px);
    border-color: var(--sdz-primary);
    box-shadow: var(--sdz-shadow-lg);
}

.sdz-stat-icon {
    font-size: 1.8rem;
    display: block;
    margin-bottom: var(--sdz-spacing-2);
    color: var(--sdz-primary);
}

.sdz-stat-number {
    font-size: 2.2rem;
    font-weight: 900;
    color: var(--sdz-text);
    line-height: 1.2;
}

.sdz-stat-label {
    font-size: 0.85rem;
    color: var(--sdz-text-muted);
    margin-top: var(--sdz-spacing-1);
}

/* =========================================================
   14. Pagination (الترقيم - محسن)
========================================================= */
.sdz-pagination {
    margin-top: var(--sdz-spacing-10);
    text-align: center;
}

.sdz-pagination ul {
    display: flex;
    flex-wrap: wrap;
    gap: var(--sdz-spacing-1);
    justify-content: center;
    list-style: none;
    padding: 0;
}

.sdz-pagination a,
.sdz-pagination span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 40px;
    height: 40px;
    padding: 0 var(--sdz-spacing-3);
    border: 1px solid var(--sdz-border);
    border-radius: var(--sdz-radius-sm);
    background: var(--sdz-surface);
    color: var(--sdz-text-muted);
    transition: all var(--sdz-transition);
    box-shadow: var(--sdz-shadow-xs);
    font-weight: 500;
}

.sdz-pagination a:hover {
    border-color: var(--sdz-primary);
    color: var(--sdz-primary);
    transform: translateY(-2px);
    box-shadow: var(--sdz-shadow-md);
    z-index: 1;
}

.sdz-pagination .current {
    background: var(--sdz-primary);
    border-color: var(--sdz-primary);
    color: var(--sdz-text-inverse);
    box-shadow: var(--sdz-shadow-primary);
}

/* =========================================================
   15. Empty States (حالات عدم وجود نتائج - محسنة)
========================================================= */
.sdz-no-results {
    text-align: center;
    padding: var(--sdz-spacing-12) var(--sdz-spacing-6);
    background: var(--sdz-surface);
    border: 2px dashed var(--sdz-border);
    border-radius: var(--sdz-radius-lg);
    grid-column: 1 / -1;
    box-shadow: var(--sdz-shadow-sm);
}

.sdz-empty-icon {
    width: 72px;
    height: 72px;
    display: grid;
    place-items: center;
    margin: 0 auto var(--sdz-spacing-4);
    border-radius: 50%;
    background: var(--sdz-primary-light);
    color: var(--sdz-primary);
    font-size: 2rem;
}

.sdz-no-results h2 {
    margin: 0 0 var(--sdz-spacing-2);
    color: var(--sdz-text);
    font-size: 1.4rem;
}

.sdz-no-results p {
    color: var(--sdz-text-muted);
    margin: 0 0 var(--sdz-spacing-5);
    max-width: 500px;
    margin-inline: auto;
}

.sdz-reset-button {
    display: inline-flex;
    align-items: center;
    gap: var(--sdz-spacing-2);
    padding: var(--sdz-spacing-3) var(--sdz-spacing-6);
    background: var(--sdz-primary);
    color: var(--sdz-text-inverse);
    border-radius: var(--sdz-radius-md);
    font-weight: 700;
    transition: all var(--sdz-transition);
    text-decoration: none;
    box-shadow: var(--sdz-shadow-primary);
}

.sdz-reset-button:hover {
    background: var(--sdz-primary-dark);
    transform: translateY(-2px);
    box-shadow: var(--sdz-shadow-primary-hover);
    color: var(--sdz-text-inverse);
}

/* =========================================================
   16. Responsive (التجاوب - محسن)
========================================================= */
@media (max-width: 1024px) {
    .sdz-procedure-layout {
        gap: var(--sdz-spacing-6);
    }
}

@media (max-width: 900px) {
    .sdz-procedure-layout {
        grid-template-columns: 1fr;
    }
    .sdz-widget {
        position: static;
    }
    .sdz-sidebar {
        margin-top: var(--sdz-spacing-8);
    }
}

@media (max-width: 768px) {
    .sdz-home-wrapper,
    .sdz-archive-wrapper,
    .sdz-single-wrapper,
    .sdz-procedure-page {
        padding: var(--sdz-spacing-5) var(--sdz-spacing-4);
    }
    
    .sdz-archive-container,
    .sdz-home-container {
        width: min(100% - 16px, var(--sdz-container));
    }
    
    .sdz-hero {
        padding: var(--sdz-spacing-10) var(--sdz-spacing-5);
    }
    
    .sdz-hero h1 {
        font-size: 2rem;
    }
    
    .sdz-hero p {
        font-size: 1rem;
    }
    
    .sdz-stats-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .sdz-procedure-grid {
        grid-template-columns: 1fr;
    }
    
    .sdz-card-content h2 {
        font-size: 1.1rem;
    }
    
    .sdz-main-content {
        padding: var(--sdz-spacing-5);
    }
    
    .sdz-widget {
        padding: var(--sdz-spacing-4);
    }
}

@media (max-width: 640px) {
    .sdz-archive-search {
        flex-direction: column;
    }
    
    .sdz-search-button {
        width: 100%;
        min-height: 48px;
    }
    
    .sdz-procedure-layout {
        width: min(100% - 16px, var(--sdz-container));
        margin-block: var(--sdz-spacing-5);
    }
    
    .sdz-main-content {
        padding: var(--sdz-spacing-4);
    }
    
    .sdz-stats-grid {
        grid-template-columns: 1fr;
    }
    
    .sdz-home-grid {
        grid-template-columns: 1fr;
    }
    
    .sdz-home-btn {
        width: 100%;
        justify-content: center;
    }
}

@media (max-width: 480px) {
    .sdz-hero h1 {
        font-size: 1.6rem;
    }
    
    .sdz-card-meta span {
        font-size: 0.7rem;
        padding: var(--sdz-spacing-1) var(--sdz-spacing-2);
    }
    
    .sdz-breadcrumbs {
        font-size: 0.8rem;
        flex-wrap: wrap;
    }
    
    .sdz-procedure-card {
        padding: var(--sdz-spacing-4);
    }
    
    .sdz-card-icon {
        width: 36px;
        height: 36px;
        font-size: 1rem;
    }
    
    .sdz-hero-search {
        flex-direction: column;
        background: transparent;
        padding: 0;
        border-radius: 0;
    }
    
    .sdz-hero-search input {
        border-radius: var(--sdz-radius-md);
    }
    
    .sdz-hero-search button {
        border-radius: var(--sdz-radius-md);
        width: 100%;
        justify-content: center;
    }
}

/* =========================================================
   24. Mobile-First Enhancements (تحسينات الهواتف)
========================================================= */

/* تحسين الأزرار للهواتف */
@media (max-width: 768px) {
    .sdz-btn {
        min-height: 48px;
        padding: var(--sdz-spacing-3) var(--sdz-spacing-4);
        font-size: 1rem;
        border-radius: var(--sdz-radius-md);
    }

    /* تحسين حقول الإدخال */
    .sdz-search-field input,
    .sdz-archive-sidebar select,
    .sdz-archive-sidebar input[type="search"] {
        min-height: 48px;
        font-size: 1rem;
        padding: var(--sdz-spacing-3) var(--sdz-spacing-4);
    }

    /* تحسين البطاقات */
    .sdz-procedure-card {
        padding: var(--sdz-spacing-4);
        border-radius: var(--sdz-radius-md);
    }

    .sdz-card-content h2 {
        font-size: 1.1rem;
    }

    /* تحسين شريط التنقل الثابت */
    .sdz-sticky-nav {
        padding: var(--sdz-spacing-2) var(--sdz-spacing-3) !important;
        gap: var(--sdz-spacing-2) !important;
    }

    .sdz-sticky-nav button {
        min-height: 48px;
        font-size: 0.9rem !important;
        padding: var(--sdz-spacing-2) var(--sdz-spacing-3) !important;
        border-radius: var(--sdz-radius-md);
    }

    /* تحسين عرض الفلاتر */
    .sdz-archive-sidebar {
        position: relative !important;
        top: 0 !important;
        margin-bottom: var(--sdz-spacing-4);
        padding: var(--sdz-spacing-4) !important;
    }

    .sdz-archive-container {
        grid-template-columns: 1fr !important;
        gap: var(--sdz-spacing-4) !important;
    }

    /* تحسين الـ Stepped Flow */
    .sdz-procedure-steps {
        border-radius: var(--sdz-radius-md);
    }

    .sdz-steps-container {
        padding: var(--sdz-spacing-4) !important;
    }

    .sdz-step-dot {
        height: 4px !important;
    }

    .sdz-step-label-text {
        font-size: 0.65rem !important;
    }

    /* تحسين Next Step CTA */
    .sdz-cta-box {
        padding: var(--sdz-spacing-4) !important;
    }

    .sdz-cta-box h2 {
        font-size: 1.2rem !important;
    }

    .sdz-cta-box p {
        font-size: 0.9rem !important;
    }
}

/* تحسينات إضافية للشاشات الصغيرة جداً */
@media (max-width: 480px) {
    .sdz-btn {
        min-height: 44px;
        font-size: 0.9rem;
        padding: var(--sdz-spacing-2) var(--sdz-spacing-3);
    }

    .sdz-search-field input,
    .sdz-archive-sidebar select,
    .sdz-archive-sidebar input[type="search"] {
        min-height: 44px;
        font-size: 0.9rem;
        padding: var(--sdz-spacing-2) var(--sdz-spacing-3);
    }

    .sdz-hero {
        padding: var(--sdz-spacing-6) var(--sdz-spacing-4);
        border-radius: var(--sdz-radius-md);
    }

    .sdz-hero h1 {
        font-size: 1.6rem;
    }

    .sdz-hero p {
        font-size: 0.9rem;
    }

    .sdz-stat-number {
        font-size: 1.6rem;
    }

    .sdz-stat-label {
        font-size: 0.75rem;
    }

    .sdz-stats-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: var(--sdz-spacing-2);
    }

    .sdz-stat-card {
        padding: var(--sdz-spacing-3);
    }

    .sdz-procedure-grid {
        gap: var(--sdz-spacing-3);
    }

    .sdz-procedure-card {
        padding: var(--sdz-spacing-3);
    }

    .sdz-card-icon {
        width: 32px;
        height: 32px;
        font-size: 0.9rem;
        margin-bottom: var(--sdz-spacing-2);
    }

    .sdz-card-meta span {
        font-size: 0.65rem;
        padding: var(--sdz-spacing-1) var(--sdz-spacing-2);
    }

    .sdz-card-action {
        width: 32px;
        height: 32px;
        bottom: var(--sdz-spacing-3);
        inset-inline-start: var(--sdz-spacing-3);
        font-size: 0.8rem;
    }

    .sdz-pagination a,
    .sdz-pagination span {
        min-width: 32px;
        height: 32px;
        font-size: 0.8rem;
    }
}

/* تحسينات للشاشات المتوسطة (تابلت) */
@media (min-width: 481px) and (max-width: 768px) {
    .sdz-procedure-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* =========================================================
   17. Reduced Motion (تخفيف الحركة)
========================================================= */
@media (prefers-reduced-motion: reduce) {
    .sdz-home-wrapper *,
    .sdz-archive-wrapper *,
    .sdz-single-wrapper *,
    .sdz-procedure-page *,
    .sdz-home-wrapper *::before,
    .sdz-archive-wrapper *::before,
    .sdz-single-wrapper *::before,
    .sdz-procedure-page *::before,
    .sdz-home-wrapper *::after,
    .sdz-archive-wrapper *::after,
    .sdz-single-wrapper *::after,
    .sdz-procedure-page *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
        scroll-behavior: auto !important;
    }
}

/* =========================================================
   18. FAQ Styles
========================================================= */
.sdz-faq-accordion .sdz-faq-item:last-child {
    margin-bottom: 0;
}

.sdz-faq-question:hover {
    background: var(--sdz-primary-light);
}

.sdz-faq-answer {
    transition: max-height 0.4s ease, padding 0.4s ease;
}

.sdz-faq-answer > div {
    padding: var(--sdz-spacing-3) 0;
}

.sdz-faq-answer p {
    margin: 0 0 var(--sdz-spacing-3);
}

.sdz-faq-answer p:last-child {
    margin: 0;
}

.sdz-faq-card {
    transition: all var(--sdz-transition);
}

.sdz-faq-card:hover {
    transform: translateY(-2px);
    box-shadow: var(--sdz-shadow-md);
}

/* =========================================================
   19. Letter Preview Styles
========================================================= */
.sdz-letter-preview {
    position: relative;
}

.sdz-letter-preview h3 {
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--sdz-text);
    display: flex;
    align-items: center;
    gap: var(--sdz-spacing-3);
    margin-top: 0;
}

.sdz-letter-preview h3 i {
    color: var(--sdz-primary);
}

.sdz-letter-preview .preview-content {
    white-space: pre-wrap;
    font-family: inherit;
    font-size: 0.95rem;
    line-height: 1.8;
    color: var(--sdz-text);
    padding: var(--sdz-spacing-3) 0;
}

/* =========================================================
   20. Letter Wizard Enhancements
========================================================= */
.sdz-template-btn.selected {
    border-color: var(--sdz-primary);
    background: var(--sdz-primary-light);
}

#sdz-letter-preview {
    border: 1px solid var(--sdz-border);
    border-radius: var(--sdz-radius-md);
    padding: var(--sdz-spacing-5);
    background: var(--sdz-surface);
    direction: rtl;
    text-align: right;
    font-family: var(--sdz-font-family);
    font-size: 0.95rem;
    line-height: 1.8;
    color: var(--sdz-text);
    min-height: 200px;
    white-space: pre-wrap;
    box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.02);
}

#sdz-letter-preview .letter-header {
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--sdz-primary);
    border-bottom: 1px solid var(--sdz-border);
    padding-bottom: var(--sdz-spacing-3);
    margin-bottom: var(--sdz-spacing-4);
}

#sdz-letter-preview .letter-footer {
    margin-top: var(--sdz-spacing-4);
    border-top: 1px solid var(--sdz-border);
    padding-top: var(--sdz-spacing-3);
    font-size: 0.85rem;
    color: var(--sdz-text-muted);
}

@media print {
    .sdz-letter-actions {
        display: none !important;
    }
    .sdz-breadcrumbs {
        display: none !important;
    }
    .sdz-procedure-actions {
        display: none !important;
    }
}

/* =========================================================
   21. Document Checklist (Interactive)
========================================================= */
.sdz-check-item:hover {
    border-color: var(--sdz-primary);
    background: var(--sdz-surface);
    transform: translateX(-4px);
    box-shadow: var(--sdz-shadow-sm);
}

.sdz-check-item input[type="checkbox"]:checked + label {
    color: var(--sdz-primary);
    text-decoration: line-through;
    opacity: 0.8;
}

.sdz-check-item input[type="checkbox"]:checked ~ .sdz-check-icon {
    color: var(--sdz-success);
    font-weight: 700;
}

#sdz-checklist-progress {
    background: linear-gradient(90deg, var(--sdz-primary), var(--sdz-secondary));
    transition: width 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}

/* =========================================================
   22. Screen Reader Text (نص مخصص لقارئ الشاشة)
========================================================= */
.sdz-screen-reader-text {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

/* =========================================================
   23. Utility Classes
========================================================= */
.sdz-text-center {
    text-align: center;
}

.sdz-mx-auto {
    margin-inline: auto;
}

.sdz-flex-center {
    display: flex;
    align-items: center;
    justify-content: center;
}
/* ========================================================================
   ServiceDZ — Unified taxonomy UI
   ======================================================================== */
.sdz-service-taxonomy-panel{width:min(1180px,calc(100% - 32px));margin:0 auto 24px;padding:16px 18px;border:1px solid var(--sdz-border,#e5e7eb);border-radius:18px;background:var(--sdz-surface,#fff);box-shadow:0 8px 28px rgba(15,23,42,.05);direction:rtl}
.sdz-service-taxonomy-row{display:flex;align-items:flex-start;gap:18px;padding:10px 0;border-bottom:1px solid var(--sdz-border-light,#eef1f5)}
.sdz-service-taxonomy-row:last-child{border-bottom:0}
.sdz-service-taxonomy-label{display:flex;align-items:center;gap:8px;min-width:125px;color:var(--sdz-text-muted,#64748b);font-size:12px;font-weight:800;padding-top:6px}
.sdz-service-taxonomy-label i{color:var(--sdz-primary,#0669ff);width:16px;text-align:center}
.sdz-service-taxonomy-values{display:flex;flex-wrap:wrap;gap:8px;min-width:0}
.sdz-service-taxonomy-chip,.sdz-service-keyword-tag{display:inline-flex;align-items:center;gap:5px;min-height:32px;padding:0 11px;border:1px solid #dfe7f1;border-radius:999px;background:#f8fafc;color:var(--sdz-text,#172033);font-size:12px;font-weight:750;text-decoration:none;transition:transform .18s ease,border-color .18s ease,background .18s ease,color .18s ease}
.sdz-service-taxonomy-chip:hover{transform:translateY(-1px);border-color:var(--sdz-primary,#0669ff);background:#eff6ff;color:var(--sdz-primary,#0669ff)}
.sdz-service-taxonomy-chip--category{background:#eef6ff;border-color:#cfe0ff;color:#075ec9}
.sdz-service-keyword-tags{gap:7px}
.sdz-service-keyword-tag{border-color:#e3e8ef;background:#fff;color:#475569}
.sdz-service-keyword-tag span{color:var(--sdz-primary,#0669ff);font-weight:900}
.sdz-service-keyword-tag:hover{border-color:#c7d7ee;background:#f8fbff;color:var(--sdz-primary,#0669ff);transform:translateY(-1px)}
.sdz-archive-taxonomy-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.sdz-archive-taxonomy-chip a{display:inline-flex;padding:5px 9px;border-radius:999px;background:#f1f6fc;color:#42617f;text-decoration:none;font-size:11px;font-weight:750}
.sdz-archive-taxonomy-chip a:hover{background:#e7f0fb;color:var(--sdz-primary,#0669ff)}
.sdz-procedure-card__taxonomy{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.sdz-procedure-card__taxonomy-chip{display:inline-flex;padding:5px 9px;border-radius:999px;background:#f1f6fc;color:#42617f;text-decoration:none;font-size:11px;font-weight:750}
.sdz-procedure-card__taxonomy-chip:hover{background:#e7f0fb;color:var(--sdz-primary,#0669ff)}

.sdz-taxonomy-archive{direction:rtl;color:var(--sdz-text,#172033)}
.sdz-taxonomy-archive__container{width:min(1240px,calc(100% - 32px));margin:auto;padding:28px 0 70px}
.sdz-taxonomy-archive__breadcrumbs{display:flex;flex-wrap:wrap;gap:9px;align-items:center;margin-bottom:18px;color:#718096;font-size:13px}
.sdz-taxonomy-archive__breadcrumbs a{text-decoration:none;color:inherit}
.sdz-taxonomy-archive__breadcrumbs a:hover{color:var(--sdz-primary,#0669ff)}
.sdz-taxonomy-archive__hero{padding:28px;border:1px solid var(--sdz-border,#e5e7eb);border-radius:22px;background:linear-gradient(135deg,#f8fbff,#fff 65%);box-shadow:0 10px 34px rgba(15,23,42,.05);margin-bottom:20px}
.sdz-taxonomy-archive__eyebrow{display:inline-flex;gap:7px;align-items:center;color:var(--sdz-primary,#0669ff);font-size:12px;font-weight:900;margin-bottom:8px}
.sdz-taxonomy-archive__hero h1{margin:0;font-size:clamp(25px,4vw,40px);line-height:1.2;font-weight:950}
.sdz-taxonomy-archive__hero p{max-width:760px;margin:10px 0 0;color:#64748b;line-height:1.8}
.sdz-taxonomy-archive__summary{display:inline-flex;gap:7px;align-items:center;margin-top:16px;padding:7px 11px;border-radius:999px;background:#f1f6fc;color:#52657a;font-size:12px;font-weight:800}
.sdz-taxonomy-archive__topics{padding:18px;border:1px solid #e5eaf1;border-radius:18px;background:#fff;margin-bottom:18px}
.sdz-taxonomy-archive__section-title{display:flex;gap:8px;align-items:center;font-size:14px;font-weight:900;margin-bottom:12px}
.sdz-taxonomy-archive__section-title i{color:var(--sdz-primary,#0669ff)}
.sdz-taxonomy-archive__chips{display:flex;flex-wrap:wrap;gap:8px}
.sdz-taxonomy-archive__search{padding:16px;border:1px solid #e5eaf1;border-radius:18px;background:#fff;margin-bottom:20px}
.sdz-taxonomy-archive__search label{display:block;font-size:12px;font-weight:850;margin-bottom:7px;color:#526174}
.sdz-taxonomy-archive__search>div{display:flex;gap:8px;align-items:center}
.sdz-taxonomy-archive__search input{flex:1;min-height:48px;border:1px solid #dfe5ed;border-radius:12px;padding:0 14px;background:#f9fbfd;outline:none}
.sdz-taxonomy-archive__search input:focus{border-color:var(--sdz-primary,#0669ff);box-shadow:0 0 0 4px rgba(6,105,255,.08)}
.sdz-taxonomy-archive__search button{min-height:48px;padding:0 18px;border:0;border-radius:12px;background:var(--sdz-primary,#0669ff);color:#fff;font-weight:800;cursor:pointer}
.sdz-taxonomy-archive__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.sdz-taxonomy-card{padding:18px;border:1px solid #e5eaf1;border-radius:18px;background:#fff;box-shadow:0 6px 24px rgba(15,23,42,.04);transition:transform .18s ease,box-shadow .18s ease}
.sdz-taxonomy-card:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(15,23,42,.08)}
.sdz-taxonomy-card__top{display:flex;justify-content:space-between;align-items:center;color:#7b8798;font-size:11px;font-weight:850;margin-bottom:9px}
.sdz-taxonomy-card h2{font-size:17px;line-height:1.45;margin:0}
.sdz-taxonomy-card h2 a{text-decoration:none;color:inherit}
.sdz-taxonomy-card h2 a:hover{color:var(--sdz-primary,#0669ff)}
.sdz-taxonomy-card p{color:#68778a;font-size:13px;line-height:1.75;margin:9px 0 0}
.sdz-taxonomy-card__chips,.sdz-taxonomy-card__keywords{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}
.sdz-taxonomy-card__chips a,.sdz-taxonomy-card__keywords a{font-size:10px;font-weight:800;text-decoration:none;border-radius:999px;padding:5px 8px;background:#f1f6fc;color:#45627f}
.sdz-taxonomy-card__keywords a{background:#fafafa;color:#64748b}
.sdz-taxonomy-card__keywords a:hover,.sdz-taxonomy-card__chips a:hover{color:var(--sdz-primary,#0669ff)}
.sdz-taxonomy-archive__empty{grid-column:1/-1;text-align:center;padding:55px 20px;border:1px dashed #dbe2ea;border-radius:18px;color:#64748b}
.sdz-taxonomy-archive__empty i{font-size:32px;color:#94a3b8;margin-bottom:10px}
.sdz-taxonomy-archive__empty h2{margin:0 0 7px;color:#334155}
.sdz-taxonomy-archive__empty p{margin:0}
.sdz-taxonomy-archive__pagination{margin-top:28px}

@media (max-width:900px){.sdz-taxonomy-archive__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sdz-service-taxonomy-row{flex-direction:column;gap:8px}.sdz-service-taxonomy-label{padding-top:0}}
@media (max-width:600px){.sdz-service-taxonomy-panel{width:calc(100% - 20px);padding:13px;margin-bottom:16px}.sdz-taxonomy-archive__container{width:calc(100% - 20px);padding-top:18px}.sdz-taxonomy-archive__hero{padding:20px}.sdz-taxonomy-archive__grid{grid-template-columns:1fr}.sdz-taxonomy-archive__search>div{flex-direction:column}.sdz-taxonomy-archive__search input,.sdz-taxonomy-archive__search button{width:100%}}

/* ============================================================
   ServiceDZ — Unified Taxonomy & Keyword Landing Pages
   ============================================================ */
.sdz-taxonomy-page{--tx-primary:#087443;--tx-dark:#063d27;--tx-gold:#d8a52a;--tx-soft:#edf7f2;--tx-bg:#f6f9f7;--tx-line:#e0e9e4;--tx-text:#13241b;--tx-muted:#68766f;direction:rtl;background:var(--tx-bg);min-height:100vh;padding:26px 0 80px;color:var(--tx-text)}
.sdz-taxonomy-shell{width:min(1220px,calc(100% - 32px));margin:auto}
.sdz-taxonomy-breadcrumbs{display:flex;align-items:center;gap:9px;flex-wrap:wrap;color:#7b8982;font-size:12px;margin:0 0 18px}.sdz-taxonomy-breadcrumbs a{color:#718079;text-decoration:none}.sdz-taxonomy-breadcrumbs a:hover{color:var(--tx-primary)}.sdz-taxonomy-breadcrumbs strong{color:var(--tx-text);font-weight:900;max-width:65vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sdz-taxonomy-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) 190px;gap:20px;align-items:center;padding:38px 42px;border-radius:30px;background:linear-gradient(135deg,#063d27 0%,#087443 58%,#0a8751 100%);box-shadow:0 24px 70px rgba(4,75,43,.18);color:#fff;margin-bottom:22px;isolation:isolate}.sdz-taxonomy-hero:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 12% 25%,rgba(255,255,255,.12),transparent 24%),radial-gradient(circle at 78% 110%,rgba(232,173,36,.18),transparent 30%);z-index:-1}.sdz-taxonomy-hero__glow{position:absolute;width:310px;height:310px;border-radius:50%;left:-120px;bottom:-180px;border:1px solid rgba(255,255,255,.08);box-shadow:0 0 0 50px rgba(255,255,255,.025),0 0 0 100px rgba(255,255,255,.018)}.sdz-taxonomy-hero__content{min-width:0}.sdz-taxonomy-eyebrow{display:inline-flex;align-items:center;gap:9px;font-size:11px;font-weight:900;color:#dff4e9}.sdz-taxonomy-eyebrow__icon{width:34px;height:34px;display:grid;place-items:center;border-radius:11px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.14)}.sdz-taxonomy-hero h1{margin:14px 0 8px;color:#fff;font-size:clamp(29px,4vw,47px);line-height:1.2;font-weight:950;letter-spacing:-.7px}.sdz-taxonomy-hero p{max-width:780px;margin:0;color:rgba(255,255,255,.78);font-size:14px;line-height:1.9}.sdz-taxonomy-hero__stats{display:flex;flex-wrap:wrap;gap:9px;margin-top:22px}.sdz-taxonomy-hero__stats>div{min-width:125px;padding:11px 15px;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:rgba(255,255,255,.08);backdrop-filter:blur(8px)}.sdz-taxonomy-hero__stats strong{display:block;font-size:19px;line-height:1.2;color:#fff}.sdz-taxonomy-hero__stats span{display:block;margin-top:3px;font-size:10px;color:rgba(255,255,255,.67);font-weight:800}.sdz-taxonomy-hero__mark{width:150px;height:150px;margin-inline:auto;display:grid;place-items:center;border-radius:44px;transform:rotate(5deg);background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);box-shadow:inset 0 0 0 14px rgba(255,255,255,.025)}.sdz-taxonomy-hero__mark i{font-size:55px;color:#f4d27a;transform:rotate(-5deg);text-shadow:0 8px 30px rgba(0,0,0,.18)}
.sdz-taxonomy-discovery,.sdz-taxonomy-results,.sdz-taxonomy-side-card,.sdz-keyword-discovery{background:#fff;border:1px solid var(--tx-line);border-radius:22px;box-shadow:0 9px 30px rgba(10,55,35,.045)}.sdz-taxonomy-discovery{padding:23px;margin-bottom:18px}.sdz-taxonomy-section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:17px}.sdz-taxonomy-kicker{display:block;color:var(--tx-primary);font-size:11px;font-weight:950;margin-bottom:3px}.sdz-taxonomy-section-head h2,.sdz-taxonomy-results-head h2{margin:0;color:var(--tx-text);font-size:20px;font-weight:950;line-height:1.4}.sdz-taxonomy-section-head p{margin:5px 0 0;color:var(--tx-muted);font-size:12px}.sdz-taxonomy-section-count,.sdz-taxonomy-results-count{display:inline-flex;align-items:center;min-height:30px;padding:0 10px;border-radius:999px;background:var(--tx-soft);color:var(--tx-primary);font-size:10px;font-weight:900;white-space:nowrap}
.sdz-topic-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.sdz-topic-card{position:relative;min-height:92px;padding:15px;border:1px solid #e4ece7;border-radius:16px;background:#fbfdfc;text-decoration:none;transition:.2s ease;overflow:hidden}.sdz-topic-card:after{content:"";position:absolute;left:-28px;bottom:-30px;width:85px;height:85px;border-radius:50%;background:#edf7f2}.sdz-topic-card:hover{transform:translateY(-3px);border-color:#b9d8c7;box-shadow:0 12px 28px rgba(10,75,45,.08)}.sdz-topic-card strong,.sdz-topic-card>span:last-child{position:relative;z-index:1;display:block}.sdz-topic-card strong{font-size:13px;color:var(--tx-text);line-height:1.45;padding-left:30px}.sdz-topic-card>span:last-child{margin-top:6px;color:#7b8982;font-size:10px;font-weight:800}.sdz-topic-card__icon{position:absolute;left:12px;top:12px;width:27px;height:27px;border-radius:9px;background:#fff;color:var(--tx-primary);display:grid;place-items:center;font-size:10px;z-index:2}
.sdz-type-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.sdz-type-card{display:flex;align-items:center;gap:10px;min-width:0;padding:13px;border:1px solid #e5ece8;border-radius:15px;background:#fff;text-decoration:none;transition:.18s ease}.sdz-type-card:hover{border-color:#bad7c7;background:#f8fcfa;transform:translateY(-2px)}.sdz-type-card__icon{width:38px;height:38px;flex:0 0 38px;border-radius:11px;background:var(--tx-soft);color:var(--tx-primary);display:grid;place-items:center}.sdz-type-card__body{min-width:0;flex:1}.sdz-type-card__body strong,.sdz-type-card__body small{display:block}.sdz-type-card__body strong{font-size:11px;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sdz-type-card__body small{margin-top:2px;color:#87928d;font-size:9px}.sdz-type-card__arrow{color:#a2ada7;font-size:9px;transition:.18s}.sdz-type-card:hover .sdz-type-card__arrow{color:var(--tx-primary);transform:translateX(-3px)}
.sdz-taxonomy-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:18px;align-items:start}.sdz-taxonomy-main{min-width:0}.sdz-taxonomy-results{padding:22px}.sdz-taxonomy-results-head{display:flex;justify-content:space-between;align-items:flex-end;gap:15px;margin-bottom:16px}.sdz-taxonomy-search{display:flex;gap:8px;margin-bottom:18px}.sdz-taxonomy-search__field{position:relative;display:flex;align-items:center;flex:1;min-width:0}.sdz-taxonomy-search__field>i{position:absolute;right:15px;color:var(--tx-primary);font-size:13px}.sdz-taxonomy-search__field input{width:100%;height:48px;border:1px solid #dfe8e3;border-radius:13px;background:#f9fcfa;padding:0 42px 0 38px;color:var(--tx-text);outline:none;font-size:12px}.sdz-taxonomy-search__field input:focus{border-color:#82b89c;box-shadow:0 0 0 4px rgba(8,116,67,.07);background:#fff}.sdz-taxonomy-search__field>a{position:absolute;left:12px;color:#8b9791;text-decoration:none}.sdz-taxonomy-search>button{height:48px;padding:0 18px;border:0;border-radius:13px;background:var(--tx-primary);color:#fff;font-weight:900;font-size:11px;cursor:pointer}.sdz-taxonomy-search>button:hover{background:#04512f}
.sdz-taxonomy-result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.sdz-result-card{position:relative;padding:17px;border:1px solid #e5ece8;border-radius:17px;background:#fff;transition:.2s ease;overflow:hidden}.sdz-result-card:before{content:"";position:absolute;right:0;top:0;bottom:0;width:3px;background:var(--tx-primary);transform:scaleY(0);transform-origin:center;transition:.2s}.sdz-result-card:hover{border-color:#c7ded1;box-shadow:0 12px 28px rgba(10,55,35,.07);transform:translateY(-2px)}.sdz-result-card:hover:before{transform:scaleY(1)}.sdz-result-card__top{display:flex;justify-content:space-between;gap:8px;align-items:center;margin-bottom:9px}.sdz-result-type{display:inline-flex;align-items:center;gap:5px;color:var(--tx-primary);font-size:9px;font-weight:900}.sdz-result-date{color:#97a19d;font-size:9px}.sdz-result-card h3{margin:0;font-size:15px;line-height:1.5;font-weight:900}.sdz-result-card h3 a{color:var(--tx-text);text-decoration:none}.sdz-result-card h3 a:hover{color:var(--tx-primary)}.sdz-result-card>p{margin:7px 0 0;color:#718079;font-size:11px;line-height:1.8}.sdz-result-card__meta,.sdz-result-keywords{display:flex;flex-wrap:wrap;gap:5px;margin-top:11px}.sdz-mini-chip{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border-radius:999px;background:#f4f8f6;color:#5c6d65;font-size:9px;font-weight:850;text-decoration:none}.sdz-mini-chip--category{background:#edf7f2;color:var(--tx-primary)}.sdz-mini-chip:hover{background:var(--tx-primary);color:#fff}.sdz-result-keywords a{padding:4px 7px;border-radius:999px;background:#faf7ef;color:#8a7030;font-size:9px;font-weight:800;text-decoration:none}.sdz-result-keywords a:hover{background:#f1dfac;color:#5d4716}.sdz-result-card__more{display:flex;justify-content:flex-end;align-items:center;gap:6px;margin-top:13px;color:var(--tx-primary);font-size:10px;font-weight:900;text-decoration:none}.sdz-result-card__more i{font-size:9px;transition:.18s}.sdz-result-card__more:hover i{transform:translateX(-3px)}
.sdz-taxonomy-sidebar{display:grid;gap:14px;position:sticky;top:18px}.sdz-taxonomy-side-card{padding:18px}.sdz-taxonomy-side-head{display:flex;align-items:center;gap:9px;margin-bottom:13px}.sdz-taxonomy-side-head>i{width:31px;height:31px;border-radius:10px;background:var(--tx-soft);color:var(--tx-primary);display:grid;place-items:center;font-size:11px}.sdz-taxonomy-side-head h2{margin:0;font-size:14px;font-weight:950}.sdz-side-links{display:grid;gap:4px}.sdz-side-links a{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 8px;border-radius:10px;color:#41534a;text-decoration:none;font-size:11px;font-weight:800}.sdz-side-links a:hover{background:var(--tx-soft);color:var(--tx-primary)}.sdz-side-links small{min-width:25px;text-align:center;color:#8a9690;font-size:9px}.sdz-taxonomy-side-card--finder{background:linear-gradient(145deg,#063d27,#087443);border-color:transparent;color:#fff}.sdz-taxonomy-side-card--finder .sdz-taxonomy-side-head>i{background:rgba(255,255,255,.12);color:#f4d27a}.sdz-taxonomy-side-card--finder .sdz-taxonomy-side-head h2{color:#fff}.sdz-taxonomy-side-card--finder>p{margin:0 0 12px;color:rgba(255,255,255,.72);font-size:10px;line-height:1.8}.sdz-side-category-list{display:grid;gap:3px}.sdz-side-category-list a{display:flex;align-items:center;gap:8px;padding:7px 8px;border-radius:9px;color:#fff;text-decoration:none;font-size:10px;font-weight:750}.sdz-side-category-list a:hover{background:rgba(255,255,255,.09)}.sdz-side-category-list i{font-size:8px;color:#f4d27a}.sdz-keyword-cloud{display:flex;flex-wrap:wrap;gap:6px}.sdz-keyword-cloud a{display:inline-flex;align-items:center;gap:2px;padding:6px 9px;border:1px solid #eadfbd;border-radius:999px;background:#fcfaf4;color:#725d28;font-size:9px;font-weight:850;text-decoration:none;transition:.18s}.sdz-keyword-cloud a:hover{background:#f2e5bd;border-color:#ddc77f;color:#4e3c12;transform:translateY(-1px)}.sdz-keyword-discovery{padding:24px;margin-top:18px}.sdz-keyword-cloud--large{gap:8px}.sdz-keyword-cloud--large a{padding:8px 11px;font-size:11px;background:#fffdf7}.sdz-keyword-cloud--large a span{color:#b18a2b}.sdz-keyword-cloud--large a small{min-width:20px;margin-right:4px;padding:2px 5px;border-radius:99px;background:#f3e9cc;color:#806a31;font-size:8px;text-align:center}
.sdz-taxonomy-empty{padding:58px 20px;border:1px dashed #cfdcd4;border-radius:17px;text-align:center;background:#fbfdfc}.sdz-taxonomy-empty>span{width:54px;height:54px;display:grid;place-items:center;margin:0 auto 10px;border-radius:16px;background:var(--tx-soft);color:var(--tx-primary);font-size:18px}.sdz-taxonomy-empty h3{margin:0;color:var(--tx-text);font-size:17px}.sdz-taxonomy-empty p{margin:6px 0 14px;color:#78857f;font-size:11px}.sdz-taxonomy-empty a{display:inline-flex;min-height:38px;align-items:center;padding:0 14px;border-radius:10px;background:var(--tx-primary);color:#fff;text-decoration:none;font-size:10px;font-weight:900}.sdz-taxonomy-pagination{margin-top:22px}.sdz-taxonomy-pagination ul{display:flex;justify-content:center;align-items:center;gap:5px;list-style:none;padding:0;margin:0}.sdz-taxonomy-pagination a,.sdz-taxonomy-pagination span{min-width:35px;height:35px;display:grid;place-items:center;border:1px solid #e0e8e3;border-radius:10px;background:#fff;color:#617069;text-decoration:none;font-size:10px;font-weight:850}.sdz-taxonomy-pagination .current{background:var(--tx-primary);border-color:var(--tx-primary);color:#fff}.sdz-taxonomy-pagination a:hover{border-color:#b8d7c6;color:var(--tx-primary);background:var(--tx-soft)}
.sdz-taxonomy-page--keyword .sdz-taxonomy-hero{background:linear-gradient(135deg,#26361e 0%,#087443 56%,#5b551b 100%)}.sdz-taxonomy-page--keyword .sdz-taxonomy-hero__mark{border-radius:50%;transform:rotate(-8deg)}.sdz-taxonomy-page--keyword .sdz-taxonomy-hero__mark i{font-size:58px;transform:rotate(8deg)}
@media(max-width:1000px){.sdz-taxonomy-hero{grid-template-columns:minmax(0,1fr) 130px;padding:30px}.sdz-taxonomy-hero__mark{width:110px;height:110px}.sdz-taxonomy-layout{grid-template-columns:minmax(0,1fr) 260px}.sdz-topic-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.sdz-type-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){.sdz-taxonomy-layout{grid-template-columns:1fr}.sdz-taxonomy-sidebar{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}.sdz-taxonomy-side-card--finder{grid-column:1/-1}.sdz-taxonomy-result-grid{grid-template-columns:1fr}.sdz-topic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.sdz-taxonomy-page{padding-top:15px}.sdz-taxonomy-shell{width:calc(100% - 20px)}.sdz-taxonomy-hero{grid-template-columns:1fr;padding:23px 20px;border-radius:22px}.sdz-taxonomy-hero__mark{display:none}.sdz-taxonomy-hero h1{font-size:29px}.sdz-taxonomy-hero p{font-size:12px}.sdz-taxonomy-hero__stats>div{flex:1;min-width:0}.sdz-taxonomy-hero__stats strong{font-size:16px}.sdz-taxonomy-hero__stats span{font-size:8px}.sdz-taxonomy-discovery,.sdz-taxonomy-results,.sdz-taxonomy-side-card,.sdz-keyword-discovery{padding:16px;border-radius:18px}.sdz-taxonomy-section-head,.sdz-taxonomy-results-head{display:block}.sdz-taxonomy-section-count,.sdz-taxonomy-results-count{margin-top:8px}.sdz-topic-grid,.sdz-type-grid,.sdz-taxonomy-sidebar{grid-template-columns:1fr}.sdz-taxonomy-search{display:block}.sdz-taxonomy-search>button{width:100%;margin-top:7px}.sdz-taxonomy-result-grid{gap:9px}.sdz-result-card{padding:14px}.sdz-taxonomy-breadcrumbs{font-size:10px}.sdz-taxonomy-side-card--finder{grid-column:auto}}


/* ServiceDZ — unified wpDiscuz placement on CPT singles */
.sdz-cpt-comments {
	width: min(1120px, calc(100% - 32px));
	margin: 28px auto 48px;
	clear: both;
}
.sdz-cpt-comments-fallback {
	padding-top: 8px;
}
.sdz-cpt-comments .wpd-thread-head,
.sdz-cpt-comments .wpd-form-wrap,
.sdz-cpt-comments .wpd-thread-list {
	max-width: 100%;
}
@media (max-width: 640px) {
	.sdz-cpt-comments {
		width: min(100% - 20px, 1120px);
		margin-top: 20px;
		margin-bottom: 32px;
	}
}
