bfloydd_coalesce/styles/components/blocks.css
2025-12-16 15:32:14 -07:00

177 lines
No EOL
4 KiB
CSS

/* ============================
Coalesce Blocks Component Styles
============================ */
/* Block header row */
.coalesce-block-header {
display: flex;
align-items: center;
cursor: pointer;
/* Performance optimization */
will-change: transform;
transform: translateZ(0);
}
.coalesce-block-header:hover {
background-color: var(--background-modifier-hover);
}
/* Toggle arrow inside block header */
.coalesce-toggle-arrow {
cursor: pointer;
margin-right: 5px;
display: flex;
align-items: center;
justify-content: center;
}
/* Toggle arrow icon styling */
.coalesce-toggle-arrow svg {
width: var(--coalesce-icon-size-sm);
height: var(--coalesce-icon-size-sm);
transition: opacity 0.2s ease;
}
/* Block title link */
.coalesce-block-title {
display: block;
margin-bottom: 0px;
text-decoration: none;
color: var(--text-normal);
transition: color 0.2s ease;
}
.coalesce-block-title:hover {
color: var(--interactive-accent);
text-decoration: underline;
}
.coalesce-block-title:active {
color: var(--interactive-accent-hover);
}
/* Content preview */
.coalesce-content-preview {
color: var(--text-muted);
font-size: 0.9em;
padding: 5px;
/* Performance optimization */
will-change: transform;
transform: translateZ(0);
}
.coalesce-content-preview p {
margin-top: 5px;
margin-bottom: 5px;
padding: 0;
}
/* Checkmark container - smaller and more compact */
.coalesce-checkmark-container {
display: flex;
align-items: center;
justify-content: center;
width: 20px;
height: 20px;
margin-left: auto;
}
/* Obsidian-style checkmark icon */
.coalesce-checkmark {
color: var(--interactive-accent);
width: 16px;
height: 16px;
}
/* Checkmark states */
.coalesce-checkmark-container .coalesce-checkmark {
display: none;
}
.coalesce-checkmark-container.is-checked .coalesce-checkmark {
display: block;
color: var(--interactive-accent);
}
/* Block item container and states */
.coalesce-backlink-item {
/* Performance optimization */
will-change: transform;
transform: translateZ(0);
transition: opacity 0.15s ease-out;
}
.coalesce-backlink-item.has-alias {
display: block;
opacity: 1;
pointer-events: auto;
}
.coalesce-backlink-item.no-alias {
display: none;
opacity: 0.3;
pointer-events: none;
}
/* Collapsed block content */
.is-collapsed .coalesce-content-preview {
display: none !important;
}
/* Add Heading prompt in block header */
.coalesce-add-heading-prompt {
color: var(--text-muted) !important;
cursor: pointer !important;
text-decoration: underline !important;
text-decoration-style: dotted !important;
transition: all 0.2s ease !important;
}
.coalesce-add-heading-prompt:hover {
color: var(--text-accent) !important;
text-decoration-color: var(--text-accent) !important;
}
.coalesce-add-heading-prompt:active {
color: var(--text-accent-hover) !important;
}
/* Open note icon next to Add heading */
.coalesce-add-heading-open-note {
margin-left: 6px;
padding: 2px;
line-height: 0;
background: transparent;
border: none;
color: var(--text-muted);
cursor: pointer;
vertical-align: middle;
}
.coalesce-add-heading-open-note:hover {
color: var(--text-accent);
}
/* Heading popup modal styles */
.coalesce-heading-popup-modal {
position: fixed !important;
top: 0 !important;
left: 0 !important;
width: 100% !important;
height: 100% !important;
background: rgba(0, 0, 0, 0.5) !important;
display: flex !important;
justify-content: center !important;
align-items: center !important;
z-index: 10000 !important;
}
.coalesce-heading-popup-content {
background: var(--background-primary) !important;
border: 1px solid var(--border-color) !important;
border-radius: 8px !important;
padding: 20px !important;
min-width: 300px !important;
max-width: 500px !important;
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15) !important;
}