mirror of
https://github.com/cosmicoptima/loom.git
synced 2026-07-22 07:40:25 +00:00
319 lines
5.5 KiB
CSS
319 lines
5.5 KiB
CSS
/*
|
|
@settings
|
|
name: Loom
|
|
id: loom
|
|
settings:
|
|
-
|
|
id: ancestor-editor-color
|
|
type: variable-themed-color
|
|
title: Ancestor node text color
|
|
description: Color of ancestor nodes' text in the editor
|
|
format: hex
|
|
opacity: false
|
|
allowEmpty: false
|
|
default-light: "#808080"
|
|
default-dark: "#808080"
|
|
|
|
-
|
|
id: ancestor-editor-background
|
|
type: variable-themed-color
|
|
title: Ancestor node background color
|
|
description: Background color of ancestor nodes in the editor upon hover
|
|
format: hex
|
|
opacity: false
|
|
allowEmpty: false
|
|
default-light: "#eee"
|
|
default-dark: "#111"
|
|
*/
|
|
|
|
body {
|
|
--ancestor-editor-color: #808080;
|
|
}
|
|
.theme-light {
|
|
--ancestor-editor-background: #eee;
|
|
}
|
|
.theme-dark {
|
|
--ancestor-editor-background: #111;
|
|
}
|
|
|
|
/* all views */
|
|
|
|
.loom__view {
|
|
overflow-y: auto;
|
|
}
|
|
|
|
/* nav buttons */
|
|
|
|
.loom__nav-buttons {
|
|
margin-top: 0.5em;
|
|
}
|
|
|
|
/* alt export field */
|
|
|
|
.loom__alt-export-field {
|
|
display: flex;
|
|
flex-direction: row;
|
|
align-items: center;
|
|
width: 100%;
|
|
margin-bottom: 0.8em;
|
|
}
|
|
.loom__alt-export-field input {
|
|
flex-grow: 1;
|
|
}
|
|
.loom__alt-export-field button {
|
|
margin-left: 0.6em;
|
|
}
|
|
|
|
/* search bar */
|
|
|
|
.loom__search-bar {
|
|
width: 100%;
|
|
margin-bottom: 0.8em;
|
|
}
|
|
|
|
.loom__search-bar-no-results {
|
|
background-color: rgba(var(--background-modifier-error-rgb), 0.2) !important;
|
|
}
|
|
|
|
/* settings */
|
|
|
|
.loom__settings {
|
|
margin-bottom: 0.3em;
|
|
}
|
|
|
|
.loom__setting {
|
|
display: flex;
|
|
flex-direction: column;
|
|
}
|
|
.loom__setting label {
|
|
font-size: 0.9em;
|
|
margin-bottom: 0.3em;
|
|
}
|
|
.loom__setting input {
|
|
margin-bottom: 0.6em;
|
|
}
|
|
.loom__setting select {
|
|
margin-bottom: 0.6em;
|
|
}
|
|
|
|
/* all tree headers */
|
|
|
|
.loom__tree-header {
|
|
padding: 0.35em;
|
|
}
|
|
|
|
.loom__tree-header-text {
|
|
color: var(--text-normal);
|
|
font-weight: var(--font-medium);
|
|
}
|
|
|
|
/* bookmarks header */
|
|
|
|
.loom__bookmarks {
|
|
margin-bottom: 0.5em;
|
|
}
|
|
|
|
.loom__bookmarks-count {
|
|
color: var(--text-faint);
|
|
}
|
|
|
|
/* nodes */
|
|
|
|
.loom__node {
|
|
display: flex;
|
|
align-items: center;
|
|
padding: 0;
|
|
}
|
|
.loom__node.is-active {
|
|
background-color: var(--nav-item-background-active);
|
|
}
|
|
|
|
.loom__collapse-button {
|
|
margin-left: 0.6em;
|
|
}
|
|
.loom__collapse-button.loom__is-collapsed {
|
|
transform: rotate(-90deg);
|
|
}
|
|
|
|
.loom__node-bookmark-icon {
|
|
display: flex;
|
|
align-items: center;
|
|
margin-left: 0.3em;
|
|
margin-right: -0.3em;
|
|
}
|
|
|
|
.loom__node-search-result {
|
|
background-color: rgba(255, 255, 0, 0.1);
|
|
}
|
|
.loom__node-search-result.is-active {
|
|
background-color: rgba(255, 255, 0, 0.2);
|
|
}
|
|
.loom__node-search-result:hover {
|
|
background-color: rgba(255, 255, 0, 0.2) !important;
|
|
}
|
|
.loom__node-search-result:not(:hover) {
|
|
padding-right: 0.3em;
|
|
}
|
|
|
|
.loom__node-unread {
|
|
font-weight: bold !important;
|
|
}
|
|
|
|
.loom__node-unread-indicator {
|
|
width: 0.3em;
|
|
height: 0.3em;
|
|
border-radius: 50%;
|
|
background-color: var(--nav-item-color);
|
|
margin-left: 0.6em;
|
|
flex-shrink: 0;
|
|
}
|
|
|
|
.loom__node-text {
|
|
white-space: nowrap;
|
|
overflow: hidden;
|
|
text-overflow: ellipsis;
|
|
padding: 0.35em 0 0.35em 0.6em;
|
|
flex-grow: 1;
|
|
}
|
|
|
|
.loom__node-buttons {
|
|
display: none;
|
|
padding-right: 0.5em;
|
|
}
|
|
.loom__node:hover .loom__node-buttons {
|
|
display: inline-flex !important;
|
|
}
|
|
|
|
.loom__node-button {
|
|
display: inline-flex !important;
|
|
margin-left: -0.025em;
|
|
padding: 0.1em 0.075em;
|
|
border-radius: 0.2em;
|
|
--icon-size: 1.1rem;
|
|
}
|
|
.loom__node-button:hover {
|
|
background-color: var(--nav-item-background-active);
|
|
}
|
|
|
|
.loom__node-footer {
|
|
color: var(--text-faint);
|
|
font-size: 0.9em;
|
|
margin-left: calc(0.85em + 1px);
|
|
padding: 0.35em 0 0.35em 1.2em;
|
|
white-space: nowrap;
|
|
|
|
display: flex;
|
|
align-items: center;
|
|
width: max-content;
|
|
|
|
border-left: 1px solid var(--color-base-35);
|
|
}
|
|
|
|
.loom__node-footer-text {
|
|
margin-left: 0.35em;
|
|
}
|
|
|
|
@keyframes rotating {
|
|
from {
|
|
transform: rotate(0deg);
|
|
}
|
|
to {
|
|
transform: rotate(360deg);
|
|
}
|
|
}
|
|
.loom__node-generating-icon {
|
|
display: inline-flex;
|
|
align-items: center;
|
|
}
|
|
.loom__node-generating-icon svg {
|
|
animation: rotating 2s linear infinite;
|
|
}
|
|
|
|
.loom__node-show-more:hover {
|
|
color: var(--text-normal);
|
|
}
|
|
|
|
.loom__node-children {
|
|
margin-left: 0.85em;
|
|
padding-left: 0.6em;
|
|
border-left: 1px solid var(--color-base-35);
|
|
}
|
|
|
|
/* nodes -- siblings view */
|
|
|
|
.loom__sibling {
|
|
color: var(--nav-item-color);
|
|
font-size: 0.9em;
|
|
|
|
line-height: 1.3;
|
|
margin: 0.2em 0;
|
|
padding: 0.8em;
|
|
white-space: pre-wrap;
|
|
}
|
|
.loom__sibling:hover {
|
|
color: var(--nav-item-color-active);
|
|
}
|
|
.loom__sibling.is-active {
|
|
background-color: var(--nav-item-background-active);
|
|
color: var(--nav-item-color-active);
|
|
}
|
|
|
|
.loom__sibling-ellipsis {
|
|
color: var(--text-faint);
|
|
margin-right: 0.3em;
|
|
}
|
|
|
|
.loom__sibling-separator {
|
|
margin: 0;
|
|
}
|
|
|
|
/* nodes -- editor */
|
|
|
|
.loom__editor-node {
|
|
color: var(--ancestor-editor-color);
|
|
}
|
|
|
|
.loom__editor-node-hover {
|
|
background-color: var(--ancestor-editor-background);
|
|
}
|
|
|
|
.theme-dark .loom__editor-node-border {
|
|
border-right: 2px dashed #333;
|
|
}
|
|
|
|
/* "make prompt from passages" modal */
|
|
|
|
.loom__passage-list {
|
|
max-height: 10em;
|
|
overflow-y: auto;
|
|
}
|
|
|
|
.loom__passage {
|
|
display: flex;
|
|
align-items: center;
|
|
padding: 0.35em 0 0.35em 0.6em;
|
|
}
|
|
.loom__passage:hover {
|
|
background-color: var(--nav-item-background-active);
|
|
}
|
|
|
|
.loom__selected-passages-title {
|
|
font-weight: bold;
|
|
margin: 1em 0 0.5em;
|
|
}
|
|
|
|
.loom__selected-passage-list {
|
|
margin-bottom: 0.75em;
|
|
}
|
|
|
|
.loom__no-passages-selected {
|
|
color: var(--text-faint);
|
|
font-size: var(--font-ui-small);
|
|
padding: 0.35em 0 0.35em 0.6em;
|
|
}
|
|
|
|
/* hidden -- must be at end */
|
|
|
|
.hidden {
|
|
display: none;
|
|
}
|