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.
303 lines
8.1 KiB
303 lines
8.1 KiB
/* Theme: default dark matches existing Tailwind slate palette */ |
|
html[data-theme='dark'], |
|
html:not([data-theme]) { |
|
color-scheme: dark; |
|
} |
|
|
|
html[data-theme='light'] { |
|
color-scheme: light; |
|
} |
|
|
|
html[data-theme='light'] body { |
|
background-color: #f1f5f9 !important; |
|
color: #0f172a; |
|
} |
|
|
|
/* Light mode: readable text on surfaces (cards, panels) */ |
|
html[data-theme='light'] .bg-slate-950 { background-color: #f1f5f9 !important; } |
|
html[data-theme='light'] .bg-slate-900 { background-color: #ffffff !important; } |
|
html[data-theme='light'] .bg-slate-800 { background-color: #f8fafc !important; } |
|
html[data-theme='light'] .bg-slate-800\/40 { background-color: rgb(248 250 252 / 0.85) !important; } |
|
html[data-theme='light'] .border-slate-800 { border-color: #e2e8f0 !important; } |
|
html[data-theme='light'] .border-slate-700 { border-color: #cbd5e1 !important; } |
|
|
|
html[data-theme='light'] .text-white { color: #0f172a !important; } |
|
html[data-theme='light'] .text-slate-200 { color: #1e293b !important; } |
|
html[data-theme='light'] .text-slate-300 { color: #334155 !important; } |
|
html[data-theme='light'] .text-slate-400 { color: #475569 !important; } |
|
html[data-theme='light'] .text-slate-500 { color: #64748b !important; } |
|
|
|
html[data-theme='light'] .text-cyan-300 { color: #0e7490 !important; } |
|
html[data-theme='light'] .text-cyan-400 { color: #0e7490 !important; } |
|
html[data-theme='light'] .text-emerald-400 { color: #047857 !important; } |
|
html[data-theme='light'] .text-violet-400 { color: #6d28d9 !important; } |
|
html[data-theme='light'] .text-amber-300 { color: #b45309 !important; } |
|
html[data-theme='light'] .text-amber-400 { color: #b45309 !important; } |
|
html[data-theme='light'] .text-red-400 { color: #b91c1c !important; } |
|
|
|
html[data-theme='light'] .hover\:bg-slate-800:hover { background-color: #e2e8f0 !important; } |
|
html[data-theme='light'] .divide-slate-800 > :not([hidden]) ~ :not([hidden]) { |
|
border-color: #e2e8f0 !important; |
|
} |
|
|
|
/* Keep white text on colored action buttons & active nav */ |
|
html[data-theme='light'] .bg-cyan-600, |
|
html[data-theme='light'] .bg-cyan-700, |
|
html[data-theme='light'] .bg-emerald-700, |
|
html[data-theme='light'] .bg-violet-600, |
|
html[data-theme='light'] .bg-violet-700, |
|
html[data-theme='light'] .bg-red-800, |
|
html[data-theme='light'] .bg-red-700, |
|
html[data-theme='light'] .bg-amber-700, |
|
html[data-theme='light'] .bg-amber-600 { |
|
color: #ffffff !important; |
|
} |
|
|
|
html[data-theme='light'] .bg-cyan-600 .text-white, |
|
html[data-theme='light'] .bg-cyan-700 .text-white, |
|
html[data-theme='light'] .bg-emerald-700 .text-white, |
|
html[data-theme='light'] .bg-violet-600 .text-white, |
|
html[data-theme='light'] .bg-violet-700 .text-white, |
|
html[data-theme='light'] .bg-red-800 .text-white, |
|
html[data-theme='light'] .bg-red-700 .text-white, |
|
html[data-theme='light'] .bg-amber-700 .text-white, |
|
html[data-theme='light'] .bg-amber-600 .text-white, |
|
html[data-theme='light'] a.bg-cyan-600, |
|
html[data-theme='light'] a.bg-cyan-600.text-white { |
|
color: #ffffff !important; |
|
} |
|
|
|
html[data-theme='light'] .bg-emerald-950\/50 { background-color: rgb(236 253 245 / 0.9) !important; } |
|
html[data-theme='light'] .border-emerald-800 { border-color: #6ee7b7 !important; } |
|
html[data-theme='light'] .text-emerald-200, |
|
html[data-theme='light'] .text-emerald-300 { color: #047857 !important; } |
|
|
|
html[data-theme='light'] .bg-red-950\/50 { background-color: rgb(254 242 242 / 0.9) !important; } |
|
html[data-theme='light'] .border-red-800 { border-color: #fca5a5 !important; } |
|
html[data-theme='light'] .text-red-200, |
|
html[data-theme='light'] .text-red-300 { color: #b91c1c !important; } |
|
|
|
html[data-theme='light'] input, |
|
html[data-theme='light'] select, |
|
html[data-theme='light'] textarea { |
|
color: #0f172a !important; |
|
} |
|
|
|
/* Scrollable list: toolbar + sticky thead + body scroll; footer stays outside */ |
|
.list-panel { |
|
display: flex; |
|
flex-direction: column; |
|
max-height: min(calc(100vh - 11rem), 900px); |
|
overflow: hidden; |
|
} |
|
|
|
@media (max-width: 1279px) { |
|
.list-panel { |
|
max-height: min(70vh, 640px); |
|
} |
|
} |
|
|
|
.list-panel__toolbar { |
|
flex-shrink: 0; |
|
} |
|
|
|
.list-panel__scroll { |
|
flex: 1 1 auto; |
|
min-height: 0; |
|
overflow: auto; |
|
-webkit-overflow-scrolling: touch; |
|
} |
|
|
|
.list-table thead th { |
|
position: sticky; |
|
top: 0; |
|
z-index: 10; |
|
} |
|
|
|
.list-table thead th { |
|
background-color: rgb(30 41 59); |
|
box-shadow: 0 1px 0 0 rgb(51 65 85); |
|
} |
|
|
|
.notes-panel { |
|
max-height: min(calc(100vh - 11rem), 900px); |
|
overflow-y: auto; |
|
} |
|
|
|
@media (max-width: 1279px) { |
|
.notes-panel { |
|
max-height: none; |
|
} |
|
} |
|
|
|
html[data-theme='light'] footer { |
|
background-color: #ffffff !important; |
|
border-color: #e2e8f0 !important; |
|
} |
|
|
|
html[data-theme='light'] footer span { |
|
color: #64748b !important; |
|
} |
|
|
|
html[data-theme='light'] .bg-amber-950\/30 { |
|
background-color: rgb(255 251 235 / 0.9) !important; |
|
} |
|
|
|
html[data-theme='light'] .text-amber-200 { |
|
color: #b45309 !important; |
|
} |
|
|
|
html[data-theme='light'] .border-amber-800\/50 { |
|
border-color: #fcd34d !important; |
|
} |
|
|
|
html[data-theme='light'] .bg-slate-950.border { |
|
background-color: #f8fafc !important; |
|
} |
|
|
|
html[data-theme='light'] code.text-cyan-300, |
|
html[data-theme='light'] code.text-slate-300 { |
|
color: #0e7490 !important; |
|
} |
|
|
|
html[data-theme='light'] .bg-emerald-950 .text-emerald-300, |
|
html[data-theme='light'] .bg-emerald-950.border .text-emerald-300 { |
|
color: #047857 !important; |
|
} |
|
|
|
html[data-theme='light'] .bg-red-950 .text-red-300, |
|
html[data-theme='light'] .bg-red-950.border .text-red-300 { |
|
color: #b91c1c !important; |
|
} |
|
|
|
html[data-theme='light'] .bg-cyan-950 .text-cyan-300, |
|
html[data-theme='light'] .bg-cyan-950.border .text-cyan-300 { |
|
color: #0e7490 !important; |
|
} |
|
|
|
html[data-theme='light'] input::placeholder, |
|
html[data-theme='light'] textarea::placeholder { |
|
color: #94a3b8 !important; |
|
} |
|
|
|
html[data-theme='light'] .list-table thead th { |
|
background-color: #e2e8f0 !important; |
|
color: #0f172a !important; |
|
box-shadow: 0 1px 0 0 #cbd5e1; |
|
} |
|
|
|
html[data-theme='light'] .list-table thead th a { |
|
color: #0f172a !important; |
|
} |
|
|
|
html[data-theme='light'] .list-table thead th a:hover { |
|
color: #0e7490 !important; |
|
} |
|
|
|
/* Theme segmented toggle */ |
|
.theme-toggle__track { |
|
position: relative; |
|
display: grid; |
|
grid-template-columns: repeat(3, 1fr); |
|
gap: 0; |
|
padding: 3px; |
|
border-radius: 0.625rem; |
|
border: 1px solid rgb(51 65 85); |
|
background-color: rgb(15 23 42); |
|
min-width: 9.5rem; |
|
} |
|
|
|
html[data-theme='light'] .theme-toggle__track { |
|
border-color: #cbd5e1; |
|
background-color: #e2e8f0; |
|
} |
|
|
|
.theme-toggle__indicator { |
|
position: absolute; |
|
top: 3px; |
|
left: 3px; |
|
width: calc((100% - 6px) / 3); |
|
height: calc(100% - 6px); |
|
border-radius: 0.45rem; |
|
background-color: rgb(8 145 178); |
|
box-shadow: 0 1px 3px rgb(0 0 0 / 0.25); |
|
transition: transform 0.2s ease; |
|
pointer-events: none; |
|
z-index: 0; |
|
} |
|
|
|
html[data-theme='light'] .theme-toggle__indicator { |
|
background-color: #0891b2; |
|
box-shadow: 0 1px 2px rgb(0 0 0 / 0.12); |
|
} |
|
|
|
.theme-toggle__btn { |
|
position: relative; |
|
z-index: 1; |
|
display: flex; |
|
flex-direction: column; |
|
align-items: center; |
|
justify-content: center; |
|
gap: 1px; |
|
padding: 0.35rem 0.5rem; |
|
border: none; |
|
border-radius: 0.45rem; |
|
background: transparent; |
|
color: rgb(148 163 184); |
|
font-size: 0.625rem; |
|
font-weight: 600; |
|
line-height: 1; |
|
letter-spacing: 0.02em; |
|
cursor: pointer; |
|
transition: color 0.15s ease; |
|
min-width: 0; |
|
} |
|
|
|
.theme-toggle__btn:hover { |
|
color: rgb(226 232 240); |
|
} |
|
|
|
html[data-theme='light'] .theme-toggle__btn { |
|
color: #64748b; |
|
} |
|
|
|
html[data-theme='light'] .theme-toggle__btn:hover { |
|
color: #334155; |
|
} |
|
|
|
.theme-toggle__btn.is-active { |
|
color: #ffffff; |
|
} |
|
|
|
html[data-theme='light'] .theme-toggle__btn.is-active { |
|
color: #ffffff; |
|
} |
|
|
|
.theme-toggle__icon { |
|
width: 0.95rem; |
|
height: 0.95rem; |
|
flex-shrink: 0; |
|
} |
|
|
|
.theme-toggle__label { |
|
white-space: nowrap; |
|
} |
|
|
|
@media (max-width: 480px) { |
|
.theme-toggle__track { |
|
min-width: 7.5rem; |
|
} |
|
|
|
.theme-toggle__label { |
|
display: none; |
|
} |
|
|
|
.theme-toggle__btn { |
|
padding: 0.45rem 0.35rem; |
|
} |
|
|
|
.theme-toggle__icon { |
|
width: 1.1rem; |
|
height: 1.1rem; |
|
} |
|
}
|
|
|