/* 
   FINAL Pygments CSS for Monokai theme - Remove test styles and apply proper colors
*/

/* Complete Pygments CSS - Single source of truth for syntax highlighting */

/* Code block wrapper styling - AUTHORITATIVE */
.code-block-wrapper {
    background-color: #272822; /* Monokai background */
    border-radius: 8px;
    margin: 15px 0;
    overflow: hidden;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

/* Base highlight container */
.code-block-wrapper .highlight,
.message-content .highlight {
    background: #272822 !important;
    color: #f8f8f2 !important;
    font-family: 'Hack', monospace !important;
    border-radius: 0 0 8px 8px;
    margin: 0;
}

/* Pre element */
.code-block-wrapper .highlight pre,
.message-content .highlight pre {
    font-family: 'Hack', monospace !important;
    color: #f8f8f2 !important;
    background: transparent !important;
    margin: 0;
    padding: 1em;
    /* MODIFICATION: Allow wrapping to prevent horizontal scroll */
    white-space: pre-wrap;
    word-break: break-all;
    overflow-x: hidden;
    /* END MODIFICATION */
    line-height: 1.4;
}

/* Code element */
.code-block-wrapper .highlight code,
.message-content .highlight code {
    font-family: 'Hack', monospace !important;
    background: none !important;
    padding: 0 !important;
    border-radius: 0 !important;
}

/* COMPLETE Monokai color scheme - ALL Pygments token types */
.code-block-wrapper .highlight .c, .message-content .highlight .c { color: #75715e !important; } /* Comment */
.code-block-wrapper .highlight .err, .message-content .highlight .err { color: #960050 !important; background-color: #1e0010 !important; } /* Error */
.code-block-wrapper .highlight .k, .message-content .highlight .k { color: #66d9ef !important; } /* Keyword */
.code-block-wrapper .highlight .l, .message-content .highlight .l { color: #ae81ff !important; } /* Literal */
.code-block-wrapper .highlight .n, .message-content .highlight .n { color: #f8f8f2 !important; } /* Name */
.code-block-wrapper .highlight .o, .message-content .highlight .o { color: #f92672 !important; } /* Operator */
.code-block-wrapper .highlight .p, .message-content .highlight .p { color: #f8f8f2 !important; } /* Punctuation */
.code-block-wrapper .highlight .ch, .message-content .highlight .ch { color: #75715e !important; } /* Comment.Hashbang */
.code-block-wrapper .highlight .cm, .message-content .highlight .cm { color: #75715e !important; } /* Comment.Multiline */
.code-block-wrapper .highlight .cp, .message-content .highlight .cp { color: #75715e !important; } /* Comment.Preproc */
.code-block-wrapper .highlight .cpf, .message-content .highlight .cpf { color: #75715e !important; } /* Comment.PreprocFile */
.code-block-wrapper .highlight .c1, .message-content .highlight .c1 { color: #75715e !important; } /* Comment.Single */
.code-block-wrapper .highlight .cs, .message-content .highlight .cs { color: #75715e !important; } /* Comment.Special */
.code-block-wrapper .highlight .kc, .message-content .highlight .kc { color: #66d9ef !important; } /* Keyword.Constant */
.code-block-wrapper .highlight .kd, .message-content .highlight .kd { color: #66d9ef !important; } /* Keyword.Declaration */
.code-block-wrapper .highlight .kn, .message-content .highlight .kn { color: #f92672 !important; } /* Keyword.Namespace */
.code-block-wrapper .highlight .kp, .message-content .highlight .kp { color: #66d9ef !important; } /* Keyword.Pseudo */
.code-block-wrapper .highlight .kr, .message-content .highlight .kr { color: #66d9ef !important; } /* Keyword.Reserved */
.code-block-wrapper .highlight .kt, .message-content .highlight .kt { color: #66d9ef !important; } /* Keyword.Type */
.code-block-wrapper .highlight .ld, .message-content .highlight .ld { color: #e6db74 !important; } /* Literal.Date */
.code-block-wrapper .highlight .m, .message-content .highlight .m { color: #ae81ff !important; } /* Literal.Number */
.code-block-wrapper .highlight .s, .message-content .highlight .s { color: #e6db74 !important; } /* Literal.String */
.code-block-wrapper .highlight .na, .message-content .highlight .na { color: #a6e22e !important; } /* Name.Attribute */
.code-block-wrapper .highlight .nb, .message-content .highlight .nb { color: #a6e22e !important; } /* Name.Builtin */
.code-block-wrapper .highlight .nc, .message-content .highlight .nc { color: #a6e22e !important; } /* Name.Class */
.code-block-wrapper .highlight .no, .message-content .highlight .no { color: #66d9ef !important; } /* Name.Constant */
.code-block-wrapper .highlight .nd, .message-content .highlight .nd { color: #a6e22e !important; } /* Name.Decorator */
.code-block-wrapper .highlight .ni, .message-content .highlight .ni { color: #f8f8f2 !important; } /* Name.Entity */
.code-block-wrapper .highlight .ne, .message-content .highlight .ne { color: #a6e22e !important; } /* Name.Exception */
.code-block-wrapper .highlight .nf, .message-content .highlight .nf { color: #a6e22e !important; } /* Name.Function */
.code-block-wrapper .highlight .nl, .message-content .highlight .nl { color: #f8f8f2 !important; } /* Name.Label */
.code-block-wrapper .highlight .nn, .message-content .highlight .nn { color: #f8f8f2 !important; } /* Name.Namespace */
.code-block-wrapper .highlight .nx, .message-content .highlight .nx { color: #a6e22e !important; } /* Name.Other */
.code-block-wrapper .highlight .py, .message-content .highlight .py { color: #f8f8f2 !important; } /* Name.Property */
.code-block-wrapper .highlight .nt, .message-content .highlight .nt { color: #f92672 !important; } /* Name.Tag */
.code-block-wrapper .highlight .nv, .message-content .highlight .nv { color: #f8f8f2 !important; } /* Name.Variable */
.code-block-wrapper .highlight .ow, .message-content .highlight .ow { color: #f92672 !important; } /* Operator.Word */
.code-block-wrapper .highlight .w, .message-content .highlight .w { color: #f8f8f2 !important; } /* Text.Whitespace */
.code-block-wrapper .highlight .mb, .message-content .highlight .mb { color: #ae81ff !important; } /* Literal.Number.Bin */
.code-block-wrapper .highlight .mf, .message-content .highlight .mf { color: #ae81ff !important; } /* Literal.Number.Float */
.code-block-wrapper .highlight .mh, .message-content .highlight .mh { color: #ae81ff !important; } /* Literal.Number.Hex */
.code-block-wrapper .highlight .mi, .message-content .highlight .mi { color: #ae81ff !important; } /* Literal.Number.Integer */
.code-block-wrapper .highlight .mo, .message-content .highlight .mo { color: #ae81ff !important; } /* Literal.Number.Oct */
.code-block-wrapper .highlight .sa, .message-content .highlight .sa { color: #e6db74 !important; } /* Literal.String.Affix */
.code-block-wrapper .highlight .sb, .message-content .highlight .sb { color: #e6db74 !important; } /* Literal.String.Backtick */
.code-block-wrapper .highlight .sc, .message-content .highlight .sc { color: #e6db74 !important; } /* Literal.String.Char */
.code-block-wrapper .highlight .dl, .message-content .highlight .dl { color: #e6db74 !important; } /* Literal.String.Delimiter */
.code-block-wrapper .highlight .sd, .message-content .highlight .sd { color: #e6db74 !important; } /* Literal.String.Doc */
.code-block-wrapper .highlight .s2, .message-content .highlight .s2 { color: #e6db74 !important; } /* Literal.String.Double */
.code-block-wrapper .highlight .se, .message-content .highlight .se { color: #ae81ff !important; } /* Literal.String.Escape */
.code-block-wrapper .highlight .sh, .message-content .highlight .sh { color: #e6db74 !important; } /* Literal.String.Heredoc */
.code-block-wrapper .highlight .si, .message-content .highlight .si { color: #e6db74 !important; } /* Literal.String.Interpol */
.code-block-wrapper .highlight .sx, .message-content .highlight .sx { color: #e6db74 !important; } /* Literal.String.Other */
.code-block-wrapper .highlight .sr, .message-content .highlight .sr { color: #e6db74 !important; } /* Literal.String.Regex */
.code-block-wrapper .highlight .s1, .message-content .highlight .s1 { color: #e6db74 !important; } /* Literal.String.Single */
.code-block-wrapper .highlight .ss, .message-content .highlight .ss { color: #e6db74 !important; } /* Literal.String.Symbol */
.code-block-wrapper .highlight .bp, .message-content .highlight .bp { color: #f8f8f2 !important; } /* Name.Builtin.Pseudo */
.code-block-wrapper .highlight .fm, .message-content .highlight .fm { color: #a6e22e !important; } /* Name.Function.Magic */
.code-block-wrapper .highlight .vc, .message-content .highlight .vc { color: #f8f8f2 !important; } /* Name.Variable.Class */
.code-block-wrapper .highlight .vg, .message-content .highlight .vg { color: #f8f8f2 !important; } /* Name.Variable.Global */
.code-block-wrapper .highlight .vi, .message-content .highlight .vi { color: #f8f8f2 !important; } /* Name.Variable.Instance */
.code-block-wrapper .highlight .il, .message-content .highlight .il { color: #ae81ff !important; } /* Literal.Number.Integer.Long */
