1395 lines
32 KiB
CSS
Executable File
1395 lines
32 KiB
CSS
Executable File
/* src/styles/view/layout.css */
|
|
.red-preview-wrapper {
|
|
padding: 10px 20px 20px 20px;
|
|
margin: 10px;
|
|
height: calc(100% - 180px);
|
|
overflow-y: auto;
|
|
background: var(--background-primary);
|
|
flex: 1;
|
|
border-radius: 12px;
|
|
box-shadow: 0 2px 12px rgba(0, 0, 0, 0.04);
|
|
border: 1px solid rgba(82, 144, 220, 0.1);
|
|
}
|
|
.red-empty-state {
|
|
display: flex;
|
|
justify-content: center;
|
|
align-items: center;
|
|
height: 100%;
|
|
color: #999;
|
|
font-size: 16px;
|
|
}
|
|
.red-preview-container {
|
|
position: relative;
|
|
min-width: 490px;
|
|
aspect-ratio: 3/4;
|
|
display: flex;
|
|
justify-content: center;
|
|
align-items: flex-start;
|
|
background: var(--background-primary-alt);
|
|
border-radius: 12px;
|
|
padding: 20px;
|
|
}
|
|
.red-preview-header {
|
|
padding-bottom: 10px;
|
|
}
|
|
.red-image-preview {
|
|
width: 100%;
|
|
max-width: 450px;
|
|
aspect-ratio: 3/4;
|
|
border-radius: 8px;
|
|
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
|
|
padding: 20px;
|
|
position: relative;
|
|
display: flex;
|
|
flex-direction: column;
|
|
overflow: hidden;
|
|
}
|
|
.red-content-wrapper {
|
|
flex: 1;
|
|
overflow: hidden;
|
|
}
|
|
.red-nav-button {
|
|
width: 40px;
|
|
height: 40px;
|
|
border: none;
|
|
border-radius: 50%;
|
|
background: rgba(255, 255, 255, 0.9);
|
|
color: #333;
|
|
font-size: 20px;
|
|
cursor: pointer;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
transition: all 0.2s ease;
|
|
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
|
|
}
|
|
.red-nav-button:hover {
|
|
background: white;
|
|
transform: scale(1.1);
|
|
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
|
|
}
|
|
.red-page-indicator {
|
|
padding: 6px 12px;
|
|
background: rgba(255, 255, 255, 0.9);
|
|
border-radius: 16px;
|
|
font-size: 14px;
|
|
color: #333;
|
|
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
|
|
}
|
|
.red-nav-container {
|
|
position: fixed;
|
|
bottom: 110px;
|
|
left: 50%;
|
|
transform: translateX(-50%);
|
|
display: flex;
|
|
justify-content: center;
|
|
align-items: center;
|
|
gap: 20px;
|
|
z-index: 100;
|
|
padding: 10px;
|
|
background: rgba(255, 255, 255, 0.1);
|
|
backdrop-filter: blur(8px);
|
|
border-radius: 20px;
|
|
}
|
|
.red-nav-button {
|
|
width: 40px;
|
|
height: 40px;
|
|
border: none;
|
|
border-radius: 50%;
|
|
background: rgba(255, 255, 255, 0.9);
|
|
color: #333;
|
|
font-size: 20px;
|
|
cursor: pointer;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
transition: all 0.2s ease;
|
|
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
|
|
backdrop-filter: blur(4px);
|
|
}
|
|
.red-nav-button:hover {
|
|
background: white;
|
|
transform: scale(1.1);
|
|
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
|
|
}
|
|
.red-content-section {
|
|
display: none;
|
|
margin: 0 13px;
|
|
}
|
|
.red-content-section[data-index="0"] {
|
|
display: block;
|
|
}
|
|
.red-section-active {
|
|
display: block;
|
|
}
|
|
.red-preview-container section:not(.red-section-active) {
|
|
display: none;
|
|
}
|
|
.red-nav-hidden {
|
|
visibility: hidden;
|
|
}
|
|
.red-section-visible {
|
|
display: block !important;
|
|
}
|
|
.red-section-hidden {
|
|
display: none !important;
|
|
}
|
|
.red-empty-message {
|
|
text-align: center;
|
|
padding: 40px 20px;
|
|
color: var(--text-error);
|
|
font-size: 15px;
|
|
background: var(--background-primary-alt);
|
|
border: 1px dashed var(--background-modifier-border);
|
|
border-radius: 12px;
|
|
margin: 40px auto;
|
|
max-width: 320px;
|
|
line-height: 1.8;
|
|
white-space: pre-line;
|
|
animation: fadeIn 0.3s ease;
|
|
}
|
|
@keyframes fadeIn {
|
|
from {
|
|
opacity: 0;
|
|
transform: translateY(10px);
|
|
}
|
|
to {
|
|
opacity: 1;
|
|
transform: translateY(0);
|
|
}
|
|
}
|
|
|
|
/* src/styles/view/tool-bar.css */
|
|
.red-view-content {
|
|
height: 100%;
|
|
padding: 10px 10px 0 10px;
|
|
overflow: auto;
|
|
background: var(--background-primary);
|
|
}
|
|
.red-toolbar,
|
|
.red-bottom-bar {
|
|
padding: 15px 0;
|
|
max-width: 580px;
|
|
}
|
|
.red-toolbar {
|
|
top: 0;
|
|
border-radius: 8px;
|
|
border-bottom: 2px solid var(--background-modifier-border);
|
|
}
|
|
.red-bottom-bar {
|
|
bottom: 0;
|
|
border-radius: 8px;
|
|
border-top: 2px solid var(--background-modifier-border);
|
|
}
|
|
.red-controls-group {
|
|
display: flex;
|
|
gap: 12px;
|
|
align-items: center;
|
|
width: 100%;
|
|
justify-content: flex-start;
|
|
flex-wrap: nowrap;
|
|
min-width: 0;
|
|
}
|
|
.red-controls-group button {
|
|
height: 36px;
|
|
border-radius: 8px;
|
|
border: 1px solid var(--background-modifier-border);
|
|
background: var(--background-primary);
|
|
color: var(--text-normal);
|
|
font-size: 14px;
|
|
box-shadow: 0 1px 3px var(--background-modifier-box-shadow);
|
|
flex: 1;
|
|
white-space: nowrap;
|
|
overflow: hidden;
|
|
}
|
|
.red-controls-group button span {
|
|
overflow: hidden;
|
|
text-overflow: ellipsis;
|
|
white-space: nowrap;
|
|
min-width: 0;
|
|
}
|
|
.red-controls-group button:hover {
|
|
background: var(--background-modifier-hover);
|
|
transform: translateY(-1px);
|
|
box-shadow: 0 4px 12px var(--background-modifier-box-shadow);
|
|
}
|
|
.red-controls-group button:disabled {
|
|
opacity: 0.5;
|
|
background: var(--background-primary) !important;
|
|
color: var(--text-muted) !important;
|
|
cursor: not-allowed !important;
|
|
transform: none;
|
|
border-color: var(--background-modifier-border) !important;
|
|
box-shadow: none;
|
|
}
|
|
.red-controls-group .red-lock-button,
|
|
.red-controls-group .red-help-button {
|
|
width: 36px;
|
|
padding: 0;
|
|
margin: 0 20px 0 10px;
|
|
flex: none;
|
|
}
|
|
.red-controls-group .red-like-button {
|
|
flex: none;
|
|
}
|
|
.red-controls-group .red-export-button {
|
|
background-color: var(--text-accent);
|
|
color: var(--text-on-accent);
|
|
}
|
|
.red-controls-group .red-export-button:hover {
|
|
color: var(--text-on-accent);
|
|
background-color: var(--text-accent);
|
|
}
|
|
.red-controls-group .red-background-button {
|
|
width: 36px;
|
|
padding: 0;
|
|
flex: none;
|
|
}
|
|
.red-select-container {
|
|
position: relative;
|
|
max-width: 200px;
|
|
flex: 1;
|
|
}
|
|
.red-select {
|
|
height: 36px;
|
|
padding: 0 12px;
|
|
border: 1px solid var(--background-modifier-border);
|
|
border-radius: 8px;
|
|
background: var(--background-primary);
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
cursor: pointer;
|
|
user-select: none;
|
|
transition: all 0.2s ease;
|
|
color: var(--text-normal);
|
|
box-shadow: 0 1px 3px var(--background-modifier-box-shadow);
|
|
white-space: nowrap;
|
|
overflow: hidden;
|
|
}
|
|
.red-text {
|
|
overflow: hidden;
|
|
text-overflow: ellipsis;
|
|
white-space: nowrap;
|
|
flex: 1;
|
|
min-width: 0;
|
|
}
|
|
.red-select:hover {
|
|
background: var(--background-modifier-hover);
|
|
box-shadow: 0 2px 6px var(--background-modifier-box-shadow);
|
|
}
|
|
.red-select.disabled {
|
|
opacity: 0.5;
|
|
background: var(--background-secondary) !important;
|
|
color: var(--text-muted) !important;
|
|
border-color: var(--background-modifier-border) !important;
|
|
cursor: not-allowed;
|
|
box-shadow: none;
|
|
}
|
|
.red-select-arrow {
|
|
color: var(--text-normal);
|
|
font-size: 12px;
|
|
transition: transform 0.2s ease;
|
|
margin-left: 4px;
|
|
flex-shrink: 0;
|
|
}
|
|
.red-select-dropdown {
|
|
position: absolute;
|
|
top: calc(100% + 4px);
|
|
left: 0;
|
|
width: 100%;
|
|
background: var(--background-primary);
|
|
border: 1px solid var(--background-modifier-border);
|
|
border-radius: 8px;
|
|
box-shadow: 0 4px 12px var(--background-modifier-box-shadow);
|
|
display: none;
|
|
z-index: 1000;
|
|
overflow: hidden;
|
|
}
|
|
.red-select-dropdown.red-show {
|
|
display: block;
|
|
}
|
|
.red-select-item {
|
|
padding: 8px 12px;
|
|
cursor: pointer;
|
|
transition: all 0.2s ease;
|
|
color: var(--text-normal);
|
|
}
|
|
.red-select-item:hover {
|
|
background: var(--background-modifier-hover);
|
|
}
|
|
.red-select-item.red-selected {
|
|
background: var(--background-modifier-hover);
|
|
color: var(--text-accent);
|
|
}
|
|
.red-font-size-group {
|
|
height: 36px;
|
|
flex: 1;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
background: var(--background-primary);
|
|
border: 1px solid var(--background-modifier-border);
|
|
border-radius: 8px;
|
|
padding: 0;
|
|
overflow: hidden;
|
|
box-shadow: 0 1px 3px var(--background-modifier-box-shadow);
|
|
}
|
|
.red-font-size-input {
|
|
width: 30px;
|
|
text-align: center;
|
|
}
|
|
.red-help-tooltip {
|
|
position: absolute;
|
|
left: 30px;
|
|
bottom: 80px;
|
|
width: 480px;
|
|
padding: 12px 16px;
|
|
background: var(--background-primary);
|
|
border: 2px solid var(--background-modifier-border);
|
|
border-radius: 8px;
|
|
box-shadow: 0 4px 12px var(--background-modifier-box-shadow);
|
|
font-size: 13px;
|
|
line-height: 1.6;
|
|
color: var(--text-normal);
|
|
display: none;
|
|
white-space: pre-line;
|
|
z-index: 1000;
|
|
}
|
|
.red-help-button:hover + .red-help-tooltip {
|
|
display: block;
|
|
}
|
|
.red-copy-button {
|
|
position: absolute;
|
|
top: 24px;
|
|
right: 30px;
|
|
z-index: 100;
|
|
background-color: var(--background-primary);
|
|
color: var(--text-normal);
|
|
border: none;
|
|
border-radius: 4px;
|
|
padding: 5px 8px;
|
|
font-size: 16px;
|
|
cursor: pointer;
|
|
opacity: 0;
|
|
transition: opacity 0.2s ease;
|
|
}
|
|
.red-preview-container:hover .red-copy-button {
|
|
opacity: 1;
|
|
}
|
|
.red-copy-button:hover {
|
|
background-color: var(--background-primary-alt);
|
|
}
|
|
.red-copy-button:disabled {
|
|
cursor: not-allowed;
|
|
opacity: 0.5;
|
|
}
|
|
|
|
/* src/styles/view/about-modal.css */
|
|
.red-about-overlay {
|
|
position: fixed;
|
|
top: 0;
|
|
left: 0;
|
|
width: 100%;
|
|
height: 100%;
|
|
background: var(--background-modifier-cover);
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
z-index: 1000;
|
|
}
|
|
.red-about-modal {
|
|
background: var(--background-primary);
|
|
border-radius: 12px;
|
|
padding: 20px 20px;
|
|
width: 520px;
|
|
max-height: 90vh;
|
|
position: relative;
|
|
display: flex;
|
|
flex-direction: column;
|
|
gap: 10px;
|
|
overflow-y: auto;
|
|
}
|
|
.red-about-modal::-webkit-scrollbar {
|
|
width: 8px;
|
|
}
|
|
.red-about-modal::-webkit-scrollbar-track {
|
|
background: var(--background-primary-alt);
|
|
border-radius: 4px;
|
|
}
|
|
.red-about-modal::-webkit-scrollbar-thumb {
|
|
background: var(--background-modifier-border);
|
|
border-radius: 4px;
|
|
}
|
|
.red-about-modal::-webkit-scrollbar-thumb:hover {
|
|
background: var(--text-muted);
|
|
}
|
|
.red-about-close {
|
|
position: absolute;
|
|
top: 7px;
|
|
right: 7px;
|
|
width: 28px;
|
|
height: 28px;
|
|
background: transparent;
|
|
border: none;
|
|
border-radius: 6px;
|
|
font-size: 17px;
|
|
color: var(--text-muted);
|
|
cursor: pointer;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
transition: all 0.2s ease;
|
|
}
|
|
@media screen and (-webkit-min-device-pixel-ratio: 0) and (min-color-index:0) {
|
|
.red-about-close {
|
|
right: auto;
|
|
left: 7px;
|
|
}
|
|
}
|
|
.red-about-close:hover {
|
|
background: var(--background-primary-alt);
|
|
color: var(--text-normal);
|
|
}
|
|
.red-about-section {
|
|
padding: 10px;
|
|
margin: 8px 20px 0 20px;
|
|
border-radius: 8px;
|
|
}
|
|
.red-about-intro-section {
|
|
background: #fafafa;
|
|
border: 1px solid #f0f0f0;
|
|
}
|
|
.red-about-donate-section {
|
|
background: #fff9f5;
|
|
border: 1px solid #ffe4d9;
|
|
}
|
|
.red-about-mp-section {
|
|
background: #f5fff7;
|
|
border: 1px solid #e6f7e9;
|
|
}
|
|
.red-about-title {
|
|
font-size: 20px;
|
|
font-weight: 600;
|
|
color: var(--text-normal);
|
|
margin: 0 0 1px;
|
|
text-align: center;
|
|
letter-spacing: 0.5px;
|
|
}
|
|
.red-about-name {
|
|
color: var(--text-accent);
|
|
font-weight: 600;
|
|
font-size: 16px;
|
|
padding: 0 2px;
|
|
}
|
|
.red-about-identity {
|
|
color: var(--text-normal);
|
|
font-weight: 500;
|
|
background: var(--background-primary-alt);
|
|
padding: 0 4px;
|
|
border-radius: 3px;
|
|
}
|
|
.red-about-highlight {
|
|
color: var(--text-accent);
|
|
font-weight: 500;
|
|
}
|
|
.red-about-value {
|
|
color: var(--text-accent);
|
|
font-weight: 500;
|
|
}
|
|
.red-about-subtitle {
|
|
font-size: 18px;
|
|
color: var(--text-accent);
|
|
margin: 8px 0 12px;
|
|
letter-spacing: 0.3px;
|
|
font-weight: 600;
|
|
}
|
|
.red-about-intro {
|
|
font-size: 15px;
|
|
color: var(--text-normal);
|
|
margin: 8px 0;
|
|
line-height: 1.8;
|
|
letter-spacing: 0.2px;
|
|
}
|
|
.red-about-role,
|
|
.red-about-desc {
|
|
font-size: 14.5px;
|
|
color: var(--text-muted);
|
|
margin: 6px 0;
|
|
line-height: 1.8;
|
|
letter-spacing: 0.2px;
|
|
}
|
|
.red-about-emphasis {
|
|
font-weight: 500;
|
|
color: var(--text-error);
|
|
}
|
|
.red-about-footer {
|
|
font-size: 15px;
|
|
color: var(--text-normal);
|
|
text-align: center;
|
|
margin: 1px 0 0;
|
|
padding: 1px 1px;
|
|
background: var(--background-primary-alt);
|
|
border-radius: 8px;
|
|
font-weight: 500;
|
|
letter-spacing: 0.3px;
|
|
line-height: 1.6;
|
|
}
|
|
.red-about-footer strong {
|
|
color: var(--text-accent);
|
|
font-weight: 600;
|
|
}
|
|
.red-about-qr {
|
|
width: 100%;
|
|
height: 150px;
|
|
margin: 5px 0;
|
|
padding: 5px;
|
|
background: var(--background-primary);
|
|
border-radius: 8px;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
}
|
|
.red-about-qr img {
|
|
width: 100%;
|
|
height: 100%;
|
|
object-fit: contain;
|
|
}
|
|
|
|
/* src/styles/view/backgroud-setting-modal.css */
|
|
.red-background-modal {
|
|
max-width: 500px;
|
|
}
|
|
.red-background-container {
|
|
padding: 0 15px;
|
|
display: flex;
|
|
flex-direction: column;
|
|
align-items: center;
|
|
}
|
|
.red-background-title {
|
|
margin: 0 0 16px 0;
|
|
text-align: center;
|
|
}
|
|
.red-background-preview {
|
|
width: 350px;
|
|
aspect-ratio: 3/4;
|
|
border: 1px solid var(--background-modifier-border);
|
|
margin: 0 auto 16px;
|
|
overflow: hidden;
|
|
position: relative;
|
|
border-radius: 4px;
|
|
}
|
|
.red-background-preview-image {
|
|
width: 100%;
|
|
height: 100%;
|
|
cursor: move;
|
|
background-position: center;
|
|
background-repeat: no-repeat;
|
|
background-size: contain;
|
|
}
|
|
.red-background-preview-image.dragging {
|
|
cursor: grabbing;
|
|
}
|
|
.red-background-controls {
|
|
width: 100%;
|
|
}
|
|
.red-background-controls .slider {
|
|
width: 200px;
|
|
}
|
|
.red-background-builtins {
|
|
display: flex;
|
|
gap: 12px;
|
|
margin-bottom: 18px;
|
|
justify-content: center;
|
|
flex-wrap: wrap;
|
|
}
|
|
.red-bg-thumb {
|
|
width: 46px;
|
|
aspect-ratio: 3/4;
|
|
object-fit: cover;
|
|
border-radius: 6px;
|
|
border: 2px solid var(--background-modifier-border);
|
|
box-shadow: 0 2px 8px rgba(80, 180, 255, 0.08);
|
|
cursor: pointer;
|
|
transition: border-color 0.2s, box-shadow 0.2s;
|
|
background: #f6f8fa;
|
|
}
|
|
.red-bg-thumb:hover {
|
|
border-color: var(--text-accent);
|
|
box-shadow: 0 4px 16px rgba(80, 180, 255, 0.18);
|
|
}
|
|
.red-bg-thumb.selected {
|
|
border-color: var(--text-accent);
|
|
box-shadow: 0 0 0 2px var(--text-accent);
|
|
}
|
|
|
|
/* src/styles/theme/theme-user-info.css */
|
|
.red-user-info {
|
|
display: flex;
|
|
justify-content: space-between;
|
|
align-items: center;
|
|
padding: 10px 12px 3px 12px;
|
|
line-height: normal;
|
|
}
|
|
.red-user-left {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 12px;
|
|
}
|
|
.red-user-avatar {
|
|
width: 42px;
|
|
height: 42px;
|
|
border-radius: 50%;
|
|
overflow: hidden;
|
|
cursor: pointer;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
}
|
|
.red-user-avatar img {
|
|
width: 100%;
|
|
height: 100% !important;
|
|
object-fit: cover;
|
|
border-radius: 50%;
|
|
}
|
|
.red-avatar-placeholder {
|
|
width: 100%;
|
|
height: 100%;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
background-color: var(--background-primary-alt);
|
|
border-radius: 50%;
|
|
transition: all 0.3s ease;
|
|
}
|
|
.red-avatar-upload-icon {
|
|
font-size: 20px;
|
|
opacity: 0.6;
|
|
}
|
|
.red-avatar-placeholder:hover {
|
|
background-color: var(--background-modifier-border);
|
|
}
|
|
.red-avatar-placeholder:hover .red-avatar-upload-icon {
|
|
opacity: 0.8;
|
|
}
|
|
.red-user-meta {
|
|
display: flex;
|
|
flex-direction: column;
|
|
gap: 1px;
|
|
}
|
|
.red-user-name-container {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 4px;
|
|
}
|
|
.red-user-name {
|
|
font-size: 16px;
|
|
font-weight: 600;
|
|
color: var(--text-normal);
|
|
cursor: pointer;
|
|
}
|
|
.red-user-id {
|
|
font-size: 14px;
|
|
color: var(--text-muted);
|
|
cursor: pointer;
|
|
}
|
|
.red-user-right {
|
|
color: var(--text-muted);
|
|
font-size: 14px;
|
|
}
|
|
.red-user-edit-input {
|
|
border: none;
|
|
border-bottom: 1px solid var(--background-modifier-border);
|
|
outline: none;
|
|
padding: 2px 4px;
|
|
font-size: inherit;
|
|
font-family: inherit;
|
|
background: transparent;
|
|
color: var(--text-normal);
|
|
}
|
|
.red-user-avatar:hover,
|
|
.red-user-name:hover,
|
|
.red-user-id:hover {
|
|
opacity: 0.8;
|
|
}
|
|
|
|
/* src/styles/template/red-notes.css */
|
|
.red-notes-header .red-notes-bar {
|
|
position: relative;
|
|
height: 30px;
|
|
padding: 30px 0 0 0;
|
|
color: #f8c744;
|
|
font-size: 17px;
|
|
}
|
|
.red-notes-bar:before {
|
|
content: "";
|
|
position: absolute;
|
|
left: 0;
|
|
top: 3px;
|
|
height: 24px;
|
|
line-height: 28px;
|
|
padding-left: 24px;
|
|
width: 120px;
|
|
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 24 24' fill='none' stroke='rgb(248, 199, 68)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m15 18-6-6 6-6'%3E%3C/path%3E%3C/svg%3E");
|
|
background-repeat: no-repeat;
|
|
}
|
|
.red-notes-title {
|
|
position: absolute;
|
|
left: 24px;
|
|
top: 3px;
|
|
height: 24px;
|
|
line-height: 28px;
|
|
cursor: pointer;
|
|
}
|
|
.red-notes-edit-input {
|
|
position: absolute;
|
|
left: 24px;
|
|
top: 3px;
|
|
height: 24px;
|
|
line-height: 24px;
|
|
background: transparent;
|
|
border: none;
|
|
border-bottom: 1px solid #f8c744;
|
|
color: #f8c744;
|
|
font-size: 17px;
|
|
outline: none;
|
|
width: 120px;
|
|
}
|
|
.red-notes-bar:after {
|
|
content: "";
|
|
position: absolute;
|
|
right: 0;
|
|
top: 3px;
|
|
width: 24px;
|
|
height: 24px;
|
|
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(248, 199, 68)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cpath d='M17 12h.01'%3E%3C/path%3E%3Cpath d='M12 12h.01'%3E%3C/path%3E%3Cpath d='M7 12h.01'%3E%3C/path%3E%3C/svg%3E");
|
|
background-repeat: no-repeat;
|
|
}
|
|
.red-notes-actions {
|
|
position: absolute;
|
|
right: 60px;
|
|
top: 2px;
|
|
width: 24px;
|
|
height: 24px;
|
|
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(248, 199, 68)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-8'%3E%3C/path%3E%3Cpolyline points='16 6 12 2 8 6'%3E%3C/polyline%3E%3Cline x1='12' x2='12' y1='2' y2='15'%3E%3C/line%3E%3C/svg%3E");
|
|
background-repeat: no-repeat;
|
|
}
|
|
|
|
/* src/styles/element/markdown-element.css */
|
|
.red-code-dots {
|
|
margin: 8px 0 12px 0;
|
|
display: flex;
|
|
gap: 6px;
|
|
}
|
|
.red-code-dot {
|
|
width: 12px;
|
|
height: 12px;
|
|
border-radius: 50%;
|
|
}
|
|
.red-code-dot-red {
|
|
background-color: #ff5f56;
|
|
}
|
|
.red-code-dot-yellow {
|
|
background-color: #ffbd2e;
|
|
}
|
|
.red-code-dot-green {
|
|
background-color: #27c93f;
|
|
}
|
|
.red-link {
|
|
color: var(--text-accent);
|
|
text-decoration: none;
|
|
}
|
|
.red-table {
|
|
border-collapse: collapse;
|
|
margin: 1em 0;
|
|
width: 100%;
|
|
}
|
|
.red-table th,
|
|
.red-table td {
|
|
border: 1px solid var(--background-modifier-border);
|
|
padding: 8px;
|
|
}
|
|
.red-hr {
|
|
border: none;
|
|
border-top: 1px solid var(--background-modifier-border);
|
|
margin: 20px 0;
|
|
}
|
|
.red-del {
|
|
text-decoration: line-through;
|
|
}
|
|
.red-task-list-item {
|
|
list-style: none;
|
|
}
|
|
.red-task-list-item input[type=checkbox] {
|
|
margin-right: 6px;
|
|
}
|
|
.red-footnote {
|
|
color: var(--text-accent);
|
|
text-decoration: none;
|
|
}
|
|
.red-image {
|
|
max-width: 100%;
|
|
height: auto;
|
|
display: block;
|
|
margin: 1em auto;
|
|
}
|
|
|
|
/* src/styles/settings/settings.css */
|
|
.red-settings {
|
|
margin: 0 auto;
|
|
padding: 20px;
|
|
background-color: var(--background-primary);
|
|
border-radius: 10px;
|
|
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
|
|
}
|
|
.red-settings h2 {
|
|
margin: 20px 0;
|
|
padding-bottom: 1rem;
|
|
border-bottom: 2px solid var(--background-modifier-border);
|
|
font-size: 1.6em;
|
|
color: var(--text-normal);
|
|
}
|
|
.red-settings .settings-section {
|
|
margin-bottom: 2rem;
|
|
border: 1px solid var(--background-modifier-border);
|
|
border-radius: 8px;
|
|
overflow-y: auto;
|
|
background-color: var(--background-secondary);
|
|
}
|
|
.red-settings .settings-section-header {
|
|
display: flex;
|
|
align-items: center;
|
|
cursor: pointer;
|
|
padding: 1.2rem;
|
|
background-color: var(--background-secondary);
|
|
transition: background-color 0.3s ease;
|
|
}
|
|
.red-settings .settings-section-header:hover {
|
|
background-color: var(--background-secondary-alt);
|
|
}
|
|
.red-settings .settings-section-header h4 {
|
|
margin: 0;
|
|
flex: 1;
|
|
font-size: 1.2em;
|
|
color: var(--text-normal);
|
|
}
|
|
.red-settings .settings-section-toggle {
|
|
margin-right: 0.5rem;
|
|
color: var(--text-muted);
|
|
}
|
|
.red-settings .settings-section-content {
|
|
display: none;
|
|
padding: 20px 10px;
|
|
background-color: var(--background-primary);
|
|
}
|
|
.red-settings .settings-section.is-expanded .settings-section-content {
|
|
display: block;
|
|
}
|
|
.red-settings .theme-management {
|
|
max-height: 400px;
|
|
overflow-y: auto;
|
|
padding: 0 12px;
|
|
}
|
|
.red-settings .theme-management::-webkit-scrollbar {
|
|
width: 8px;
|
|
}
|
|
.red-settings .theme-management::-webkit-scrollbar-track {
|
|
background: var(--background-primary);
|
|
border-radius: 4px;
|
|
}
|
|
.red-settings .theme-management::-webkit-scrollbar-thumb {
|
|
background: var(--background-modifier-border);
|
|
border-radius: 4px;
|
|
}
|
|
.red-settings .theme-management::-webkit-scrollbar-thumb:hover {
|
|
background: var(--background-modifier-border-hover);
|
|
}
|
|
.red-settings .theme-list {
|
|
padding: 15px 0;
|
|
}
|
|
.red-settings .theme-list h4 {
|
|
margin: 0 0 1.5rem;
|
|
color: var(--text-normal);
|
|
font-size: 1.2em;
|
|
}
|
|
.red-settings .theme-item {
|
|
margin-bottom: 0.8rem;
|
|
padding: 1rem;
|
|
border-radius: 8px;
|
|
background-color: var(--background-primary);
|
|
border: 1px solid var(--background-modifier-border);
|
|
transition: all 0.3s ease;
|
|
}
|
|
.red-settings .theme-item:hover {
|
|
box-shadow: 0 4px 12px var(--background-modifier-box-shadow);
|
|
}
|
|
.red-settings .theme-item .setting-item {
|
|
border: none;
|
|
padding: 12px;
|
|
}
|
|
.red-settings .theme-item .setting-item-info {
|
|
margin-right: 1.5rem;
|
|
}
|
|
.red-settings .theme-item .setting-item-name {
|
|
font-size: 1.2em;
|
|
font-weight: 600;
|
|
color: var(--text-normal);
|
|
}
|
|
.red-settings .theme-item .setting-item-description {
|
|
color: var(--text-muted);
|
|
}
|
|
.red-settings .theme-item .setting-item-control .clickable-icon {
|
|
padding: 6px;
|
|
border-radius: 6px;
|
|
color: var(--text-muted);
|
|
}
|
|
.red-settings .theme-item .setting-item-control .clickable-icon:hover {
|
|
color: var(--text-normal);
|
|
background-color: var(--background-modifier-hover);
|
|
}
|
|
.theme-visibility-container {
|
|
margin-top: 20px;
|
|
}
|
|
.theme-visibility-container h3 {
|
|
margin-bottom: 15px;
|
|
font-size: 1.3em;
|
|
color: var(--text-normal);
|
|
}
|
|
.theme-selection-container {
|
|
display: flex;
|
|
margin-top: 10px;
|
|
gap: 15px;
|
|
align-items: stretch;
|
|
}
|
|
.all-themes-container,
|
|
.visible-themes-container {
|
|
flex: 1;
|
|
border: 1px solid var(--background-modifier-border);
|
|
border-radius: 8px;
|
|
padding: 15px;
|
|
background-color: var(--background-primary);
|
|
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
|
|
}
|
|
.all-themes-container h4,
|
|
.visible-themes-container h4 {
|
|
margin: 0 0 15px;
|
|
padding-bottom: 10px;
|
|
border-bottom: 1px solid var(--background-modifier-border);
|
|
font-size: 1.1em;
|
|
color: var(--text-normal);
|
|
text-align: center;
|
|
}
|
|
.control-buttons-container {
|
|
display: flex;
|
|
flex-direction: column;
|
|
justify-content: center;
|
|
padding: 0 5px;
|
|
}
|
|
.control-buttons-container button {
|
|
margin: 5px 0;
|
|
padding: 8px 12px;
|
|
border-radius: 6px;
|
|
background-color: var(--interactive-normal);
|
|
color: var(--text-normal);
|
|
border: 1px solid var(--background-modifier-border);
|
|
cursor: pointer;
|
|
transition: all 0.2s ease;
|
|
}
|
|
.control-buttons-container button:hover {
|
|
background-color: var(--interactive-hover);
|
|
}
|
|
.themes-list {
|
|
max-height: 250px;
|
|
overflow-y: auto;
|
|
padding: 5px;
|
|
}
|
|
.theme-list-item {
|
|
padding: 10px;
|
|
margin-bottom: 8px;
|
|
cursor: pointer;
|
|
border-radius: 6px;
|
|
background-color: var(--background-secondary);
|
|
transition: all 0.2s ease;
|
|
}
|
|
.theme-list-item:hover {
|
|
background-color: var(--background-modifier-hover);
|
|
}
|
|
.theme-list-item.selected {
|
|
background-color: var(--interactive-accent);
|
|
color: var(--text-on-accent);
|
|
}
|
|
.themes-list::-webkit-scrollbar {
|
|
width: 6px;
|
|
}
|
|
.themes-list::-webkit-scrollbar-track {
|
|
background: var(--background-primary);
|
|
border-radius: 3px;
|
|
}
|
|
.themes-list::-webkit-scrollbar-thumb {
|
|
background: var(--background-modifier-border);
|
|
border-radius: 3px;
|
|
}
|
|
.themes-list::-webkit-scrollbar-thumb:hover {
|
|
background: var(--background-modifier-border-hover);
|
|
}
|
|
.red-settings .red-settings-subsection {
|
|
margin: 0 12px 12px 12px;
|
|
border: 1px solid var(--background-modifier-border);
|
|
border-radius: 8px;
|
|
overflow-y: auto;
|
|
}
|
|
.red-settings .red-settings-subsection-header {
|
|
display: flex;
|
|
align-items: center;
|
|
cursor: pointer;
|
|
padding: 0.8rem 1rem;
|
|
background-color: var(--background-primary);
|
|
transition: background-color 0.3s ease;
|
|
}
|
|
.red-settings .red-settings-subsection-header:hover {
|
|
background-color: var(--background-modifier-hover);
|
|
}
|
|
.red-settings .red-settings-subsection-header h3 {
|
|
margin: 0;
|
|
flex: 1;
|
|
font-size: 1.1em;
|
|
color: var(--text-normal);
|
|
}
|
|
.red-settings .red-settings-subsection-toggle {
|
|
margin-right: 0.5rem;
|
|
color: var(--text-muted);
|
|
}
|
|
.red-settings .red-settings-subsection-content {
|
|
display: none;
|
|
padding: 1rem;
|
|
margin: 0 20px;
|
|
background-color: var(--background-primary);
|
|
}
|
|
.red-settings .red-settings-subsection.is-expanded .red-settings-subsection-content {
|
|
display: block;
|
|
}
|
|
.red-settings-divider {
|
|
margin: 15px 0;
|
|
border: none;
|
|
height: 1px;
|
|
background-color: var(--background-modifier-border);
|
|
}
|
|
|
|
/* src/styles/settings/theme-modal.css */
|
|
:root {
|
|
--modal-padding: 1.5rem;
|
|
--border-radius: 8px;
|
|
--transition-duration: 0.2s;
|
|
}
|
|
.red-theme-modal {
|
|
display: flex;
|
|
flex-direction: column;
|
|
height: 75vh;
|
|
}
|
|
.red-theme-modal .modal-header {
|
|
padding: var(--modal-padding);
|
|
border-bottom: 1px solid var(--background-modifier-border);
|
|
background-color: var(--background-primary);
|
|
}
|
|
.red-theme-modal .modal-header h2 {
|
|
margin: 0 0 1rem;
|
|
font-size: 1.5em;
|
|
color: var(--text-normal);
|
|
}
|
|
.red-theme-modal .modal-scroll-container {
|
|
flex: 1;
|
|
overflow-y: auto;
|
|
padding: var(--modal-padding);
|
|
background-color: var(--background-secondary);
|
|
}
|
|
.red-theme-modal .modal-scroll-container::-webkit-scrollbar {
|
|
width: 8px;
|
|
}
|
|
.red-theme-modal .modal-scroll-container::-webkit-scrollbar-track {
|
|
background: var(--background-primary);
|
|
}
|
|
.red-theme-modal .modal-scroll-container::-webkit-scrollbar-thumb {
|
|
background-color: var(--background-modifier-border);
|
|
border-radius: 4px;
|
|
}
|
|
.red-theme-modal .modal-scroll-container::-webkit-scrollbar-thumb:hover {
|
|
background-color: var(--background-modifier-border-hover);
|
|
}
|
|
.red-theme-modal .style-section {
|
|
margin-bottom: 1rem;
|
|
border: 1px solid var(--background-modifier-border);
|
|
border-radius: var(--border-radius);
|
|
overflow: hidden;
|
|
background-color: var(--background-primary);
|
|
}
|
|
.red-theme-modal .style-section-header {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
padding: 1rem;
|
|
background-color: var(--background-secondary);
|
|
cursor: pointer;
|
|
transition: background-color var(--transition-duration) ease;
|
|
}
|
|
.red-theme-modal .style-section-reset {
|
|
display: flex;
|
|
align-items: center;
|
|
padding: 4px;
|
|
border-radius: 4px;
|
|
cursor: pointer;
|
|
color: var(--text-muted);
|
|
transition: all 0.2s ease;
|
|
}
|
|
.red-theme-modal .style-section-reset:hover {
|
|
color: var(--text-normal);
|
|
background-color: var(--background-modifier-hover);
|
|
}
|
|
.red-theme-modal .style-section-header:hover {
|
|
background-color: var(--background-secondary-alt);
|
|
}
|
|
.red-theme-modal .style-section-title {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 0.5rem;
|
|
flex: 1;
|
|
}
|
|
.red-theme-modal .style-section-title h3 {
|
|
margin: 0;
|
|
font-size: 1.1em;
|
|
color: var(--text-normal);
|
|
}
|
|
.red-theme-modal .style-section-title h4 {
|
|
margin: 0;
|
|
font-size: 1em;
|
|
color: var(--text-normal);
|
|
}
|
|
.red-theme-modal .style-section-toggle {
|
|
display: flex;
|
|
align-items: center;
|
|
color: var(--text-muted);
|
|
transition: transform var(--transition-duration) ease;
|
|
margin-right: 0.5rem;
|
|
}
|
|
.red-theme-modal .style-section-content {
|
|
display: none;
|
|
padding: 1rem;
|
|
background-color: var(--background-primary);
|
|
}
|
|
.red-theme-modal .style-section.is-expanded .style-section-content {
|
|
display: block;
|
|
}
|
|
.red-theme-modal .setting-item {
|
|
padding: 0.8rem 0;
|
|
border-bottom: 1px solid var(--background-modifier-border);
|
|
display: flex;
|
|
}
|
|
.red-theme-modal .setting-item:last-child {
|
|
border-bottom: none;
|
|
}
|
|
.red-theme-modal .setting-item-info {
|
|
margin-right: 1.5rem;
|
|
margin-bottom: 0.5rem;
|
|
}
|
|
.red-theme-modal .setting-item-name {
|
|
font-size: 0.9em;
|
|
font-weight: normal;
|
|
color: var(--text-normal);
|
|
}
|
|
.red-theme-modal .setting-item-description {
|
|
font-size: 0.8em;
|
|
color: var(--text-muted);
|
|
}
|
|
.red-theme-modal .setting-item input {
|
|
width: 120px;
|
|
padding: 6px 10px;
|
|
border: 1px solid var(--background-modifier-border);
|
|
border-radius: 4px;
|
|
background: var(--background-primary);
|
|
font-size: 14px;
|
|
}
|
|
.red-theme-modal .custom-css-input {
|
|
width: 100%;
|
|
padding: 8px 12px;
|
|
border: 1px solid var(--background-modifier-border);
|
|
border-radius: 4px;
|
|
background: var(--background-primary);
|
|
font-family: var(--font-monospace);
|
|
font-size: 13px;
|
|
line-height: 1.5;
|
|
resize: vertical;
|
|
min-height: 100px;
|
|
}
|
|
.red-theme-modal .setting-item input[type=color] {
|
|
width: 32px;
|
|
height: 32px;
|
|
padding: 0;
|
|
border: none;
|
|
border-radius: 50%;
|
|
cursor: pointer;
|
|
overflow: hidden;
|
|
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
|
|
position: relative;
|
|
}
|
|
.red-theme-modal .setting-item input[type=color]::-webkit-color-swatch-wrapper {
|
|
padding: 0;
|
|
border-radius: 50%;
|
|
position: absolute;
|
|
top: 0;
|
|
left: 0;
|
|
width: 100%;
|
|
height: 100%;
|
|
}
|
|
.red-theme-modal .setting-item input[type=color]::-webkit-color-swatch {
|
|
border: none;
|
|
border-radius: 50%;
|
|
padding: 0;
|
|
width: 100%;
|
|
height: 100%;
|
|
}
|
|
.red-theme-modal .custom-css-input:focus {
|
|
border-color: var(--interactive-accent);
|
|
outline: none;
|
|
}
|
|
.red-theme-modal .setting-item-control {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 0.5rem;
|
|
}
|
|
.red-theme-modal .setting-item-control .clickable-icon {
|
|
padding: 4px;
|
|
border-radius: 4px;
|
|
color: var(--text-muted);
|
|
cursor: pointer;
|
|
}
|
|
.red-theme-modal .setting-item-control .clickable-icon:hover {
|
|
color: var(--text-normal);
|
|
background-color: var(--background-modifier-hover);
|
|
}
|
|
.red-modal-button {
|
|
padding: 10px 24px;
|
|
border-radius: 24px;
|
|
transition: all 0.3s ease;
|
|
background-color: var(--interactive-accent);
|
|
color: var(--text-on-accent);
|
|
border: none;
|
|
cursor: pointer;
|
|
}
|
|
.red-modal-button:hover {
|
|
opacity: 0.85;
|
|
transform: translateY(-2px);
|
|
}
|
|
.red-theme-modal .notice {
|
|
color: var(--text-error);
|
|
margin-top: 6px;
|
|
font-size: 0.9em;
|
|
}
|
|
@media (max-width: 600px) {
|
|
.red-theme-modal {
|
|
width: 90vw;
|
|
height: 90vh;
|
|
min-width: unset;
|
|
}
|
|
.red-theme-modal .modal-header,
|
|
.red-theme-modal .modal-scroll-container {
|
|
padding: 1rem;
|
|
}
|
|
}
|
|
|
|
/* src/styles/settings/font-modal.css */
|
|
.red-font-modal {
|
|
--rfd-accent: var(--interactive-accent);
|
|
--rfd-bg: var(--background-primary);
|
|
--rfd-border: var(--background-modifier-border);
|
|
}
|
|
.red-font-modal .rfd-header {
|
|
display: flex;
|
|
align-items: center;
|
|
margin: 0 0 1.5rem;
|
|
padding: 0.5rem 0;
|
|
border-bottom: 1px solid var(--rfd-border);
|
|
}
|
|
.red-font-modal .rfd-help-trigger {
|
|
position: relative;
|
|
margin-left: 0.8rem;
|
|
}
|
|
.red-font-modal .rfd-help-btn {
|
|
background: none;
|
|
border: none;
|
|
padding: 4px;
|
|
color: var(--text-muted);
|
|
cursor: pointer;
|
|
transition: opacity 0.2s ease;
|
|
opacity: 0.8;
|
|
}
|
|
.red-font-modal .rfd-help-btn:hover {
|
|
opacity: 1;
|
|
color: var(--rfd-accent);
|
|
}
|
|
.red-font-modal .rfd-help-tooltip {
|
|
display: none;
|
|
position: absolute;
|
|
top: calc(100% + 10px);
|
|
width: 390px;
|
|
padding: 14px;
|
|
background: var(--rfd-bg);
|
|
border: 1px solid var(--rfd-border);
|
|
border-radius: 6px;
|
|
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
|
|
z-index: calc(var(--layer-popover) + 100);
|
|
font-size: 13px;
|
|
line-height: 1.6;
|
|
white-space: pre-line;
|
|
}
|
|
.red-font-modal .rfd-help-trigger:hover .rfd-help-tooltip {
|
|
display: block;
|
|
}
|
|
@media (hover: none) and (pointer: coarse) {
|
|
.red-font-modal .rfd-help-tooltip {
|
|
width: 95vw;
|
|
left: auto;
|
|
right: 0;
|
|
transform: none;
|
|
}
|
|
}
|
|
|
|
/* src/styles/settings/theme-preview-modal.css */
|
|
.theme-preview-modal {
|
|
padding: 20px;
|
|
background-color: #f9f9f9;
|
|
border-radius: 8px;
|
|
}
|
|
.theme-preview-modal .red-theme-title {
|
|
text-align: center;
|
|
}
|
|
.theme-preview-modal .tp-red-preview-container {
|
|
position: relative;
|
|
min-width: 490px;
|
|
height: 100%;
|
|
display: flex;
|
|
justify-content: center;
|
|
align-items: flex-start;
|
|
background: var(--background-primary-alt);
|
|
border-radius: 12px;
|
|
padding: 20px;
|
|
}
|
|
.theme-preview-modal .red-preview-header {
|
|
padding-bottom: 10px;
|
|
}
|
|
.theme-preview-modal .red-image-preview {
|
|
width: 100%;
|
|
max-width: 450px;
|
|
aspect-ratio: 3/4;
|
|
border-radius: 8px;
|
|
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
|
|
padding: 20px;
|
|
position: relative;
|
|
display: flex;
|
|
flex-direction: column;
|
|
overflow: hidden;
|
|
}
|
|
.theme-preview-modal .red-preview-content {
|
|
margin: 0 13px;
|
|
}
|
|
|
|
/* src/styles/index.css */
|