blob: fe7fa9b30bee536407f28ca517fdab86487b6d15 [file] [log] [blame]
/* Copyright lowRISC contributors. */
/* Licensed under the Apache License, Version 2.0, see LICENSE for details. */
/* SPDX-License-Identifier: Apache-2.0 */
:where(.diagram) {
position: relative !important;
top: 0 !important;
left: 0 !important;
font-size: 0.75em;
font-family: sans-serif;
line-height: normal;
--scale: 1.1;
}
:where(.diagram *) {
color: inherit;
}
:where(.lowrisc-block) {
position: absolute;
overflow: visible;
box-sizing: border-box;
z-index: auto;
--block-top: 0;
--block-left: 0;
--block-width: initial;
--block-height: initial;
--offset-top: 0;
--offset-left: 0;
top: calc(1em * ( var(--block-top) + var(--offset-top) ) * var(--scale, 1) - 1px);
left: calc(1em * ( var(--block-left) + var(--offset-left) ) * var(--scale, 1) - 1px);
width: calc(1em * var(--block-width, "auto") * var(--scale, 1));
height: calc(1em * var(--block-height, "auto") * var(--scale, 1));
display: grid;
grid-template-columns: 1fr;
grid-template-rows: 1fr;
}
:where(.block) {
background: white;
}
:where(.lowrisc-block:not(.lowrisc-arrow)) {
display: grid;
justify-content: center;
align-items: center;
text-align: center;
border: 1px solid transparent;
}
:where(.lowrisc-crossbar) {
stroke: black;
stroke-width: 1px;
}
:where(.crossbar-background) {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
:where(.crossbar-background > svg) {
width: 100%;
height: 100%;
}
:where(.lowrisc-arrow) {
text-align: left;
fill: white;
stroke: black;
stroke-width: 1px;
border: none;
}
:where(.lowrisc-arrow > svg) {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
:where(.lowrisc-arrow.thin) {
fill: black;
stroke: none;
--thin-arrow-width: 1px;
}
:where(.lowrisc-arrow.thin:not([horizontal])) {
width: var(--thin-arrow-width) !important
}
:where(.lowrisc-arrow.thin[horizontal]) {
height: var(--thin-arrow-width) !important
}
:where(.domain) {
border: 1px solid black;
}
:where(.outline) {
pointer-events: none;
background: transparent;
--outline-border: 1px dashed black;
--outline-border-radius: 0;
border: none;
}
:where(.outline.top) {
border-top: var(--outline-border);
}
:where(.outline.bottom) {
border-bottom: var(--outline-border);
}
:where(.outline.left) {
border-left: var(--outline-border);
}
:where(.outline.right) {
border-right: var(--outline-border);
}
:where(.outline.top.left) {
border-top-left-radius: var(--outline-border-radius);
}
:where(.outline.top.right) {
border-top-right-radius: var(--outline-border-radius);
}
:where(.outline.bottom.left) {
border-bottom-left-radius: var(--outline-border-radius);
}
:where(.outline.bottom.right) {
border-bottom-right-radius: var(--outline-border-radius);
}
:where(.outline > *:not(.outline)) {
pointer-events: auto;
}
:where(.block) {
border: 1px solid black;
--block-width: 6;
--block-height: 3;
}
:where(.lane) {
--block-width: 6;
}
:where(.subdomain-badge) {
border: 1px solid black;
--block-width: 0.75;
--block-height: 0.75;
}
:where(.title) {
font-weight: bold;
}
:where(.clickable) {
cursor: pointer;
}
:where(.clickable:hover),
:where(.clickable:active) {
background-image: linear-gradient(rgba(0,0,0,0.15), rgba(0,0,0,0.15));
}