/* Custom Prism.js styles for MyFamily WebClient */

/* Ensure line numbers work properly */
pre[class*="language-"] {
    position: relative;
    margin: 0;
    padding: 1rem;
    overflow: auto;
    border-radius: 0.375rem;
    font-size: 0.875rem;
    line-height: 1.5;
}

/* Line numbers styling */
pre.line-numbers {
    position: relative;
    padding-left: 3.8em;
    counter-reset: linenumber;
}

pre.line-numbers > code {
    position: relative;
    white-space: inherit;
}

.line-numbers .line-numbers-rows {
    position: absolute;
    pointer-events: none;
    top: 0;
    font-size: 100%;
    left: -3.8em;
    width: 3em;
    letter-spacing: -1px;
    border-right: 1px solid #999;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.line-numbers-rows > span {
    display: block;
    counter-increment: linenumber;
}

.line-numbers-rows > span:before {
    content: counter(linenumber);
    color: #999;
    display: block;
    padding-right: 0.8em;
    text-align: right;
}

/* Ensure proper spacing for code blocks */
code[class*="language-"] {
    font-family: 'Fira Code', 'Consolas', 'Monaco', 'Courier New', monospace;
    font-size: 0.875rem;
    line-height: 1.5;
}

/* Fix for MudBlazor integration */
.storage-file-view pre {
    margin: 0;
    background: transparent !important;
}

/* Theme overrides for better integration */
pre[class*="language-"] {
    background: var(--mud-palette-surface) !important;
    border: 1px solid var(--mud-palette-lines-default) !important;
}