        .prose {
            color: #334155;
            max-width: 100%;
            font-size: 1rem;
            line-height: 1.75;
        }
        .prose p { margin-top: 1.25em; margin-bottom: 1.25em; }
        .prose strong { color: #0f172a; font-weight: 700; }
        .prose em { font-style: italic; }
        .prose h1, .prose h2, .prose h3, .prose h4, .prose h5, .prose h6 {
            color: #0f172a; font-weight: 700; line-height: 1.3; margin-top: 2em; margin-bottom: 0.8em;
        }
        .prose h1 { font-size: 2.25em; }
        .prose h2 { font-size: 1.75em; border-bottom: 1px solid #e2e8f0; padding-bottom: 0.3em; }
        .prose h3 { font-size: 1.5em; }
        .prose ul { list-style-type: disc; padding-left: 1.625em; margin-top: 1.25em; margin-bottom: 1.25em; }
        .prose ol { list-style-type: decimal; padding-left: 1.625em; margin-top: 1.25em; margin-bottom: 1.25em; }
        .prose li { margin-top: 0.5em; margin-bottom: 0.5em; }
        .prose blockquote {
            font-weight: 500; font-style: italic; color: #111827; border-left-width: 0.25rem; border-left-color: #3b82f6;
            background-color: #f8fafc; quotes: "\201C""\201D""\2018""\2019"; margin-top: 1.6em; margin-bottom: 1.6em;
            padding: 1em; border-radius: 0 0.375rem 0.375rem 0;
        }
        .prose a { color: #2563eb; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 2px; font-weight: 500; }
        .prose a:hover { color: #1d4ed8; }
        .prose img { margin-top: 2em; margin-bottom: 2em; border-radius: 0.5rem; box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1); }
        .prose hr { margin-top: 3em; margin-bottom: 3em; border-color: #e2e8f0; border-top-width: 1px; }
        .prose code {
            color: #db2777; font-weight: 600; font-size: 0.875em; background-color: #fce7f3; padding: 0.2em 0.4em;
            border-radius: 0.25rem; font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
        }
        .prose pre {
            background-color: #1e293b; overflow-x: auto; font-size: 0.875em; line-height: 1.7142857;
            margin-top: 1.7142857em; margin-bottom: 1.7142857em; border-radius: 0.5rem; padding: 0; position: relative;
        }
        .prose pre code {
            background-color: transparent; border-width: 0; border-radius: 0; padding: 1rem; font-weight: 400;
            color: inherit; font-size: inherit; font-family: inherit; line-height: inherit; display: block;
        }
        .code-block-wrapper { position: relative; margin-bottom: 1.5em; }
        .copy-btn {
            position: absolute; top: 0.5rem; right: 0.5rem; background-color: rgba(255, 255, 255, 0.15); color: #fff;
            border: 1px solid rgba(255, 255, 255, 0.3); border-radius: 0.375rem; padding: 0.25rem 0.6rem; font-size: 0.75rem;
            cursor: pointer; transition: all 0.2s; opacity: 1; z-index: 20; display: flex; align-items: center; gap: 4px;
        }
        .copy-btn:hover { background-color: rgba(255, 255, 255, 0.3); }
        .copy-btn.copied { background-color: #22c55e; border-color: #22c55e; }
        .prose table {
            width: 100%; table-layout: auto; text-align: left; margin-top: 2em; margin-bottom: 2em;
            font-size: 0.875em; line-height: 1.7142857; border-collapse: collapse;
        }
        .prose thead { border-bottom-width: 1px; border-bottom-color: #e2e8f0; }
        .prose thead th {
            color: #0f172a; font-weight: 600; vertical-align: bottom; padding-right: 0.5714286em;
            padding-bottom: 0.5714286em; padding-left: 0.5714286em; background-color: #f8fafc;
        }
        .prose tbody tr { border-bottom-width: 1px; border-bottom-color: #e2e8f0; }
        .prose tbody tr:last-child { border-bottom-width: 0; }
        .prose tbody td {
            vertical-align: baseline; padding-top: 0.5714286em; padding-right: 0.5714286em;
            padding-bottom: 0.5714286em; padding-left: 0.5714286em;
        }

        .strict-display-box {
            border: 1px solid #e5e7eb;
            border-radius: 12px;
            overflow: hidden;
            margin: 2rem 0;
            box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1);
            background: #fff;
        }
        .strict-header {
            background: #f8fafc;
            padding: 0.8rem 1rem;
            display: flex;
            gap: 0.5rem;
            border-bottom: 1px solid #f1f5f9;
            align-items: center;
        }
        .strict-dot {
            width: 0.75rem;
            height: 0.75rem;
            border-radius: 50%;
        }
        .strict-title {
            margin-left: auto;
            font-size: 0.75rem;
            color: #94a3b8;
            font-weight: 500;
        }
        .strict-body {
            all: initial; 
            display: block;
            background: #fff;
            font-family: 'Inter', sans-serif; 
        }
        .demo-content-box {
            padding: 2rem;
            min-height: 300px;
            display: flex;
            align-items: center;
            justify-content: center;
            background: #f8fafc; 
            position: relative;
            overflow: hidden;
        }