.post-content .pci-pt-mem-diagram--egpu-mac-gaming{--vm-bg:#dbeafe;--vm-border:#93c5fd;--vm-text:#1e3a8a;--host-bg:#d1fae5;--host-border:#6ee7b7;--host-text:#065f46;--arrow-blue:#2563eb;--arrow-green:#059669;--text-dark:#0f172a;--text-muted:#475569;--pci-bg:#ede9fe;--pci-border:#c4b5fd;--pci-text:#5b21b6;--iommu-bg:#fef3c7;--iommu-border:#fcd34d;--iommu-text:#92400e;margin:1.25rem 0;font-family:-apple-system,BlinkMacSystemFont,segoe ui,Roboto,helvetica neue,Arial,sans-serif;font-size:14px;line-height:1.5;color:var(--text-dark)}.post-content .pci-pt-mem-diagram--egpu-mac-gaming *,.post-content .pci-pt-mem-diagram--egpu-mac-gaming *::before,.post-content .pci-pt-mem-diagram--egpu-mac-gaming *::after{box-sizing:border-box}.post-content .pci-pt-mem-diagram--egpu-mac-gaming .diagram{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.post-content .pci-pt-mem-diagram--egpu-mac-gaming .box{border:2px solid;border-radius:10px;padding:14px;background:#fff}.post-content .pci-pt-mem-diagram--egpu-mac-gaming .box-title{font-weight:700;font-size:14px;margin-bottom:10px}.post-content .pci-pt-mem-diagram--egpu-mac-gaming .inner-box{border:1.5px solid;border-radius:8px;padding:10px 14px;background:#fff;font-size:12px;text-align:center}.post-content .pci-pt-mem-diagram--egpu-mac-gaming .vm-box{border-color:var(--vm-border);background:#eff6ff;min-width:200px}.post-content .pci-pt-mem-diagram--egpu-mac-gaming .vm-box .box-title{color:var(--vm-text)}.post-content .pci-pt-mem-diagram--egpu-mac-gaming .vm-box .inner-box{border-color:var(--vm-border);background:var(--vm-bg);color:var(--vm-text)}.post-content .pci-pt-mem-diagram--egpu-mac-gaming .host-box{border-color:var(--host-border);background:#ecfdf5;min-width:280px}.post-content .pci-pt-mem-diagram--egpu-mac-gaming .host-box .box-title{color:var(--host-text)}.post-content .pci-pt-mem-diagram--egpu-mac-gaming .host-grid{display:grid;grid-template-columns:1fr 1.18fr 1fr;gap:8px}.post-content .pci-pt-mem-diagram--egpu-mac-gaming .host-cell{background:#e5e7eb;border-radius:6px;height:38px;display:flex;align-items:center;justify-content:center;color:#6b7280;font-size:12px}.post-content .pci-pt-mem-diagram--egpu-mac-gaming .host-cell.active{background:var(--host-bg);color:var(--host-text);font-weight:600;grid-column:2/3;height:56px;border:1.5px solid var(--host-border);line-height:1.2;padding:0 6px}.post-content .pci-pt-mem-diagram--egpu-mac-gaming .arrow{display:flex;flex-direction:column;align-items:center;font-size:12px;color:var(--arrow-blue);font-weight:600;text-align:center;min-width:110px}.post-content .pci-pt-mem-diagram--egpu-mac-gaming .arrow.green{color:var(--arrow-green)}.post-content .pci-pt-mem-diagram--egpu-mac-gaming .arrow .label{margin-bottom:4px}.post-content .pci-pt-mem-diagram--egpu-mac-gaming .arrow .sublabel{font-weight:400;color:var(--text-muted);font-size:11px;margin-top:4px}.post-content .pci-pt-mem-diagram--egpu-mac-gaming .arrow .line{width:100%;height:2px;background:var(--arrow-blue);position:relative}.post-content .pci-pt-mem-diagram--egpu-mac-gaming .arrow.green .line{background:var(--arrow-green)}.post-content .pci-pt-mem-diagram--egpu-mac-gaming .arrow .line::after{content:"";position:absolute;right:-1px;top:-5px;border-left:8px solid var(--arrow-blue);border-top:6px solid transparent;border-bottom:6px solid transparent}.post-content .pci-pt-mem-diagram--egpu-mac-gaming .arrow.green .line::after{border-left-color:var(--arrow-green)}.post-content .pci-pt-mem-diagram--egpu-mac-gaming .pci-box{border-color:var(--pci-border);background:var(--pci-bg);color:var(--pci-text);text-align:center;padding:16px 18px;min-width:110px}.post-content .pci-pt-mem-diagram--egpu-mac-gaming .pci-box .box-title{color:var(--pci-text);margin-bottom:6px}.post-content .pci-pt-mem-diagram--egpu-mac-gaming .pci-icon{font-size:26px;margin-top:4px;line-height:1}.post-content .pci-pt-mem-diagram--egpu-mac-gaming .iommu-box{border-color:var(--iommu-border);background:#fffbeb;min-width:280px}.post-content .pci-pt-mem-diagram--egpu-mac-gaming .iommu-box .box-title{color:var(--iommu-text)}.post-content .pci-pt-mem-diagram--egpu-mac-gaming .iommu-table-title{font-size:12px;font-weight:600;text-align:center;margin-bottom:6px;color:var(--iommu-text)}.post-content .pci-pt-mem-diagram--egpu-mac-gaming .translation-table{border:1.5px solid var(--iommu-border);border-radius:6px;overflow:hidden;background:#fff;font-size:11px}.post-content .pci-pt-mem-diagram--egpu-mac-gaming .translation-table .row{display:grid;grid-template-columns:1fr 1fr}.post-content .pci-pt-mem-diagram--egpu-mac-gaming .translation-table .header-cell{background:var(--iommu-bg);color:var(--iommu-text);font-weight:700;padding:6px 8px;border-right:1px solid var(--iommu-border)}.post-content .pci-pt-mem-diagram--egpu-mac-gaming .translation-table .header-cell:last-child{border-right:none}.post-content .pci-pt-mem-diagram--egpu-mac-gaming .translation-table .data-cell{padding:6px 8px;color:var(--text-dark);border-top:1px solid var(--iommu-border);border-right:1px solid var(--iommu-border);background:#fff}.post-content .pci-pt-mem-diagram--egpu-mac-gaming .translation-table .data-cell:last-child{border-right:none;color:var(--host-text);font-weight:600}.post-content .pci-pt-mem-diagram--egpu-mac-gaming .translation-table .arrow-cell::before{content:"→ ";color:var(--arrow-green)}.post-content .pci-pt-mem-diagram--egpu-mac-gaming .small-host-box{border-color:var(--host-border);background:#ecfdf5;text-align:center;min-width:170px}.post-content .pci-pt-mem-diagram--egpu-mac-gaming .small-host-box .box-title{color:var(--host-text)}.post-content .pci-pt-mem-diagram--egpu-mac-gaming .small-host-box .inner-box{border-color:var(--host-border);background:var(--host-bg);color:var(--host-text);font-weight:600}.post-content .pci-pt-mem-diagram--egpu-mac-gaming-iommu{overflow:visible;padding-bottom:0}.post-content .pci-pt-mem-diagram--egpu-mac-gaming-iommu .diagram{flex-wrap:nowrap;align-items:stretch;min-width:0}.post-content .pci-pt-mem-diagram--egpu-mac-gaming-iommu .pci-box{min-width:88px}.post-content .pci-pt-mem-diagram--egpu-mac-gaming-iommu .iommu-box{min-width:212px;padding:10px 12px}.post-content .pci-pt-mem-diagram--egpu-mac-gaming-iommu .small-host-box{min-width:132px}.post-content .pci-pt-mem-diagram--egpu-mac-gaming-iommu .arrow{min-width:88px}.post-content .pci-pt-mem-diagram--egpu-mac-gaming-iommu .arrow .label{font-size:11px}.post-content .pci-pt-mem-diagram--egpu-mac-gaming-iommu .translation-table{font-size:10px}.post-content .pci-pt-mem-diagram--egpu-mac-gaming-iommu .translation-table .header-cell,.post-content .pci-pt-mem-diagram--egpu-mac-gaming-iommu .translation-table .data-cell{padding:5px 6px}@media(max-width:600px){.post-content .pci-pt-mem-diagram--egpu-mac-gaming-iommu .diagram{flex-wrap:wrap;flex-direction:column;align-items:center;gap:6px}.post-content .pci-pt-mem-diagram--egpu-mac-gaming-iommu .iommu-box,.post-content .pci-pt-mem-diagram--egpu-mac-gaming-iommu .small-host-box{width:100%;max-width:320px;min-width:0}.post-content .pci-pt-mem-diagram--egpu-mac-gaming-iommu .arrow{flex:none;width:auto;min-width:0}.post-content .pci-pt-mem-diagram--egpu-mac-gaming-iommu .arrow .line{width:2px;height:22px;margin:2px auto 8px}.post-content .pci-pt-mem-diagram--egpu-mac-gaming-iommu .arrow .line::after{right:auto;top:auto;left:50%;bottom:-7px;transform:translateX(-50%);border-left:6px solid transparent;border-right:6px solid transparent;border-top:8px solid var(--arrow-blue);border-bottom:none}.post-content .pci-pt-mem-diagram--egpu-mac-gaming-iommu .arrow.green .line::after{border-top-color:var(--arrow-green);border-left-color:transparent}}.post-content .dma-flow-diagram{max-width:420px;margin:1.5rem auto}.post-content .dma-flow-stack{display:flex;flex-direction:column;align-items:center;gap:0}.post-content .dma-flow-section{width:100%;border:2px solid;border-radius:10px;padding:16px 20px 12px;position:relative}.post-content .dma-flow-guest{border-color:var(--vm-border);background:#eff6ff}.post-content .dma-flow-host{border-color:var(--host-border);background:#ecfdf5}.post-content .dma-flow-hardware{border-color:var(--iommu-border);background:#fffbeb}.post-content .dma-flow-section-label{font-weight:700;font-size:13px;margin-bottom:12px}.post-content .dma-flow-guest .dma-flow-section-label{color:var(--vm-text)}.post-content .dma-flow-host .dma-flow-section-label{color:var(--host-text)}.post-content .dma-flow-hardware .dma-flow-section-label{color:var(--iommu-text)}.post-content .dma-flow-step{display:flex;flex-direction:column;align-items:center}.post-content .dma-flow-box{width:100%;text-align:center;padding:10px 12px;border-radius:8px;border:1.5px solid;font-size:13px;font-weight:600;background:#fff}.post-content .dma-flow-nvidia{border-color:var(--pci-border);background:var(--pci-bg);color:var(--pci-text)}.post-content .dma-flow-custom{border-color:var(--vm-border);background:var(--vm-bg);color:var(--vm-text)}.post-content .dma-flow-vdev{border-color:var(--vm-border);background:#dbeafe;color:var(--vm-text)}.post-content .dma-flow-qemu{border-color:#a78bfa;background:#f5f3ff;color:#5b21b6}.post-content .dma-flow-driverkit{border-color:var(--host-border);background:var(--host-bg);color:var(--host-text)}.post-content .dma-flow-dart{border-color:var(--iommu-border);background:var(--iommu-bg);color:var(--iommu-text)}.post-content .dma-flow-userland{border-color:var(--vm-border);background:var(--vm-bg);color:var(--vm-text)}.post-content .dma-flow-egpu{border-color:var(--iommu-border);background:var(--iommu-bg);color:var(--iommu-text)}.post-content .dma-flow-tag{font-weight:400;font-size:11px;opacity:.7}.post-content .dma-flow-arrow-down{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:10px;padding:6px 0;min-height:32px}.post-content .dma-flow-arrow-shaft{display:flex;flex-direction:column;align-items:center;flex-shrink:0}.post-content .dma-flow-arrow-shaft::before{content:"";width:2px;height:18px;background:var(--arrow-blue)}.post-content .dma-flow-arrow-shaft::after{content:"";width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:6px solid var(--arrow-blue)}.post-content .dma-flow-arrow-label{font-size:10px;font-family:ui-monospace,sf mono,cascadia mono,Menlo,monospace;color:var(--text-muted);white-space:nowrap}.post-content .dma-flow-boundary{width:100%;display:flex;align-items:center;gap:8px;padding:6px 0}.post-content .dma-flow-boundary::before,.post-content .dma-flow-boundary::after{content:"";flex:1;height:1.5px;background:repeating-linear-gradient( 90deg,var(--text-muted) 0,var(--text-muted) 6px,transparent 6px,transparent 12px )}.post-content .dma-flow-boundary span{font-size:11px;font-weight:600;color:var(--text-muted);white-space:nowrap}.post-content .dma-flow-return{width:100%;display:flex;flex-direction:column;align-items:center;padding-top:8px}.post-content .dma-flow-return-line{width:2px;height:0;border-left:2px dashed var(--arrow-green);height:20px}.post-content .dma-flow-return-line::after{content:"";display:block;width:0;height:0;margin-left:-6px;margin-top:0;border-left:5px solid transparent;border-right:5px solid transparent;border-bottom:6px solid var(--arrow-green)}.post-content .dma-flow-return-label{font-size:11px;color:var(--arrow-green);font-weight:600;margin-top:4px}html[data-theme=dark] .post-content .dma-flow-guest,body.dark .post-content .dma-flow-guest{background:#111c2e;border-color:var(--vm-border)}html[data-theme=dark] .post-content .dma-flow-host,body.dark .post-content .dma-flow-host{background:#0c1f17;border-color:var(--host-border)}html[data-theme=dark] .post-content .dma-flow-hardware,body.dark .post-content .dma-flow-hardware{background:#1c1917;border-color:var(--iommu-border)}html[data-theme=dark] .post-content .dma-flow-box,body.dark .post-content .dma-flow-box{background:#1e293b}html[data-theme=dark] .post-content .dma-flow-nvidia,body.dark .post-content .dma-flow-nvidia{background:var(--pci-bg);border-color:var(--pci-border);color:var(--pci-text)}html[data-theme=dark] .post-content .dma-flow-custom,body.dark .post-content .dma-flow-custom{background:var(--vm-bg);border-color:var(--vm-border);color:var(--vm-text)}html[data-theme=dark] .post-content .dma-flow-vdev,body.dark .post-content .dma-flow-vdev{background:#1e3a5f;border-color:var(--vm-border);color:var(--vm-text)}html[data-theme=dark] .post-content .dma-flow-qemu,body.dark .post-content .dma-flow-qemu{background:#312e81;border-color:#6366f1;color:#e0e7ff}html[data-theme=dark] .post-content .dma-flow-driverkit,body.dark .post-content .dma-flow-driverkit{background:var(--host-bg);border-color:var(--host-border);color:var(--host-text)}html[data-theme=dark] .post-content .dma-flow-dart,body.dark .post-content .dma-flow-dart{background:var(--iommu-bg);border-color:var(--iommu-border);color:var(--iommu-text)}html[data-theme=dark] .post-content .dma-flow-userland,body.dark .post-content .dma-flow-userland{background:var(--vm-bg);border-color:var(--vm-border);color:var(--vm-text)}html[data-theme=dark] .post-content .dma-flow-egpu,body.dark .post-content .dma-flow-egpu{background:var(--iommu-bg);border-color:var(--iommu-border);color:var(--iommu-text)}html[data-theme=dark] .post-content .pci-pt-mem-diagram--egpu-mac-gaming,body.dark .post-content .pci-pt-mem-diagram--egpu-mac-gaming{--vm-bg:#1e3a5f;--vm-border:#3b6fb8;--vm-text:#dbeafe;--host-bg:#134e4a;--host-border:#0d9488;--host-text:#a7f3d0;--arrow-blue:#63b3ed;--arrow-green:#34d399;--text-dark:#e2e8f0;--text-muted:#94a3b8;--pci-bg:#312e81;--pci-border:#6366f1;--pci-text:#e0e7ff;--iommu-bg:#422006;--iommu-border:#d97706;--iommu-text:#fde68a;color:var(--text-dark)}html[data-theme=dark] .post-content .pci-pt-mem-diagram--egpu-mac-gaming .box,body.dark .post-content .pci-pt-mem-diagram--egpu-mac-gaming .box{background:#0f172a;border-color:#334155}html[data-theme=dark] .post-content .pci-pt-mem-diagram--egpu-mac-gaming .inner-box,body.dark .post-content .pci-pt-mem-diagram--egpu-mac-gaming .inner-box{background:#1e293b;border-color:#475569;color:var(--text-dark)}html[data-theme=dark] .post-content .pci-pt-mem-diagram--egpu-mac-gaming .vm-box,body.dark .post-content .pci-pt-mem-diagram--egpu-mac-gaming .vm-box{background:#111c2e;border-color:var(--vm-border)}html[data-theme=dark] .post-content .pci-pt-mem-diagram--egpu-mac-gaming .vm-box .box-title,body.dark .post-content .pci-pt-mem-diagram--egpu-mac-gaming .vm-box .box-title{color:var(--vm-text)}html[data-theme=dark] .post-content .pci-pt-mem-diagram--egpu-mac-gaming .vm-box .inner-box,body.dark .post-content .pci-pt-mem-diagram--egpu-mac-gaming .vm-box .inner-box{background:var(--vm-bg);border-color:var(--vm-border);color:var(--vm-text)}html[data-theme=dark] .post-content .pci-pt-mem-diagram--egpu-mac-gaming .host-box,body.dark .post-content .pci-pt-mem-diagram--egpu-mac-gaming .host-box{background:#0c1f17;border-color:var(--host-border)}html[data-theme=dark] .post-content .pci-pt-mem-diagram--egpu-mac-gaming .host-box .box-title,body.dark .post-content .pci-pt-mem-diagram--egpu-mac-gaming .host-box .box-title{color:var(--host-text)}html[data-theme=dark] .post-content .pci-pt-mem-diagram--egpu-mac-gaming .host-cell,body.dark .post-content .pci-pt-mem-diagram--egpu-mac-gaming .host-cell{background:#1e293b;color:#94a3b8}html[data-theme=dark] .post-content .pci-pt-mem-diagram--egpu-mac-gaming .host-cell.active,body.dark .post-content .pci-pt-mem-diagram--egpu-mac-gaming .host-cell.active{background:var(--host-bg);color:var(--host-text);border-color:var(--host-border)}html[data-theme=dark] .post-content .pci-pt-mem-diagram--egpu-mac-gaming .pci-box,body.dark .post-content .pci-pt-mem-diagram--egpu-mac-gaming .pci-box{background:var(--pci-bg);border-color:var(--pci-border);color:var(--pci-text)}html[data-theme=dark] .post-content .pci-pt-mem-diagram--egpu-mac-gaming .pci-box .box-title,body.dark .post-content .pci-pt-mem-diagram--egpu-mac-gaming .pci-box .box-title{color:var(--pci-text)}html[data-theme=dark] .post-content .pci-pt-mem-diagram--egpu-mac-gaming .iommu-box,body.dark .post-content .pci-pt-mem-diagram--egpu-mac-gaming .iommu-box{background:#1c1917;border-color:var(--iommu-border)}html[data-theme=dark] .post-content .pci-pt-mem-diagram--egpu-mac-gaming .iommu-box .box-title,body.dark .post-content .pci-pt-mem-diagram--egpu-mac-gaming .iommu-box .box-title,html[data-theme=dark] .post-content .pci-pt-mem-diagram--egpu-mac-gaming .iommu-table-title,body.dark .post-content .pci-pt-mem-diagram--egpu-mac-gaming .iommu-table-title{color:var(--iommu-text)}html[data-theme=dark] .post-content .pci-pt-mem-diagram--egpu-mac-gaming .translation-table,body.dark .post-content .pci-pt-mem-diagram--egpu-mac-gaming .translation-table{background:#0f172a;border-color:var(--iommu-border)}html[data-theme=dark] .post-content .pci-pt-mem-diagram--egpu-mac-gaming .translation-table .header-cell,body.dark .post-content .pci-pt-mem-diagram--egpu-mac-gaming .translation-table .header-cell{background:var(--iommu-bg);color:var(--iommu-text)}html[data-theme=dark] .post-content .pci-pt-mem-diagram--egpu-mac-gaming .translation-table .data-cell,body.dark .post-content .pci-pt-mem-diagram--egpu-mac-gaming .translation-table .data-cell{background:#0f172a;color:var(--text-dark);border-color:var(--iommu-border)}html[data-theme=dark] .post-content .pci-pt-mem-diagram--egpu-mac-gaming .translation-table .data-cell:last-child,body.dark .post-content .pci-pt-mem-diagram--egpu-mac-gaming .translation-table .data-cell:last-child{color:var(--host-text)}html[data-theme=dark] .post-content .pci-pt-mem-diagram--egpu-mac-gaming .small-host-box,body.dark .post-content .pci-pt-mem-diagram--egpu-mac-gaming .small-host-box{background:#0c1f17;border-color:var(--host-border)}html[data-theme=dark] .post-content .pci-pt-mem-diagram--egpu-mac-gaming .small-host-box .inner-box,body.dark .post-content .pci-pt-mem-diagram--egpu-mac-gaming .small-host-box .inner-box{background:var(--host-bg);border-color:var(--host-border);color:var(--host-text)}.post-content .arch-diagram{display:flex;align-items:stretch;gap:20px;flex-wrap:wrap;margin:1.5rem auto;max-width:760px}.post-content .arch-diagram .arch-mac{flex:2 1 380px;background:var(--host-bg);border:2px solid var(--host-border);border-radius:14px;padding:14px;display:flex;flex-direction:column;gap:10px;position:relative}.post-content .arch-diagram .arch-mac-label{font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--host-text);margin-bottom:2px}.post-content .arch-diagram .arch-driverkit{background:#fff;border:1.5px solid var(--host-border);border-radius:8px;padding:10px 12px}.post-content .arch-diagram .arch-qemu{background:#f5f3ff;border:2px dashed #a78bfa;border-radius:10px;padding:10px;display:flex;flex-direction:column;gap:8px}.post-content .arch-diagram .arch-qemu-title{font-weight:700;font-size:13px;color:#5b21b6}.post-content .arch-diagram .arch-vm{background:var(--vm-bg);border:2px solid var(--vm-border);border-radius:8px;padding:10px;display:flex;flex-direction:column;gap:8px}.post-content .arch-diagram .arch-vm-title{font-weight:700;font-size:13px;color:var(--vm-text)}.post-content .arch-diagram .arch-vm-inner{display:flex;flex-direction:column;gap:6px}.post-content .arch-diagram .arch-row-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--vm-text);opacity:.7;margin-top:2px}.post-content .arch-diagram .arch-nvidia{background:var(--pci-bg);border:1.5px solid var(--pci-border);border-radius:6px;padding:8px 10px;font-weight:600;font-size:13px;color:var(--pci-text)}.post-content .arch-diagram .arch-nvidia-sub{font-size:11px;font-weight:400;color:var(--pci-text);opacity:.8;margin-top:2px}.post-content .arch-diagram .arch-apps{display:flex;gap:6px;flex-wrap:wrap}.post-content .arch-diagram .arch-app{flex:1 1 100px;background:#fff;border:1.5px solid var(--vm-border);border-radius:6px;padding:6px 8px;font-size:12px;font-weight:600;color:var(--vm-text);text-align:center}.post-content .arch-diagram .arch-title{font-weight:700;font-size:13px}.post-content .arch-diagram .arch-sub{font-size:11px;color:var(--text-muted);margin-top:1px}.post-content .arch-diagram .arch-side{flex:1 1 170px;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0;padding-top:28px}.post-content .arch-diagram .arch-egpu{background:var(--iommu-bg);border:2px solid var(--iommu-border);border-radius:10px;padding:12px;text-align:center;color:var(--iommu-text)}.post-content .arch-diagram .arch-egpu .arch-sub{color:var(--iommu-text);opacity:.75}.post-content .arch-diagram .arch-monitor{background:#1f2937;border:2px solid #111827;border-radius:10px;padding:14px 12px;text-align:center;color:#e5e7eb}.post-content .arch-diagram .arch-monitor .arch-sub{color:#cbd5e1}.post-content .arch-diagram .arch-tb,.post-content .arch-diagram .arch-dp{display:flex;align-items:center;gap:8px;padding:10px 0;justify-content:center}.post-content .arch-diagram .arch-tb-line{flex:1;height:2px;background:var(--text-muted);position:relative;min-width:30px}.post-content .arch-diagram .arch-tb-line::before,.post-content .arch-diagram .arch-tb-line::after{content:"";position:absolute;top:50%;width:0;height:0;border-top:5px solid transparent;border-bottom:5px solid transparent;transform:translateY(-50%)}.post-content .arch-diagram .arch-tb-line::before{left:-1px;border-right:7px solid var(--text-muted)}.post-content .arch-diagram .arch-tb-line::after{right:-1px;border-left:7px solid var(--text-muted)}.post-content .arch-diagram .arch-tb-label,.post-content .arch-diagram .arch-dp-label{font-size:11px;font-weight:600;color:var(--text-muted);white-space:nowrap;text-transform:uppercase;letter-spacing:.04em}.post-content .arch-diagram .arch-dp{flex-direction:column;gap:4px;padding:6px 0}.post-content .arch-diagram .arch-dp-line{width:2px;height:22px;background:var(--text-muted);position:relative}.post-content .arch-diagram .arch-dp-line::after{content:"";position:absolute;bottom:-1px;left:50%;transform:translateX(-50%);width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:7px solid var(--text-muted)}@media(min-width:600px){.post-content .arch-diagram .arch-side{padding-top:32px}}html[data-theme=dark] .post-content .arch-diagram .arch-mac,body.dark .post-content .arch-diagram .arch-mac{background:#0c1f17;border-color:var(--host-border)}html[data-theme=dark] .post-content .arch-diagram .arch-driverkit,body.dark .post-content .arch-diagram .arch-driverkit{background:var(--host-bg);border-color:var(--host-border);color:var(--host-text)}html[data-theme=dark] .post-content .arch-diagram .arch-qemu,body.dark .post-content .arch-diagram .arch-qemu{background:#1a103a;border-color:#6366f1}html[data-theme=dark] .post-content .arch-diagram .arch-qemu-title,body.dark .post-content .arch-diagram .arch-qemu-title{color:#c4b5fd}html[data-theme=dark] .post-content .arch-diagram .arch-vm,body.dark .post-content .arch-diagram .arch-vm{background:#111c2e;border-color:var(--vm-border)}html[data-theme=dark] .post-content .arch-diagram .arch-vm-title,body.dark .post-content .arch-diagram .arch-vm-title{color:var(--vm-text)}html[data-theme=dark] .post-content .arch-diagram .arch-app,body.dark .post-content .arch-diagram .arch-app{background:var(--vm-bg);border-color:var(--vm-border);color:var(--vm-text)}html[data-theme=dark] .post-content .arch-diagram .arch-nvidia,body.dark .post-content .arch-diagram .arch-nvidia{background:var(--pci-bg);border-color:var(--pci-border);color:var(--pci-text)}html[data-theme=dark] .post-content .arch-diagram .arch-egpu,body.dark .post-content .arch-diagram .arch-egpu{background:var(--iommu-bg);border-color:var(--iommu-border);color:var(--iommu-text)}html[data-theme=dark] .post-content .arch-diagram .arch-monitor,body.dark .post-content .arch-diagram .arch-monitor{background:#030712;border-color:#1f2937;color:#e5e7eb}.post-content .map-coalesce-diagram .diagram{align-items:stretch;justify-content:center;gap:20px}.post-content .map-coalesce-diagram .memstack{flex:1 1 200px;min-width:180px;max-width:260px;display:flex;flex-direction:column;align-items:stretch;text-align:center}.post-content .map-coalesce-diagram .memstack-title{font-weight:700;font-size:13px;color:var(--text-dark);margin-bottom:2px}.post-content .map-coalesce-diagram .memstack-subtitle{font-size:11px;color:var(--text-muted);margin-bottom:8px}.post-content .map-coalesce-diagram .memstack-strip{display:grid;gap:6px;border:1.5px solid var(--text-muted);border-radius:8px;padding:6px;background:#fff;height:340px;grid-template-rows:repeat(4,1fr)}.post-content .map-coalesce-diagram .memstack-group{display:grid;grid-template-rows:repeat(4,1fr);gap:3px;border:1px dashed var(--text-muted);border-radius:6px;padding:3px;min-height:0}.post-content .map-coalesce-diagram .memstack-row{background:#e5e7eb;border-radius:3px;display:flex;align-items:center;justify-content:center;font-size:10px;color:#9ca3af;min-height:0}.post-content .map-coalesce-diagram .memstack-row.mapped{background:var(--host-bg);color:var(--host-text);font-weight:600;border:1px solid var(--host-border)}.post-content .map-coalesce-diagram .memstack-row span{font-family:ui-monospace,sf mono,cascadia mono,Menlo,monospace;font-size:9px;letter-spacing:-.02em}.post-content .map-coalesce-diagram .memstack-cluster{background:#e5e7eb;border-radius:6px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;color:#9ca3af;font-size:12px;padding:6px}.post-content .map-coalesce-diagram .memstack-cluster.mapped{background:var(--host-bg);color:var(--host-text);border:1.5px solid var(--host-border);font-weight:600}.post-content .map-coalesce-diagram .memstack-cluster-size{font-family:ui-monospace,sf mono,cascadia mono,Menlo,monospace;font-size:12px}.post-content .map-coalesce-diagram .memstack-cluster-dots{display:inline-flex;gap:4px}.post-content .map-coalesce-diagram .memstack-cluster-dots i{width:6px;height:6px;border-radius:50%;background:var(--host-text);opacity:.7;display:inline-block}.post-content .map-coalesce-diagram .memstack-count{margin-top:10px;font-size:13px;color:var(--text-muted)}.post-content .map-coalesce-diagram .memstack-count strong{font-size:18px;color:var(--text-dark);font-weight:700}.post-content .map-coalesce-diagram .map-coalesce-arrow{flex:0 0 130px;min-width:110px;align-self:center}html[data-theme=dark] .post-content .map-coalesce-diagram .memstack-strip,body.dark .post-content .map-coalesce-diagram .memstack-strip{background:#0f172a;border-color:#475569}html[data-theme=dark] .post-content .map-coalesce-diagram .memstack-row,body.dark .post-content .map-coalesce-diagram .memstack-row,html[data-theme=dark] .post-content .map-coalesce-diagram .memstack-cluster,body.dark .post-content .map-coalesce-diagram .memstack-cluster{background:#1e293b;color:#64748b}html[data-theme=dark] .post-content .map-coalesce-diagram .memstack-row.mapped,body.dark .post-content .map-coalesce-diagram .memstack-row.mapped,html[data-theme=dark] .post-content .map-coalesce-diagram .memstack-cluster.mapped,body.dark .post-content .map-coalesce-diagram .memstack-cluster.mapped{background:var(--host-bg);color:var(--host-text);border-color:var(--host-border)}html[data-theme=dark] .post-content .map-coalesce-diagram .memstack-title,body.dark .post-content .map-coalesce-diagram .memstack-title,html[data-theme=dark] .post-content .map-coalesce-diagram .memstack-count strong,body.dark .post-content .map-coalesce-diagram .memstack-count strong{color:var(--text-dark)}@media(max-width:600px){.post-content .map-coalesce-diagram .diagram{flex-direction:column;align-items:center;gap:12px}.post-content .map-coalesce-diagram .memstack{flex:none;width:100%;max-width:320px}.post-content .map-coalesce-diagram .memstack-strip{height:280px}.post-content .map-coalesce-diagram .map-coalesce-arrow{flex:none;min-width:0;width:auto}.post-content .map-coalesce-diagram .map-coalesce-arrow .line{width:2px;height:26px;margin:4px auto 10px}.post-content .map-coalesce-diagram .map-coalesce-arrow.green .line::after{right:auto;top:auto;left:50%;bottom:-7px;transform:translateX(-50%);border-left:6px solid transparent;border-right:6px solid transparent;border-top:8px solid var(--arrow-green);border-bottom:none}}