.view-code-disassemble-with-source {
    contain: inline-size;
}

.view-code-disassemble-with-source__warning-list {
    display: flex;
    flex-direction: column;
    gap: 1px;
    padding: 1px 0 0;
    background-color: var(--discovery-background-color);
    font-size: 12px;
}
.view-code-disassemble-with-source__warning-list .view-alert {
    padding: 2px 8px;
    border: none;
    border-radius: 0;
}

.view-code-disassemble-block-tree {
    background-color: var(--discovery-background-color);
    overflow-x: auto;
}

.view-code-disassemble-with-source__block-list__inlined-blocks {
    --block-color: #8cbae7;
    grid-column: span 2;
    padding-left: 5px;
    border-top: 1px solid var(--discovery-background-color);
    background: linear-gradient(to right, color-mix(in srgb, var(--block-color), var(--discovery-background-color) 40%) 4px, transparent 0);
}
.view-code-disassemble-with-source__block-list__inlined-blocks > .inlined-header {
    margin-left: -1px;
    background-color: color-mix(in srgb, var(--block-color), var(--discovery-background-color) 75%);
}
.view-code-disassemble-with-source__block-list__inlined-blocks > .inlined-header > .inlined-header__content {
    position: sticky;
    left: 0px;
    display: inline-flex;
    align-items: center;
    gap: 1ex;
    padding: 0 8px;
    font-size: 12px;
}
.view-code-disassemble-with-source__block-list__inlined-blocks > .inlined-header > .inlined-header__content::before {
    content: 'Inlined';
    color: var(--block-color);
    font-size: 11px;
}
.view-code-disassemble-with-source__block-list__inlined-blocks > .inlined-header > .inlined-header__content .view-badge {
    padding: 0 6px;
    margin: 2px 0;
    font-size: inherit;
}

.view-code-disassemble-with-source__block-list {
    display: grid;
    grid-template-columns: max-content 1fr;
    min-width: max-content;
}
.view-code-disassemble-with-source__block-list > .view-list-item {
    display: contents;
}

