:root {
            --white: #FFFFFF;
            --cream-50: #FFFBF6;
            --gray-50: #F9FAFB;
            --gray-100: #F3F4F6;
            --gray-200: #E5E7EB;
            --gray-300: #D1D5DB;
            --gray-400: #9CA3AF;
            --gray-500: #6B7280;
            --gray-600: #4B5563;
            --gray-700: #374151;
            --gray-800: #1F2937;
            --gray-900: #111827;
            --gray-950: #0a0d12;

            --bronze-900: #312E81;
            --bronze-800: #3730A3;
            --bronze-700: #4F46E5;
            --bronze-600: #6366F1;
            --bronze-500: #818CF8;
            --bronze-400: #A5B4FC;
            --bronze-300: #C7D2FE;
            --bronze-200: #E0E7FF;
            --bronze-100: #EEF2FF;

            --emerald: #10B981;
            --blue: #3B82F6;
            --violet: #8B5CF6;
            --cyan: #06B6D4;
            --orange: #F97316;
            --red: #EF4444;

            --font-sans: 'DM Sans', -apple-system, BlinkMacSystemFont, sans-serif;
            --font-serif: 'DM Serif Display', Georgia, serif;
        }

        * { box-sizing: border-box; margin: 0; padding: 0; }
        html { overflow-x: hidden; }

        body {
            font-family: var(--font-sans);
            background: var(--white);
            color: var(--gray-900);
            line-height: 1.6;
            -webkit-font-smoothing: antialiased;
            padding-top: 80px;
            overflow-x: hidden;
        }

        a { color: inherit; text-decoration: none; }
        .container { max-width: 1600px; margin: 0 auto; padding: 0 72px; }
        .container-narrow { max-width: 760px; margin: 0 auto; padding: 0 24px; }

        /* ─── BLOG HERO ─── */
        .blog-hero {
            padding: 60px 0 80px;
            background: linear-gradient(180deg, var(--cream-50) 0%, var(--white) 100%);
        }

        .blog-breadcrumb {
            display: flex; align-items: center; gap: 8px;
            font-size: 13px; color: var(--gray-500); margin-bottom: 24px;
        }
        .blog-breadcrumb a { color: var(--gray-500); transition: color 0.2s; }
        .blog-breadcrumb a:hover { color: var(--bronze-600); }
        .blog-breadcrumb svg { width: 14px; height: 14px; }

        .blog-category {
            display: inline-flex; align-items: center; gap: 6px;
            padding: 6px 14px;
            background: linear-gradient(135deg, rgba(99,102,241, 0.12), rgba(99,102,241, 0.06));
            border: 1px solid rgba(99,102,241, 0.25);
            border-radius: 100px;
            font-size: 12px; font-weight: 700;
            color: var(--bronze-600);
            text-transform: uppercase; letter-spacing: 0.05em;
            margin-bottom: 20px;
        }

        .blog-title {
            font-family: var(--font-serif);
            font-size: clamp(32px, 5vw, 48px);
            font-weight: 400; color: var(--gray-900);
            line-height: 1.15; margin-bottom: 24px; max-width: 900px;
        }

        .blog-excerpt {
            font-size: 19px; color: var(--gray-600);
            line-height: 1.7; max-width: 700px; margin-bottom: 32px;
        }

        .blog-meta {
            display: flex; align-items: center; gap: 24px; flex-wrap: wrap;
        }
        .blog-meta-item {
            display: flex; align-items: center; gap: 6px;
            font-size: 14px; color: var(--gray-500);
        }
        .blog-meta-item svg { width: 16px; height: 16px; }

        /* ─── FEATURED VIDEO ─── */
        .blog-featured-image {
            position: relative; margin: -40px auto 0;
            max-width: 1000px; padding: 0 24px;
        }
        .blog-featured-image-inner {
            position: relative; border-radius: 20px; overflow: hidden;
            box-shadow: 0 24px 64px rgba(0, 0, 0, 0.12);
            background: linear-gradient(135deg, #1a1f2e, #0f1318);
        }
        .arcade-wrapper { position: relative; border-radius: 20px; overflow: hidden; }
        .arcade-wrapper iframe { border-radius: 20px; }
        .video-label {
            display: inline-flex; align-items: center; gap: 8px;
            margin-top: 16px; font-size: 13px; color: var(--gray-500);
        }
        .video-label svg { width: 16px; height: 16px; color: var(--bronze-600); }

        /* ─── ARTICLE CONTENT ─── */
        .blog-content { padding: 80px 0; }

        .article-body {
            font-size: 17px; line-height: 1.8; color: var(--gray-700);
        }
        .article-body p { margin-bottom: 24px; }
        .article-body h2 {
            font-family: var(--font-serif);
            font-size: 32px; font-weight: 400; color: var(--gray-900);
            margin: 56px 0 24px; line-height: 1.3;
        }
        .article-body h3 {
            font-size: 22px; font-weight: 700; color: var(--gray-900);
            margin: 40px 0 16px;
        }
        .article-body h4 {
            font-size: 18px; font-weight: 700; color: var(--gray-800);
            margin: 32px 0 12px;
        }
        .article-body strong { color: var(--gray-900); }
        .article-body a { color: var(--bronze-600); text-decoration: underline; text-underline-offset: 2px; }
        .article-body a:hover { color: var(--bronze-700); }
        .article-body ul, .article-body ol { margin: 24px 0; padding-left: 24px; }
        .article-body li { margin-bottom: 12px; }
        .article-body code {
            font-family: 'SF Mono', Monaco, monospace;
            font-size: 14px; background: var(--gray-100);
            color: var(--gray-800); padding: 2px 6px;
            border-radius: 4px;
        }

        /* ─── TABLE OF CONTENTS ─── */
        .toc {
            background: var(--gray-50);
            border: 1px solid var(--gray-200);
            border-radius: 16px;
            padding: 28px 32px;
            margin: 0 0 48px;
        }
        .toc-title {
            font-size: 13px; font-weight: 700; color: var(--gray-500);
            text-transform: uppercase; letter-spacing: 0.08em; margin-bottom: 16px;
        }
        .toc-list { list-style: none; padding: 0; margin: 0; }
        .toc-list li { margin-bottom: 10px; }
        .toc-list a {
            font-size: 14px; color: var(--gray-600);
            text-decoration: none; transition: color 0.2s;
            display: flex; align-items: center; gap: 10px;
        }
        .toc-list a::before {
            content: ''; width: 6px; height: 6px;
            border: 1.5px solid var(--bronze-500);
            border-radius: 50%; flex-shrink: 0; transition: all 0.2s;
        }
        .toc-list a:hover { color: var(--bronze-600); }
        .toc-list a:hover::before { background: var(--bronze-500); border-color: var(--bronze-500); }

        /* ─── STEP CARDS ─── */
        .step-card {
            background: var(--white);
            border: 1px solid var(--gray-200);
            border-radius: 16px;
            padding: 28px 32px;
            margin: 24px 0;
            position: relative;
            transition: all 0.3s;
        }
        .step-card:hover {
            border-color: var(--gray-300);
            box-shadow: 0 8px 24px rgba(0,0,0,0.06);
        }
        .step-card::before {
            content: attr(data-step);
            position: absolute; top: -14px; left: 28px;
            background: linear-gradient(135deg, var(--bronze-500), var(--bronze-700));
            color: white; font-size: 12px; font-weight: 700;
            padding: 4px 14px; border-radius: 20px;
            letter-spacing: 0.5px;
        }
        .step-card h4 { font-size: 17px; font-weight: 700; color: var(--gray-900); margin-bottom: 10px; }
        .step-card p { font-size: 15px; color: var(--gray-600); line-height: 1.7; margin: 0; }

        /* ─── CALLOUT BOXES ─── */
        .callout {
            border-radius: 16px; padding: 28px 32px; margin: 40px 0;
        }
        .callout.tip {
            background: linear-gradient(135deg, rgba(16, 185, 129, 0.08), rgba(16, 185, 129, 0.04));
            border: 1px solid rgba(16, 185, 129, 0.2);
        }
        .callout.warning {
            background: linear-gradient(135deg, rgba(245, 158, 11, 0.08), rgba(245, 158, 11, 0.04));
            border: 1px solid rgba(245, 158, 11, 0.2);
        }
        .callout.info {
            background: linear-gradient(135deg, rgba(59, 130, 246, 0.08), rgba(59, 130, 246, 0.04));
            border: 1px solid rgba(59, 130, 246, 0.2);
        }
        .callout.bronze {
            background: linear-gradient(135deg, rgba(99,102,241, 0.08), rgba(99,102,241, 0.04));
            border: 1px solid rgba(99,102,241, 0.2);
        }
        .callout-icon {
            width: 44px; height: 44px; border-radius: 12px;
            display: flex; align-items: center; justify-content: center;
            margin-bottom: 16px;
        }
        .callout.tip .callout-icon { background: linear-gradient(135deg, var(--emerald), #059669); }
        .callout.warning .callout-icon { background: linear-gradient(135deg, var(--orange), #D97706); }
        .callout.info .callout-icon { background: linear-gradient(135deg, var(--blue), #1D4ED8); }
        .callout.bronze .callout-icon { background: linear-gradient(135deg, var(--bronze-500), var(--bronze-700)); }
        .callout-icon svg { width: 22px; height: 22px; color: white; }
        .callout-title { font-size: 18px; font-weight: 700; color: var(--gray-900); margin-bottom: 8px; }
        .callout-text { font-size: 15px; color: var(--gray-600); line-height: 1.7; margin: 0; }

        /* ─── FIELDS TABLE ─── */
        .fields-table {
            width: 100%; border-collapse: collapse;
            margin: 24px 0; border-radius: 12px; overflow: hidden;
            border: 1px solid var(--gray-200);
        }
        .fields-table thead th {
            background: var(--gray-50);
            font-size: 12px; font-weight: 700; color: var(--gray-700);
            text-transform: uppercase; letter-spacing: 0.05em;
            padding: 14px 20px; text-align: left;
            border-bottom: 1px solid var(--gray-200);
        }
        .fields-table tbody td {
            padding: 14px 20px; font-size: 14px;
            border-bottom: 1px solid var(--gray-100);
            color: var(--gray-700);
        }
        .fields-table tbody tr:last-child td { border-bottom: none; }
        .fields-table tbody tr:hover { background: var(--gray-50); }
        .fields-table code {
            font-family: 'SF Mono', Monaco, monospace;
            font-size: 12px; background: var(--bronze-100);
            color: var(--bronze-700); padding: 2px 8px;
            border-radius: 4px;
        }

        /* ─── USE CASE CARDS ─── */
        .use-case-grid {
            display: grid;
            grid-template-columns: repeat(2, 1fr);
            gap: 20px;
            margin: 32px 0;
        }
        .use-case-card {
            background: var(--white);
            border: 1px solid var(--gray-200);
            border-radius: 16px;
            padding: 28px;
            transition: all 0.3s;
            position: relative;
            overflow: hidden;
        }
        .use-case-card::before {
            content: '';
            position: absolute; top: 0; left: 0; right: 0; height: 4px;
        }
        .use-case-card.healthcare::before { background: linear-gradient(90deg, var(--emerald), #34D399); }
        .use-case-card.automotive::before { background: linear-gradient(90deg, var(--bronze-500), var(--bronze-400)); }
        .use-case-card.realestate::before { background: linear-gradient(90deg, var(--blue), #60A5FA); }
        .use-case-card.ecommerce::before { background: linear-gradient(90deg, var(--violet), #A78BFA); }
        .use-case-card:hover {
            border-color: var(--gray-300);
            box-shadow: 0 12px 32px rgba(0,0,0,0.08);
            transform: translateY(-4px);
        }
        .use-case-icon {
            width: 52px; height: 52px; border-radius: 14px;
            display: flex; align-items: center; justify-content: center;
            margin-bottom: 20px;
        }
        .use-case-card.healthcare .use-case-icon { background: rgba(16, 185, 129, 0.12); color: var(--emerald); }
        .use-case-card.automotive .use-case-icon { background: rgba(99,102,241, 0.12); color: var(--bronze-600); }
        .use-case-card.realestate .use-case-icon { background: rgba(59, 130, 246, 0.12); color: var(--blue); }
        .use-case-card.ecommerce .use-case-icon { background: rgba(139, 92, 246, 0.12); color: var(--violet); }
        .use-case-icon svg { width: 26px; height: 26px; }
        .use-case-title { font-size: 18px; font-weight: 700; color: var(--gray-900); margin-bottom: 8px; }
        .use-case-desc { font-size: 14px; color: var(--gray-600); line-height: 1.6; margin-bottom: 16px; }
        .use-case-routing {
            background: var(--gray-50);
            border-radius: 10px;
            padding: 14px 16px;
            font-size: 13px;
            font-family: 'SF Mono', Monaco, monospace;
            color: var(--gray-700);
            border: 1px solid var(--gray-100);
        }
        .use-case-routing strong { color: var(--gray-900); font-family: var(--font-sans); }

        /* ─── ROUTING SCENARIO SECTION ─── */
        .routing-section {
            margin: 56px 0;
            padding: 48px;
            background: linear-gradient(135deg, var(--gray-50), var(--white));
            border: 1px solid var(--gray-100);
            border-radius: 24px;
        }
        .routing-header { text-align: center; margin-bottom: 40px; }
        .routing-title { font-size: 24px; font-weight: 700; color: var(--gray-900); margin-bottom: 8px; }
        .routing-subtitle { font-size: 15px; color: var(--gray-500); }

        .routing-scenario {
            background: var(--white);
            border: 1px solid var(--gray-200);
            border-radius: 16px;
            padding: 28px;
            margin-bottom: 20px;
        }
        .routing-scenario:last-child { margin-bottom: 0; }
        .routing-scenario-header {
            display: flex; align-items: center; gap: 16px; margin-bottom: 16px;
        }
        .routing-scenario-num {
            width: 36px; height: 36px;
            background: linear-gradient(135deg, var(--bronze-500), var(--bronze-700));
            border-radius: 10px;
            display: flex; align-items: center; justify-content: center;
            font-size: 14px; font-weight: 800; color: white;
        }
        .routing-scenario-title { font-size: 17px; font-weight: 700; color: var(--gray-900); }
        .routing-scenario-desc { font-size: 15px; color: var(--gray-600); line-height: 1.7; margin-bottom: 16px; }
        .routing-config {
            background: var(--gray-900);
            border-radius: 12px;
            padding: 20px;
            font-family: 'SF Mono', Monaco, monospace;
            font-size: 13px;
            color: var(--gray-300);
            overflow-x: auto;
            white-space: pre;
            line-height: 1.6;
        }
        .routing-config .comment { color: var(--gray-500); }
        .routing-config .key { color: var(--bronze-400); }
        .routing-config .value { color: var(--emerald); }
        .routing-config .string { color: #7DD3FC; }

        /* ─── ARTICLE FOOTER ─── */
        .article-footer {
            margin-top: 56px; padding-top: 40px;
            border-top: 1px solid var(--gray-200);
        }
        .article-tags {
            display: flex; align-items: center; gap: 10px;
            flex-wrap: wrap; margin-bottom: 32px;
        }
        .article-tags-label { font-size: 13px; font-weight: 600; color: var(--gray-500); }
        .article-tag {
            padding: 6px 14px; background: var(--gray-100);
            border-radius: 100px; font-size: 13px; font-weight: 500;
            color: var(--gray-600); transition: all 0.2s;
        }
        .article-tag:hover { background: var(--gray-200); color: var(--gray-900); }

        .article-share {
            display: flex; align-items: center; justify-content: space-between;
            padding: 24px; background: var(--gray-50); border-radius: 16px;
        }
        .article-share-text { font-size: 15px; font-weight: 600; color: var(--gray-900); }
        .share-buttons { display: flex; gap: 10px; }
        .share-btn {
            width: 44px; height: 44px; border-radius: 10px;
            display: flex; align-items: center; justify-content: center;
            background: var(--white); border: 1px solid var(--gray-200);
            color: var(--gray-600); transition: all 0.2s; cursor: pointer;
        }
        .share-btn:hover { border-color: var(--bronze-300); color: var(--bronze-600); background: var(--bronze-100); }
        .share-btn svg { width: 18px; height: 18px; }

        /* ─── CTA SECTION ─── */
        .blog-cta {
            margin: 80px 0;
            background: linear-gradient(135deg, var(--bronze-600), var(--bronze-800));
            border-radius: 24px;
            padding: 60px;
            text-align: center;
            position: relative;
            overflow: hidden;
        }
        .blog-cta::before {
            content: '';
            position: absolute; top: -50%; right: -20%;
            width: 400px; height: 400px;
            background: radial-gradient(circle, rgba(255,255,255,0.12) 0%, transparent 60%);
            pointer-events: none;
        }
        .blog-cta-title {
            font-family: var(--font-serif);
            font-size: 32px; color: white;
            margin-bottom: 12px; position: relative;
        }
        .blog-cta-text {
            font-size: 17px; color: rgba(255,255,255,0.85);
            margin-bottom: 28px; max-width: 500px;
            margin-left: auto; margin-right: auto; position: relative;
        }
        .blog-cta-actions {
            display: flex; justify-content: center; gap: 16px; position: relative;
        }

        /* ─── BUTTONS ─── */
        .btn {
            display: inline-flex; align-items: center; justify-content: center; gap: 8px;
            padding: 14px 28px; font-family: var(--font-sans);
            font-size: 15px; font-weight: 600; border-radius: 10px;
            transition: all 0.2s ease; border: none; cursor: pointer; text-decoration: none;
        }
        .btn-white { background: white; color: var(--bronze-700); }
        .btn-white:hover { background: var(--gray-100); box-shadow: 0 4px 16px rgba(0,0,0,0.1); }
        .btn-primary { background: transparent; color: #1E1E24; border: 1.5px solid #1E1E24; }
        .btn-primary:hover { background: #1E1E24; color: #FFFFFF; box-shadow: 0 4px 12px rgba(0, 0, 0, 0.10); }
        .btn-sm { padding: 8px 16px; font-size: 13px; }
        .btn-ghost { background: transparent; color: var(--gray-600); }
        .btn-ghost:hover { color: var(--gray-900); background: var(--gray-50); }
        .btn-icon { width: 16px; height: 16px; }

        /* ─── RELATED POSTS ─── */
        .related-section {
            padding: 80px 0;
            background: var(--gray-50);
        }
        .related-header { text-align: center; margin-bottom: 48px; }
        .related-title { font-size: 28px; font-weight: 700; color: var(--gray-900); margin-bottom: 8px; }
        .related-subtitle { font-size: 15px; color: var(--gray-500); }

        .related-grid {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 28px;
        }
        .related-card {
            background: var(--white);
            border: 1px solid var(--gray-200);
            border-radius: 16px;
            overflow: hidden;
            transition: all 0.3s ease;
        }
        .related-card:hover {
            border-color: var(--gray-300);
            box-shadow: 0 12px 32px rgba(0, 0, 0, 0.08);
            transform: translateY(-4px);
        }
        .related-card-image {
            height: 160px;
            background: linear-gradient(135deg, var(--gray-200), var(--gray-100));
            display: flex; align-items: center; justify-content: center;
        }
        .related-card-icon {
            width: 56px; height: 56px; border-radius: 14px;
            display: flex; align-items: center; justify-content: center; color: white;
        }
        .related-card-icon.bronze { background: linear-gradient(135deg, var(--bronze-500), var(--bronze-700)); }
        .related-card-icon.emerald { background: linear-gradient(135deg, var(--emerald), #059669); }
        .related-card-icon.blue { background: linear-gradient(135deg, var(--blue), #1D4ED8); }
        .related-card-icon svg { width: 28px; height: 28px; }
        .related-card-body { padding: 24px; }
        .related-card-category {
            font-size: 11px; font-weight: 700; text-transform: uppercase;
            letter-spacing: 0.05em; color: var(--bronze-600); margin-bottom: 10px;
        }
        .related-card-title {
            font-size: 17px; font-weight: 700; color: var(--gray-900);
            margin-bottom: 10px; line-height: 1.4;
        }
        .related-card-meta { font-size: 13px; color: var(--gray-500); }

        /* ─── RESPONSIVE ─── */
        @media (max-width: 1024px) {
            .use-case-grid { grid-template-columns: 1fr; }
            .related-grid { grid-template-columns: 1fr; }
        }
        @media (max-width: 768px) {
            .blog-hero { padding: 40px 0 60px; }
            .blog-meta { gap: 16px; }
            .blog-cta { padding: 40px 24px; }
            .article-share { flex-direction: column; gap: 16px; text-align: center; }
            .share-buttons { justify-content: center; }
            .blog-featured-image { margin-top: -20px; }
            .callout { padding: 20px 24px; }
            .article-body h2 { font-size: 26px; margin: 40px 0 20px; }
            .routing-section { padding: 32px 20px; }
        }

    
/* ── Nav wrapping fix for long translations ── */
#header .nav-link,
#header .nav-item > a {
  white-space: nowrap;
}
#header .nav {
  font-size: clamp(12px, 1.1vw, 15px);
  flex-wrap: nowrap;
}
#header .header-inner {
  flex-wrap: nowrap;
  align-items: center;
}
.header-actions {
  flex-shrink: 0;
  white-space: nowrap;
}

/* ── Hero badge overflow fix for long translations ── */
.hero-badge {
  white-space: nowrap;
  width: auto;
  max-width: 100%;
}
.hero-text {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
}
