clone of repo on github
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

452 lines
9.3 KiB

@import './styles/base.css';
@import './styles/publications.css';
@import './styles/visualize.css';
/* Custom styles */
@layer base {
.leather {
@apply bg-primary-0 dark:bg-primary-1000 text-gray-800 dark:text-gray-200;
}
.btn-leather.text-xs {
@apply px-2 py-1;
}
.btn-leather.text-xs svg {
@apply h-3 w-3;
}
.btn-leather.text-sm {
@apply px-3 py-2;
}
.btn-leather.text-sm svg {
@apply h-4 w-4;
}
div[role='tooltip'] button.btn-leather {
@apply hover:text-primary-400 dark:hover:text-primary-500 hover:border-primary-400 dark:hover:border-primary-500 hover:bg-gray-200 dark:hover:bg-gray-700;
}
.image-border {
@apply border border-primary-700;
}
div.card-leather {
@apply shadow-none text-primary-1000 border-s-4 bg-highlight border-primary-200 has-[:hover]:border-primary-700;
@apply dark:bg-primary-1000 dark:border-primary-800 dark:has-[:hover]:bg-primary-950 dark:has-[:hover]:border-primary-500;
}
div.card-leather h1,
div.card-leather h2,
div.card-leather h3,
div.card-leather h4,
div.card-leather h5,
div.card-leather h6 {
@apply text-gray-800 hover:text-primary-400 dark:text-gray-300 dark:hover:text-primary-500;
}
div.card-leather .font-thin {
@apply text-gray-900 hover:text-primary-600 dark:text-gray-200 dark:hover:text-primary-200;
}
main {
@apply max-w-full;
}
main.main-leather,
article.article-leather {
@apply bg-primary-0 dark:bg-primary-1000 text-gray-800 dark:text-gray-300;
}
div.note-leather,
p.note-leather,
section.note-leather {
@apply bg-primary-0 dark:bg-primary-1000 text-gray-800 dark:text-gray-300 p-2 rounded;
}
div.note-leather:hover:not(:has(.note-leather:hover)),
p.note-leather:hover:not(:has(.note-leather:hover)),
section.note-leather:hover:not(:has(.note-leather:hover)) {
@apply hover:bg-primary-100 dark:hover:bg-primary-800;
}
h1.h-leather,
h2.h-leather,
h3.h-leather,
h4.h-leather,
h5.h-leather,
h6.h-leather {
@apply text-gray-800 dark:text-gray-300;
}
h1.h-leather {
@apply text-4xl font-bold;
}
h2.h-leather {
@apply text-3xl font-bold;
}
h3.h-leather {
@apply text-2xl font-bold;
}
h4.h-leather {
@apply text-xl font-bold;
}
h5.h-leather {
@apply text-lg font-semibold;
}
h6.h-leather {
@apply text-base font-semibold;
}
div.modal-leather>div {
@apply bg-primary-0 dark:bg-primary-950 border-b-[1px] border-primary-100 dark:border-primary-600;
}
div.modal-leather>div>h1,
div.modal-leather>div>h2,
div.modal-leather>div>h3,
div.modal-leather>div>h4,
div.modal-leather>div>h5,
div.modal-leather>div>h6 {
@apply text-gray-800 hover:text-gray-800 dark:text-gray-300 dark:hover:text-gray-300;
}
div.modal-leather button {
@apply bg-primary-0 hover:bg-primary-0 dark:bg-primary-950 dark:hover:bg-primary-950 text-gray-800 hover:text-primary-400 dark:text-gray-300 dark:hover:text-primary-500;
}
nav.navbar-leather {
@apply bg-primary-0 dark:bg-primary-1000 z-10;
}
nav.navbar-leather svg {
@apply fill-gray-800 hover:fill-primary-400 dark:fill-gray-300 dark:hover:fill-primary-500;
}
nav.navbar-leather h1,
nav.navbar-leather h2,
nav.navbar-leather h3,
nav.navbar-leather h4,
nav.navbar-leather h5,
nav.navbar-leather h6 {
@apply text-gray-800 hover:text-primary-400 dark:text-gray-300 dark:hover:text-primary-500;
}
aside.sidebar-leather>div {
@apply bg-primary-0 dark:bg-primary-1000;
}
a.sidebar-item-leather {
@apply hover:bg-primary-100 dark:hover:bg-primary-800;
}
div.skeleton-leather div {
@apply bg-primary-100 dark:bg-primary-800;
}
div.textarea-leather {
@apply bg-primary-0 dark:bg-primary-1000;
}
div.textarea-leather>div:nth-child(1),
div.toolbar-leather {
@apply border-none;
}
div.textarea-leather>div:nth-child(2) {
@apply bg-primary-0 dark:bg-primary-1000;
}
div.textarea-leather,
div.textarea-leather textarea {
@apply text-gray-800 dark:text-gray-300;
}
div.tooltip-leather {
@apply text-gray-800 dark:text-gray-300;
}
div[role='tooltip'] button.btn-leather .tooltip-leather {
@apply bg-primary-100 dark:bg-primary-800;
}
/* Network visualization */
.network-link-leather {
@apply stroke-primary-200 fill-primary-200;
}
.network-node-leather {
@apply stroke-primary-600;
}
.network-node-content {
@apply fill-primary-100;
}
}
/* Utilities can be applied via the @apply directive. */
@layer utilities {
.h-leather {
@apply text-gray-800 dark:text-gray-300 pt-4;
}
.h1-leather {
@apply text-4xl font-bold;
}
.h2-leather {
@apply text-3xl font-bold;
}
.h3-leather {
@apply text-2xl font-bold;
}
.h4-leather {
@apply text-xl font-bold;
}
.h5-leather {
@apply text-lg font-semibold;
}
.h6-leather {
@apply text-base font-semibold;
}
/* Lists */
.ol-leather li a,
.ul-leather li a {
@apply text-gray-800 hover:text-primary-400 dark:text-gray-300 dark:hover:text-primary-500;
}
.link {
@apply underline cursor-pointer hover:text-primary-400 dark:hover:text-primary-500;
}
}
@layer components {
/* Legend */
.leather-legend {
@apply relative m-4 sm:m-0 sm:absolute sm:top-1 sm:left-1 flex-shrink-0 p-2 rounded;
@apply shadow-none text-primary-1000 border border-s-4 bg-highlight border-primary-200 has-[:hover]:border-primary-700;
@apply dark:bg-primary-1000 dark:border-primary-800 dark:has-[:hover]:bg-primary-950 dark:has-[:hover]:border-primary-500;
}
/* Tooltip */
.tooltip-leather {
@apply fixed p-4 rounded shadow-lg bg-primary-0 dark:bg-primary-1000 text-gray-800 dark:text-gray-300 border border-gray-200 dark:border-gray-700 transition-colors duration-200;
max-width: 400px;
z-index: 1000;
}
.leather-legend button {
@apply dark:text-white;
}
/* Rendered publication content */
.publication-leather {
@apply flex flex-col space-y-4;
h1,
h2,
h3,
h4,
h5,
h6 {
@apply h-leather;
}
h1 {
@apply h1-leather;
}
h2 {
@apply h2-leather;
}
h3 {
@apply h3-leather;
}
h4 {
@apply h4-leather;
}
h5 {
@apply h5-leather;
}
h6 {
@apply h6-leather;
}
div {
@apply flex flex-col space-y-4;
}
.olist {
@apply flex flex-col space-y-4;
ol {
@apply ol-leather list-decimal px-6 flex flex-col space-y-2;
li {
.paragraph {
@apply py-2;
}
}
}
}
.ulist {
@apply flex flex-col space-y-4;
ul {
@apply ul-leather list-disc px-6 flex flex-col space-y-2;
li {
.paragraph {
@apply py-2;
}
}
}
}
a {
@apply link;
}
.imageblock {
@apply flex flex-col items-center;
.title {
@apply text-sm text-center;
}
}
.stemblock {
@apply bg-gray-100 dark:bg-gray-900 p-4 rounded-lg;
}
.literalblock {
pre {
@apply text-wrap;
}
}
table {
@apply w-full overflow-x-auto;
caption {
@apply text-sm;
}
thead,
tbody {
th,
td {
@apply border border-gray-200 dark:border-gray-700;
}
}
}
}
/* Footnotes */
.footnote-ref {
text-decoration: none;
color: var(--color-primary);
}
.footnotes {
margin-top: 2rem;
font-size: 0.875rem;
color: var(--color-text-muted);
}
.footnotes hr {
margin: 1rem 0;
border-top: 1px solid var(--color-border);
}
.footnotes ol {
padding-left: 1rem;
}
.footnotes li {
margin-bottom: 0.5rem;
}
.footnote-backref {
text-decoration: none;
margin-left: 0.5rem;
color: var(--color-primary);
}
.note-leather .footnote-ref,
.note-leather .footnote-backref {
color: var(--color-leather-primary);
}
/* Scrollable content */
.description-textarea,
.prose-content {
overflow-y: scroll !important;
scrollbar-width: thin !important;
scrollbar-color: rgba(156, 163, 175, 0.5) transparent !important;
}
.description-textarea {
min-height: 100% !important;
}
.description-textarea::-webkit-scrollbar,
.prose-content::-webkit-scrollbar {
width: 8px !important;
display: block !important;
}
.description-textarea::-webkit-scrollbar-track,
.prose-content::-webkit-scrollbar-track {
background: transparent !important;
}
.description-textarea::-webkit-scrollbar-thumb,
.prose-content::-webkit-scrollbar-thumb {
background-color: rgba(156, 163, 175, 0.5) !important;
border-radius: 4px !important;
}
.description-textarea::-webkit-scrollbar-thumb:hover,
.prose-content::-webkit-scrollbar-thumb:hover {
background-color: rgba(156, 163, 175, 0.7) !important;
}
/* Tab content */
.tab-content {
position: relative;
display: flex;
flex-direction: column;
}
/* Input styles */
input[type="text"],
input[type="email"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="url"],
textarea {
@apply bg-primary-0 dark:bg-primary-1000 text-gray-800 dark:text-gray-300 border-s-4 border-primary-200 rounded shadow-none px-4 py-2;
@apply focus:border-primary-400 dark:focus:border-primary-500;
}
}