feat: unifier le style des tags avec variables CSS --tag-bg/--tag-text, standardiser les dimensions des boutons de suppression (1.1rem), convertir les valeurs px en rem pour meilleure cohérence, améliorer l'indentation des règles CSS de la modale et des cartes, et harmoniser les styles entre note-modal-tags et note-tags pour interface cohérente

This commit is contained in:
2026-02-18 20:47:54 -05:00
parent 37fbded5a4
commit 84c7585816
5 changed files with 479 additions and 283 deletions
+224 -31
View File
@@ -401,8 +401,11 @@ input:checked+.theme-slider:before {
.header-nav-link {
display: flex;
align-items: center;
gap: 0.375rem;
padding: 0.5rem 1rem;
justify-content: center;
gap: 0;
width: 38px;
height: 38px;
padding: 0;
color: rgba(255, 255, 255, 0.85);
font-weight: 500;
font-size: 0.9rem;
@@ -421,10 +424,14 @@ input:checked+.theme-slider:before {
}
.header-nav-link.active {
background: rgba(255, 255, 255, 0.2);
background: rgba(255, 255, 255, 0.15);
color: white;
}
.header-nav-link span {
display: none;
}
.header-nav-link i {
font-size: 1.125rem;
}
@@ -660,6 +667,66 @@ input:checked+.theme-slider:before {
display: flex;
}
.modal-overlay,
.qrcode-modal-overlay {
position: fixed;
inset: 0;
display: none;
align-items: center;
justify-content: center;
padding: 1rem;
background: rgba(6, 10, 22, 0.65);
z-index: 520;
}
.modal-overlay.show,
.qrcode-modal-overlay.show {
display: flex;
}
.modal-content,
.qrcode-modal-content {
position: relative;
width: min(900px, 92vw);
max-height: 85vh;
overflow: auto;
background: var(--bg-card);
border: 1px solid var(--border);
border-radius: 0.75rem;
box-shadow: 0 24px 60px rgba(0, 0, 0, 0.35);
padding: 1rem;
}
.modal-close,
.qrcode-modal-close {
position: absolute;
top: 0.5rem;
right: 0.5rem;
display: inline-flex;
align-items: center;
justify-content: center;
width: 2rem;
height: 2rem;
border: 1px solid var(--border);
border-radius: 0.375rem;
background: var(--bg-card);
color: var(--text-secondary);
font-size: 1.1rem;
line-height: 1;
cursor: pointer;
}
.modal-close:hover,
.qrcode-modal-close:hover {
background: var(--primary-light);
color: var(--primary);
}
.modal-body,
#qrcode-modal-body {
margin-top: 1.75rem;
}
@keyframes fadeIn {
from {
opacity: 0;
@@ -1504,7 +1571,7 @@ body.view-notes .paging {
}
.view-grid .link-footer {
flex-direction: column-reverse;
flex-direction: column;
align-items: flex-end;
gap: 0.5rem;
}
@@ -1529,6 +1596,7 @@ body.view-notes .paging {
font-size: 0.75rem;
font-weight: 500;
transition: all 0.15s ease;
max-width: 100%;
}
.link-tag.is-tech-tag {
@@ -1540,6 +1608,31 @@ body.view-notes .paging {
text-decoration: none;
display: inline-block;
line-height: 1.2;
max-width: 100%;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.tag-remove-btn {
display: inline-flex;
align-items: center;
justify-content: center;
width: 1.1rem;
height: 1.1rem;
border: none;
border-radius: 999px;
background: rgba(0, 0, 0, 0.12);
color: inherit;
font-size: 0.8rem;
line-height: 1;
padding: 0;
cursor: pointer;
transition: background-color 0.15s ease, color 0.15s ease;
}
[data-theme="dark"] .tag-remove-btn {
background: rgba(255, 255, 255, 0.18);
}
.link-tag:hover {
@@ -1547,47 +1640,29 @@ body.view-notes .paging {
color: white;
}
.link-tag:hover .link-tag-link {
color: inherit;
}
.link-tag .tag-remove-btn {
display: inline-flex;
align-items: center;
justify-content: center;
width: 18px;
height: 18px;
border: none;
border-radius: 999px;
background: rgba(0, 0, 0, 0.12);
color: currentColor;
cursor: pointer;
padding: 0;
line-height: 1;
font-size: 14px;
opacity: 0.9;
}
[data-theme="dark"] .link-tag .tag-remove-btn {
background: rgba(255, 255, 255, 0.18);
}
.link-tag:hover .tag-remove-btn {
background: rgba(255, 255, 255, 0.22);
}
.view-grid .link-tag-list {
align-self: stretch;
order: 2;
width: 100%;
justify-content: flex-end;
}
.view-grid .link-actions {
order: 1;
}
/* Actions */
.link-actions {
display: flex;
gap: 0.25rem;
flex-shrink: 0;
align-items: center;
flex-wrap: nowrap;
flex-wrap: wrap;
justify-content: flex-end;
max-width: 100%;
margin-left: auto;
/* Force alignment to the right */
}
@@ -1805,6 +1880,124 @@ body.view-notes .paging {
background: var(--primary-hover);
}
/* ===== Footer ===== */
.footer-main {
margin-top: 1.25rem;
padding: 1rem 0 1.25rem;
border-top: 1px solid var(--border);
color: var(--text-secondary);
}
.footer-main p {
margin: 0;
font-size: 0.95rem;
}
.footer-feeds {
margin-top: 0.55rem;
display: flex;
align-items: center;
flex-wrap: wrap;
gap: 0.45rem;
font-size: 0.95rem;
}
.footer-separator {
color: var(--text-muted);
}
.plugin-footer-text {
margin-top: 0.5rem;
color: var(--text-secondary);
}
/* ===== Media Player Bar ===== */
.media-player-bar {
position: fixed;
left: var(--sidebar-width);
right: 0;
bottom: 0;
z-index: 155;
padding: 0.7rem 1.2rem;
border-top: 1px solid var(--border);
background: var(--bg-card);
box-shadow: 0 -6px 24px rgba(0, 0, 0, 0.15);
display: none;
}
.media-player-bar.show {
display: block;
}
.media-player-inner {
display: grid;
grid-template-columns: auto minmax(180px, 1fr) auto auto auto;
gap: 0.75rem;
align-items: center;
}
.media-player-btn {
width: 34px;
height: 34px;
border: 1px solid var(--border);
border-radius: 0.5rem;
background: var(--bg-body);
color: var(--text-main);
display: inline-flex;
align-items: center;
justify-content: center;
cursor: pointer;
}
.media-player-btn:hover {
background: var(--primary-light);
color: var(--primary);
}
.media-player-title {
font-size: 0.88rem;
color: var(--text-main);
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.media-player-time {
font-variant-numeric: tabular-nums;
color: var(--text-secondary);
font-size: 0.8rem;
min-width: 82px;
text-align: right;
}
.media-player-progress,
.media-player-volume {
width: 100%;
}
.media-player-volume-wrap {
width: 130px;
display: flex;
align-items: center;
gap: 0.4rem;
}
@media (max-width: 991px) {
.media-player-bar {
left: 0;
}
}
@media (max-width: 768px) {
.media-player-inner {
grid-template-columns: auto minmax(120px, 1fr) auto;
}
.media-player-volume-wrap {
display: none;
}
}
/* ===== Sticky Links ===== */
.link-outer.is-sticky {
border-left: 3px solid var(--primary);