.view-code-disassemble-with-source__block-list > .view-list-item > .block-reference {
    --backdrop-color: #464334;
    position: sticky;
    left: 0;
    z-index: 1;
    grid-row: span 2;
    min-width: 4ex;
    background:
        linear-gradient(to left, #555555 1px, transparent 0) right top,
        linear-gradient(to bottom, var(--backdrop-color) 22px, transparent 0);
    background-color: color-mix(in srgb, var(--discovery-background-color), #0002 50%);
    backdrop-filter: blur(3px);
    border: 1px solid var(--discovery-background-color);
    border-width: 1px .5px 0 0;
    color: #b7ac6e;
    font-family: var(--discovery-monospace-font-family);
    font-size: 12px;
    padding: 2px 4px;
    text-align: center;
}
.view-code-disassemble-with-source__block-list > .view-list-item > .block-reference:empty {
    --backdrop-color: #35353555;
}
.view-code-disassemble-with-source__block-list > .view-list-item > .special-block-header {
    border-top: 1px solid var(--discovery-background-color);
    background-color: rgba(205, 205, 205, .1);
    padding: 2px 1.5ex;
    font-family: var(--discovery-monospace-font-family);
    font-size: var(--discovery-monospace-font-size, 12px);
    line-height: var(--discovery-monospace-line-height, 1.5);
    text-transform: capitalize;
}

.view-code-disassemble-with-source__block-list > .view-list-item > .view-call-frame-source-point .view-source__lines {
    display: none;
}
.view-code-disassemble-with-source__block-list > .view-list-item > .view-call-frame-source-point .view-source {
    border-radius: 0;
}
.view-code-disassemble-with-source__block-list > .view-list-item > .view-call-frame-source-point .view-source__content {
    padding: 2px 1ex;
    padding-left: 1.5ex;
    overflow: visible;
    border-top: 1px solid var(--discovery-background-color);
}
.view-code-disassemble-with-source__block-list .call-frame-code-instructions {
    border-radius: 0;
}
.view-code-disassemble-with-source__block-list .call-frame-code-instructions .view-source__content {
    padding: 6px 1ex;
    padding-left: 1.5ex;
    overflow: visible;
    background-color: #0000003b;
}
.view-code-disassemble-with-source__block-list > .more-buttons {
    grid-column: span 2;
    padding: 2px;
}

.call-frame-code-instructions .spotlight.label {
    background: none;
}
.call-frame-code-instructions .spotlight.pc,
.call-frame-code-instructions .spotlight.offset {
    color: var(--discovery-fmt-property-color);
    background: none;
}
.call-frame-code-instructions .spotlight.pc {
    border-radius: 3px;
    background-color: var(--discovery-background-color);
}
.call-frame-code-instructions .spotlight.pc-common {
    color: color-mix(in srgb, currentColor, var(--discovery-background-color) 40%);
    background: none;
}
.call-frame-code-instructions .spotlight.offset {
    color: var(--discovery-fmt-keyword-color);
}
.call-frame-code-instructions .spotlight.ops {
    color: #777;
    background: none;
}
.call-frame-code-instructions .spotlight.prefix {
    color: #92a5d6;
    background: none;
}
.call-frame-code-instructions .spotlight.command {
    background: none;
}
.call-frame-code-instructions .spotlight.command.discovery-view-has-tooltip {
    cursor: help;
    text-decoration: underline;
    text-decoration-color: color-mix(in srgb, currentColor, var(--discovery-background-color) 60%);
}
.call-frame-code-instructions .spotlight.command.discovery-view-has-tooltip:hover {
    background-color: color-mix(in srgb, currentColor, var(--discovery-background-color) 80%);
    text-decoration-color: currentColor;
}
.call-frame-code-instructions .spotlight.param {
    background: none;
}
.call-frame-code-instructions .spotlight.hint {
    padding-top: 2px;
    color: #e0af54;
    border-radius: 3px;
    background-color: var(--discovery-background-color);
}
.call-frame-code-instructions .spotlight.hint:has(.pc) {
    color: inherit;
}
.call-frame-code-instructions .spotlight.hint::before {
    content: 'hint:';
    padding-left: 3px;
    color: #888;
    font-size: 11px;
    font-family: var(--discovery-font-family);
}
.call-frame-code-instructions .spotlight.block-ref {
    color: #b7ac6e;
    background: none;
}
.call-frame-code-instructions .spotlight.block-ref::after {
    content: ":";
}
.call-frame-code-instructions .spotlight.block-ref::before {
    content: attr(data-marker);
    background-color: #464334;
    outline: 1px solid #464334;
    padding: 1px 2px;
}
.call-frame-code-instructions .spotlight.comment {
    color: #777;
    background: none;
}

.view-code-disassemble-source-to-blocks {
    display: grid;
    grid-template-rows: auto 1fr;
    grid-template-columns: 1fr 1fr;
    grid-template-areas:
        "toolbar toolbar"
        "source blocks";
    height: calc(100vh - 110px - var(--discovery-page-padding-bottom));
}
.view-code-disassemble-source-to-blocks > * {
    grid-area: toolbar;
}
.view-code-disassemble-source-to-blocks > .view-source {
    grid-area: source;
    overflow: auto;
}
.view-code-disassemble-source-to-blocks > .view-source .selected[data-marker] {
    outline: 1px solid currentColor;
    pointer-events: none;
}
.view-code-disassemble-source-to-blocks > .view-source .inlined-count {
    display: inline;
    color: light-dark(#668fb8, #8cbae7);
}
.view-code-disassemble-source-to-blocks > .view-source .inlined-count::before {
    content: ' (';
    color: color-mix(in srgb, currentcolor, #888 40%);
}
.view-code-disassemble-source-to-blocks > .view-source .inlined-count::after {
    content: ' inlined)';
    color: color-mix(in srgb, currentcolor, #888 40%);
}
.view-code-disassemble-source-to-blocks > .view-source .mark[data-marker^="blocks-offset:"] {
    cursor: pointer;
}
.view-code-disassemble-source-to-blocks > .blocks-list {
    grid-area: blocks;
    contain: inline-size;
    overflow-y: auto;
}
.view-code-disassemble-source-to-blocks > .blocks-list > .view-block {
    padding: 4px 8px;
    color: #888;
}
.source-to-block-tooltip {
    width: 350px;
}
.source-to-block-tooltip .action-hint {
    margin-top: 4px;
    color: #888;
}

.code-disassemble-tooltip {
    max-width: 480px !important;
}
.code-disassemble-tooltip .view-header {
    margin: 0 0 4px;
    white-space: nowrap;
}
.code-disassemble-tooltip .view-header .command-name {
    display: inline;
    color: light-dark(#668fb8, #8cbae7);
    padding-right: 1ex;
}
.code-disassemble-tooltip .view-header .param {
    display: inline;
    color: light-dark(#948634, #bdb06a);
}
.code-disassemble-tooltip .view-header .param::before {
    content: '<';
    opacity: .5;
}
.code-disassemble-tooltip .view-header .param::after {
    content: '>';
    opacity: .5;
}
.code-disassemble-tooltip .view-markdown {
    margin: 4px 0;
} 
