
        :root {
            --color-accept: #22c55e;
            --color-remove: #ef4444;
            --color-modify: #f97316;
            --color-primary: #3498db;
            --bg-light: #f9fafb;
            --border-color: #e5e7eb;
            --text-muted: #6b7280;
            --text-primary: #111827;
        }

        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }

        body {
            font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
            line-height: 1.6;
            color: var(--text-primary);
            background-color: #ffffff;
            padding: 2rem;
            max-width: 1200px;
            margin: 0 auto;
        }

        .breadcrumb {
            margin-bottom: 1.5rem;
            font-size: 0.875rem;
            color: var(--text-muted);
        }

        .breadcrumb a {
            color: var(--color-primary);
            text-decoration: none;
        }

        .breadcrumb a:hover {
            text-decoration: underline;
        }

        .header {
            border-bottom: 2px solid var(--border-color);
            padding-bottom: 1.5rem;
            margin-bottom: 2rem;
        }

        h1 {
            font-size: 2.5rem;
            font-weight: 700;
            margin-bottom: 0.5rem;
            color: #1f2937;
        }

        h2 {
            font-size: 1.75rem;
            font-weight: 600;
            margin-top: 2rem;
            margin-bottom: 1rem;
            color: #1f2937;
            border-bottom: 1px solid var(--border-color);
            padding-bottom: 0.5rem;
        }

        h3 {
            font-size: 1.25rem;
            font-weight: 600;
            margin-top: 1.5rem;
            margin-bottom: 0.75rem;
            color: #374151;
        }

        h4 {
            font-size: 1rem;
            font-weight: 600;
            margin-top: 1.25rem;
            margin-bottom: 0.5rem;
            color: #4b5563;
        }

        p {
            margin-bottom: 1rem;
        }

        a {
            color: var(--color-primary);
            text-decoration: none;
        }

        a:hover {
            text-decoration: underline;
        }

        /* Gene symbol links */
        .content a[href*="/genes/"] {
            background-color: #dbeafe;
            padding: 0.125rem 0.375rem;
            border-radius: 0.25rem;
            font-weight: 500;
        }

        .content a[href*="/genes/"]:hover {
            background-color: #bfdbfe;
        }

        ul, ol {
            margin-bottom: 1rem;
            padding-left: 2rem;
        }

        li {
            margin-bottom: 0.25rem;
        }

        code {
            background: #f4f4f4;
            padding: 0.125rem 0.375rem;
            border-radius: 0.25rem;
            font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, monospace;
            font-size: 0.875em;
        }

        pre {
            background: #1f2937;
            color: #f9fafb;
            padding: 1rem;
            border-radius: 0.5rem;
            overflow-x: auto;
            margin-bottom: 1rem;
        }

        pre code {
            background: none;
            padding: 0;
            color: inherit;
        }

        blockquote {
            border-left: 4px solid var(--color-primary);
            margin-left: 0;
            padding-left: 1.5rem;
            color: #4b5563;
            font-style: italic;
            margin-bottom: 1rem;
        }

        table {
            width: 100%;
            border-collapse: collapse;
            margin: 1.5rem 0;
        }

        th, td {
            border: 1px solid var(--border-color);
            padding: 0.75rem;
            text-align: left;
        }

        th {
            background-color: var(--bg-light);
            font-weight: 600;
            color: var(--text-muted);
            text-transform: uppercase;
            font-size: 0.75rem;
            letter-spacing: 0.05em;
        }

        tr:nth-child(even) {
            background-color: #f9fafb;
        }

        tr:hover {
            background-color: #f3f4f6;
        }

        /* Mermaid diagrams */
        .mermaid {
            text-align: center;
            margin: 2rem 0;
            background: white;
            padding: 1.5rem;
            border-radius: 0.5rem;
            border: 1px solid var(--border-color);
        }

        .mermaid svg {
            max-width: 100%;
            height: auto;
        }

        /* Warnings section */
        .warnings {
            background-color: #fef3c7;
            border: 1px solid #fde68a;
            border-radius: 0.5rem;
            padding: 1rem;
            margin-bottom: 2rem;
        }

        .warnings h3 {
            color: #92400e;
            margin-top: 0;
            margin-bottom: 0.5rem;
            font-size: 1rem;
        }

        .warnings ul {
            margin-bottom: 0;
            color: #78350f;
        }

        /* Task lists (checkboxes) */
        li input[type="checkbox"] {
            margin-right: 0.5rem;
        }

        /* Status badges */
        .badge {
            display: inline-block;
            padding: 0.25rem 0.625rem;
            border-radius: 9999px;
            font-size: 0.75rem;
            font-weight: 600;
            text-transform: uppercase;
        }

        .badge-success {
            background-color: #d1fae5;
            color: #065f46;
        }

        .badge-warning {
            background-color: #fef3c7;
            color: #92400e;
        }

        .badge-info {
            background-color: #dbeafe;
            color: #1e40af;
        }

        /* Project meta: maturity + tag badges */
        .project-meta { margin-bottom: 0.5rem; }
        .project-meta .badge { margin: 0 0.25rem 0.25rem 0; }
        .gene-list {
            display: flex;
            flex-wrap: wrap;
            gap: 0.375rem;
            margin-bottom: 1rem;
        }
        .gene-list a,
        .gene-list span {
            background-color: #dbeafe;
            border-radius: 0.25rem;
            color: #1e40af;
            display: inline-block;
            font-weight: 500;
            padding: 0.125rem 0.375rem;
        }
        .gene-list a:hover {
            background-color: #bfdbfe;
            text-decoration: none;
        }
        .m-SCOPING     { background: #fef3c7; color: #92400e; }
        .m-IN_PROGRESS { background: #dbeafe; color: #1e40af; }
        .m-MATURE      { background: #dcfce7; color: #166534; }
        .m-COMPLETE    { background: #d1fae5; color: #065f46; }
        .m-ARCHIVED    { background: #f3f4f6; color: #6b7280; }
        .badge.tag { text-transform: none; }
        .t-FLAGSHIP       { background: #fae8ff; color: #86198f; }
        .t-BIOLOGY_DOMAIN { background: #e0f2fe; color: #075985; }
        .t-PIPELINE       { background: #ede9fe; color: #5b21b6; }
        .t-OBSOLETION     { background: #fee2e2; color: #991b1b; }

        /* Manual reviews */
        .manual-reviews {
            background-color: var(--bg-light);
            border: 1px solid var(--border-color);
            border-radius: 0.5rem;
            padding: 1rem 1.25rem;
            margin-bottom: 2rem;
        }
        .manual-reviews h3 { margin-top: 0; margin-bottom: 0.75rem; font-size: 1rem; }
        .manual-reviews .review { padding: 0.5rem 0; }
        .manual-reviews .review + .review { border-top: 1px dashed var(--border-color); }
        .manual-reviews .review-head { margin-bottom: 0.25rem; }
        .manual-reviews .review-head .badge { margin-right: 0.5rem; }
        .manual-reviews .review-head .who { font-weight: 600; }
        .manual-reviews .review-head .when { color: var(--text-muted); font-size: 0.85rem; margin-left: 0.5rem; }
        .manual-reviews .review-notes { margin: 0.25rem 0; }
        .manual-reviews .review-todos { margin: 0.25rem 0 0.5rem; }
        .badge.r-READY             { background: #dcfce7; color: #166534; }
        .badge.r-CHANGES_REQUESTED { background: #fee2e2; color: #991b1b; }

        /* Content wrapper */
        .content {
            margin-bottom: 2rem;
        }

        /* Footer */
        footer {
            margin-top: 3rem;
            padding-top: 1.5rem;
            border-top: 1px solid var(--border-color);
            color: var(--text-muted);
            font-size: 0.875rem;
            text-align: center;
        }

        footer small {
            display: block;
        }
    