Move to Sidebar layout, add new theme for Demonic Pacts

This commit is contained in:
2026-01-17 05:49:32 +08:00
parent e807d3c380
commit b6f74d7905
10 changed files with 1173 additions and 37 deletions

View File

@@ -2180,6 +2180,459 @@ select[multiple]:focus option:checked {
box-shadow: inset 0px -7px 5px -5px var(--tw-shadow-color), 3px -3px 3px -3px var(--tw-shadow-color),
-3px -3px 3px -3px var(--tw-shadow-color);
}
/* SIDEBAR NAVIGATION */
.sidebar-nav {
position: fixed;
left: 0px;
top: 0px;
z-index: 20;
height: 100%;
--tw-bg-opacity: 1;
background-color: rgb(243 244 246 / var(--tw-bg-opacity, 1));
}
.sidebar-nav:is(.dark *) {
--tw-bg-opacity: 1;
background-color: rgb(63 63 70 / var(--tw-bg-opacity, 1));
}
.sidebar-nav {
display: flex;
flex-direction: column;
transition-property: all;
transition-duration: 300ms;
transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
--tw-border-opacity: 1;
border-color: rgb(209 213 219 / var(--tw-border-opacity, 1));
}
.sidebar-nav:is(.dark *) {
--tw-border-opacity: 1;
border-color: rgb(113 113 122 / var(--tw-border-opacity, 1));
}
.sidebar-nav {
border-right-width: 1px;
}
.sidebar-nav-expanded {
width: 16rem;
}
.sidebar-nav-collapsed {
width: 4rem;
}
.sidebar-nav-brand {
--tw-border-opacity: 1;
border-color: rgb(209 213 219 / var(--tw-border-opacity, 1));
}
.sidebar-nav-brand:is(.dark *) {
--tw-border-opacity: 1;
border-color: rgb(113 113 122 / var(--tw-border-opacity, 1));
}
.sidebar-nav-brand {
display: flex;
height: 4rem;
align-items: center;
border-bottom-width: 1px;
padding: 1rem;
}
.sidebar-nav-brand-logo {
height: 2rem;
width: 2rem;
flex-shrink: 0;
}
.sidebar-nav-brand-text {
--tw-text-opacity: 1;
color: rgb(0 0 0 / var(--tw-text-opacity, 1));
}
.sidebar-nav-brand-text:is(.dark *) {
--tw-text-opacity: 1;
color: rgb(244 244 245 / var(--tw-text-opacity, 1));
}
.sidebar-nav-brand-text {
margin-left: 0.75rem;
font-size: 1.125rem;
line-height: 1.75rem;
font-weight: 600;
text-transform: uppercase;
overflow: hidden;
white-space: nowrap;
}
.sidebar-nav-content {
flex: 1 1 0%;
overflow-y: auto;
padding-top: 0.5rem;
padding-bottom: 0.5rem;
}
.sidebar-nav-section {
padding-top: 0.25rem;
padding-bottom: 0.25rem;
}
.sidebar-nav-section-header {
--tw-text-opacity: 1;
color: rgb(55 65 81 / var(--tw-text-opacity, 1));
}
.sidebar-nav-section-header:is(.dark *) {
--tw-text-opacity: 1;
color: rgb(161 161 170 / var(--tw-text-opacity, 1));
}
.sidebar-nav-section-header {
padding-left: 1rem;
padding-right: 1rem;
padding-top: 0.5rem;
padding-bottom: 0.5rem;
font-size: 0.75rem;
line-height: 1rem;
text-transform: uppercase;
letter-spacing: 0.05em;
overflow: hidden;
white-space: nowrap;
}
.sidebar-nav-link {
--tw-text-opacity: 1;
color: rgb(0 0 0 / var(--tw-text-opacity, 1));
}
.sidebar-nav-link:is(.dark *) {
--tw-text-opacity: 1;
color: rgb(244 244 245 / var(--tw-text-opacity, 1));
}
.sidebar-nav-link {
display: flex;
align-items: center;
padding-left: 1rem;
padding-right: 1rem;
padding-top: 0.75rem;
padding-bottom: 0.75rem;
cursor: pointer;
transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
transition-duration: 150ms;
}
.sidebar-nav-link:hover:hover {
--tw-bg-opacity: 1;
background-color: rgb(229 231 235 / var(--tw-bg-opacity, 1));
}
.sidebar-nav-link:hover:hover:is(.dark *) {
--tw-bg-opacity: 1;
background-color: rgb(39 39 42 / var(--tw-bg-opacity, 1));
}
.sidebar-nav-link.active {
--tw-bg-opacity: 1;
background-color: rgb(229 231 235 / var(--tw-bg-opacity, 1));
}
.sidebar-nav-link.active:is(.dark *) {
--tw-bg-opacity: 1;
background-color: rgb(70 70 78 / var(--tw-bg-opacity, 1));
}
.theme-tl-dark .sidebar-nav-link.active {
--tw-text-opacity: 1;
color: rgb(164 206 39 / var(--tw-text-opacity, 1));
}
.theme-tl-light .sidebar-nav-link.active {
--tw-text-opacity: 1;
color: rgb(100 144 68 / var(--tw-text-opacity, 1));
}
.theme-tb-dark .sidebar-nav-link.active {
--tw-text-opacity: 1;
color: rgb(229 217 147 / var(--tw-text-opacity, 1));
}
.theme-tb-light .sidebar-nav-link.active {
--tw-text-opacity: 1;
color: rgb(99 66 40 / var(--tw-text-opacity, 1));
}
.theme-sl-dark .sidebar-nav-link.active {
--tw-text-opacity: 1;
color: rgb(19 213 145 / var(--tw-text-opacity, 1));
}
.theme-sl-light .sidebar-nav-link.active {
--tw-text-opacity: 1;
color: rgb(0 128 118 / var(--tw-text-opacity, 1));
}
.theme-tr-dark .sidebar-nav-link.active {
--tw-text-opacity: 1;
color: rgb(220 139 54 / var(--tw-text-opacity, 1));
}
.theme-tr-light .sidebar-nav-link.active {
--tw-text-opacity: 1;
color: rgb(180 74 30 / var(--tw-text-opacity, 1));
}
.theme-re-dark .sidebar-nav-link.active {
--tw-text-opacity: 1;
color: rgb(32 195 254 / var(--tw-text-opacity, 1));
}
.theme-re-light .sidebar-nav-link.active {
--tw-text-opacity: 1;
color: rgb(3 79 146 / var(--tw-text-opacity, 1));
}
.theme-mono-dark .sidebar-nav-link.active {
--tw-text-opacity: 1;
color: rgb(249 250 251 / var(--tw-text-opacity, 1));
}
.theme-mono-light .sidebar-nav-link.active {
--tw-text-opacity: 1;
color: rgb(55 65 81 / var(--tw-text-opacity, 1));
}
.theme-dp-dark .sidebar-nav-link.active {
--tw-text-opacity: 1;
color: rgb(235 78 104 / var(--tw-text-opacity, 1));
}
.theme-dp-light .sidebar-nav-link.active {
--tw-text-opacity: 1;
color: rgb(107 28 35 / var(--tw-text-opacity, 1));
}
.theme-tl-dark .sidebar-nav-link.active {
--tw-border-opacity: 1;
border-color: rgb(164 206 39 / var(--tw-border-opacity, 1));
}
.theme-tl-light .sidebar-nav-link.active {
--tw-border-opacity: 1;
border-color: rgb(100 144 68 / var(--tw-border-opacity, 1));
}
.theme-tb-dark .sidebar-nav-link.active {
--tw-border-opacity: 1;
border-color: rgb(229 217 147 / var(--tw-border-opacity, 1));
}
.theme-tb-light .sidebar-nav-link.active {
--tw-border-opacity: 1;
border-color: rgb(99 66 40 / var(--tw-border-opacity, 1));
}
.theme-sl-dark .sidebar-nav-link.active {
--tw-border-opacity: 1;
border-color: rgb(19 213 145 / var(--tw-border-opacity, 1));
}
.theme-sl-light .sidebar-nav-link.active {
--tw-border-opacity: 1;
border-color: rgb(0 128 118 / var(--tw-border-opacity, 1));
}
.theme-tr-dark .sidebar-nav-link.active {
--tw-border-opacity: 1;
border-color: rgb(220 139 54 / var(--tw-border-opacity, 1));
}
.theme-tr-light .sidebar-nav-link.active {
--tw-border-opacity: 1;
border-color: rgb(180 74 30 / var(--tw-border-opacity, 1));
}
.theme-re-dark .sidebar-nav-link.active {
--tw-border-opacity: 1;
border-color: rgb(32 195 254 / var(--tw-border-opacity, 1));
}
.theme-re-light .sidebar-nav-link.active {
--tw-border-opacity: 1;
border-color: rgb(3 79 146 / var(--tw-border-opacity, 1));
}
.theme-mono-dark .sidebar-nav-link.active {
--tw-border-opacity: 1;
border-color: rgb(249 250 251 / var(--tw-border-opacity, 1));
}
.theme-mono-light .sidebar-nav-link.active {
--tw-border-opacity: 1;
border-color: rgb(55 65 81 / var(--tw-border-opacity, 1));
}
.theme-dp-dark .sidebar-nav-link.active {
--tw-border-opacity: 1;
border-color: rgb(235 78 104 / var(--tw-border-opacity, 1));
}
.theme-dp-light .sidebar-nav-link.active {
--tw-border-opacity: 1;
border-color: rgb(107 28 35 / var(--tw-border-opacity, 1));
}
.sidebar-nav-link.active {
border-right-width: 2px;
}
.sidebar-nav-link-icon {
flex-shrink: 0;
font-size: 1.25rem;
line-height: 1.75rem;
}
.sidebar-nav-link-label {
margin-left: 0.75rem;
overflow: hidden;
white-space: nowrap;
font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
font-size: 0.875rem;
line-height: 1.25rem;
text-transform: uppercase;
}
.sidebar-nav-divider {
--tw-bg-opacity: 1;
background-color: rgb(209 213 219 / var(--tw-bg-opacity, 1));
}
.sidebar-nav-divider:is(.dark *) {
--tw-bg-opacity: 1;
background-color: rgb(113 113 122 / var(--tw-bg-opacity, 1));
}
.sidebar-nav-divider {
margin-left: 1rem;
margin-right: 1rem;
margin-top: 0.5rem;
margin-bottom: 0.5rem;
height: 1px;
}
.sidebar-nav-toggle {
position: absolute;
right: -0.75rem;
top: 50%;
height: 1.5rem;
width: 1.5rem;
--tw-translate-y: -50%;
transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
border-radius: 9999px;
--tw-bg-opacity: 1;
background-color: rgb(243 244 246 / var(--tw-bg-opacity, 1));
}
.sidebar-nav-toggle:is(.dark *) {
--tw-bg-opacity: 1;
background-color: rgb(63 63 70 / var(--tw-bg-opacity, 1));
}
.sidebar-nav-toggle {
--tw-border-opacity: 1;
border-color: rgb(209 213 219 / var(--tw-border-opacity, 1));
}
.sidebar-nav-toggle:is(.dark *) {
--tw-border-opacity: 1;
border-color: rgb(113 113 122 / var(--tw-border-opacity, 1));
}
.sidebar-nav-toggle {
border-width: 1px;
display: flex;
cursor: pointer;
align-items: center;
justify-content: center;
transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
transition-duration: 150ms;
}
.sidebar-nav-toggle:hover {
--tw-bg-opacity: 1;
background-color: rgb(229 231 235 / var(--tw-bg-opacity, 1));
}
.sidebar-nav-toggle:hover:is(.dark *) {
--tw-bg-opacity: 1;
background-color: rgb(70 70 78 / var(--tw-bg-opacity, 1));
}
.sidebar-nav-toggle {
--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
/* Mobile drawer styles */
.sidebar-drawer-backdrop {
position: fixed;
inset: 0px;
z-index: 30;
background-color: rgb(0 0 0 / 0.5);
transition-property: opacity;
transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
transition-duration: 300ms;
}
.sidebar-drawer-backdrop-hidden {
pointer-events: none;
opacity: 0;
}
.sidebar-drawer-backdrop-visible {
opacity: 1;
}
.sidebar-drawer {
position: fixed;
left: 0px;
top: 0px;
z-index: 40;
height: 100%;
width: 16rem;
--tw-bg-opacity: 1;
background-color: rgb(243 244 246 / var(--tw-bg-opacity, 1));
}
.sidebar-drawer:is(.dark *) {
--tw-bg-opacity: 1;
background-color: rgb(63 63 70 / var(--tw-bg-opacity, 1));
}
.sidebar-drawer {
--tw-border-opacity: 1;
border-color: rgb(209 213 219 / var(--tw-border-opacity, 1));
}
.sidebar-drawer:is(.dark *) {
--tw-border-opacity: 1;
border-color: rgb(113 113 122 / var(--tw-border-opacity, 1));
}
.sidebar-drawer {
border-right-width: 1px;
transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
transition-property: transform;
transition-duration: 300ms;
transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
display: flex;
flex-direction: column;
}
.sidebar-drawer-closed {
--tw-translate-x: -100%;
transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.sidebar-drawer-open {
--tw-translate-x: 0px;
transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
/* Mobile header bar */
.mobile-header {
position: fixed;
top: 0px;
left: 0px;
right: 0px;
z-index: 10;
}
@media (min-width: 768px) {.mobile-header {
display: none;
}
}
.mobile-header {
--tw-bg-opacity: 1;
background-color: rgb(243 244 246 / var(--tw-bg-opacity, 1));
}
.mobile-header:is(.dark *) {
--tw-bg-opacity: 1;
background-color: rgb(63 63 70 / var(--tw-bg-opacity, 1));
}
.mobile-header {
display: flex;
align-items: center;
gap: 0.75rem;
padding: 0.75rem;
--tw-border-opacity: 1;
border-color: rgb(209 213 219 / var(--tw-border-opacity, 1));
}
.mobile-header:is(.dark *) {
--tw-border-opacity: 1;
border-color: rgb(113 113 122 / var(--tw-border-opacity, 1));
}
.mobile-header {
border-bottom-width: 1px;
}
.mobile-header-menu-btn:hover {
--tw-bg-opacity: 1;
background-color: rgb(229 231 235 / var(--tw-bg-opacity, 1));
}
.mobile-header-menu-btn:hover:is(.dark *) {
--tw-bg-opacity: 1;
background-color: rgb(39 39 42 / var(--tw-bg-opacity, 1));
}
.mobile-header-menu-btn {
cursor: pointer;
border-radius: 0.25rem;
padding: 0.5rem;
}
/* Content offset for fixed sidebar */
.main-content-with-sidebar {
transition-property: all;
transition-duration: 300ms;
transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}
@media (min-width: 1024px) {.main-content-sidebar-expanded {
margin-left: 16rem;
}.main-content-sidebar-collapsed {
margin-left: 4rem;
}
}
.main-content-mobile-header {
padding-top: 3.5rem;
}
@media (min-width: 1024px) {.main-content-mobile-header {
padding-top: 0px;
}
}
.\!visible {
visibility: visible !important;
}
@@ -2387,6 +2840,9 @@ select[multiple]:focus option:checked {
.h-5 {
height: 1.25rem;
}
.h-6 {
height: 1.5rem;
}
.h-8 {
height: 2rem;
}
@@ -2459,6 +2915,9 @@ select[multiple]:focus option:checked {
.w-5 {
width: 1.25rem;
}
.w-6 {
width: 1.5rem;
}
.w-60 {
width: 15rem;
}