Aurora SpotiRip desktop and web app
- Spotify playlist, library, album and artist browsing with in-app playback - Song, playlist and album downloads via spotdl with YouTube and Bandcamp fallbacks - Electron desktop app (castLabs Widevine) with a permanent sidebar layout - Linux and Windows packaging scripts
This commit is contained in:
@@ -0,0 +1,117 @@
|
||||
@layer base {
|
||||
.item {
|
||||
border-radius: var(--radius);
|
||||
background-color: var(--card);
|
||||
color: var(--card-foreground);
|
||||
overflow: hidden;
|
||||
margin-bottom: var(--spacing-4);
|
||||
box-shadow: var(--shadow);
|
||||
transition: box-shadow var(--animation-duration-normal) ease;
|
||||
}
|
||||
|
||||
.item:hover:not(:has(.trigger:disabled)) {
|
||||
box-shadow: var(--shadow-md);
|
||||
}
|
||||
|
||||
.item:has(.trigger:disabled) {
|
||||
opacity: 0.6;
|
||||
box-shadow: var(--shadow);
|
||||
}
|
||||
|
||||
.header {
|
||||
display: flex;
|
||||
}
|
||||
|
||||
.trigger {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
width: 100%;
|
||||
padding: var(--spacing-4) var(--spacing-6);
|
||||
font-family: var(--font-family-heading);
|
||||
font-weight: 400;
|
||||
line-height: 1.5;
|
||||
letter-spacing: -0.01em;
|
||||
text-align: left;
|
||||
background-color: transparent;
|
||||
color: inherit;
|
||||
border: none;
|
||||
cursor: pointer;
|
||||
transition: opacity var(--animation-duration-fast) ease;
|
||||
}
|
||||
|
||||
.trigger:hover:not(:disabled) {
|
||||
opacity: 0.8;
|
||||
}
|
||||
|
||||
.trigger:active:not(:disabled) {
|
||||
opacity: 0.7;
|
||||
}
|
||||
|
||||
.trigger:disabled {
|
||||
opacity: 0.6;
|
||||
cursor: not-allowed;
|
||||
color: var(--muted-foreground);
|
||||
}
|
||||
|
||||
.trigger:focus-visible {
|
||||
outline: 2px solid var(--primary);
|
||||
outline-offset: 2px;
|
||||
}
|
||||
|
||||
.icon {
|
||||
width: 1rem;
|
||||
height: 1rem;
|
||||
transition: transform var(--animation-duration-normal)
|
||||
cubic-bezier(0.16, 1, 0.3, 1);
|
||||
flex-shrink: 0;
|
||||
color: var(--muted-foreground);
|
||||
}
|
||||
|
||||
.trigger:disabled .icon {
|
||||
color: var(--muted-foreground);
|
||||
opacity: 0.5;
|
||||
}
|
||||
|
||||
.trigger[data-state="open"] .icon {
|
||||
transform: rotate(180deg);
|
||||
}
|
||||
|
||||
.content {
|
||||
overflow: hidden;
|
||||
background-color: transparent;
|
||||
color: inherit;
|
||||
animation: accordion-up var(--animation-duration-normal)
|
||||
cubic-bezier(0.16, 1, 0.3, 1);
|
||||
}
|
||||
|
||||
.content[data-state="open"] {
|
||||
animation: accordion-down var(--animation-duration-normal)
|
||||
cubic-bezier(0.16, 1, 0.3, 1);
|
||||
}
|
||||
|
||||
.contentInner {
|
||||
padding: var(--spacing-3) var(--spacing-6) var(--spacing-4);
|
||||
color: var(--muted-foreground);
|
||||
font-size: 0.95rem;
|
||||
line-height: 1.6;
|
||||
}
|
||||
|
||||
@keyframes accordion-up {
|
||||
from {
|
||||
height: var(--radix-accordion-content-height);
|
||||
}
|
||||
to {
|
||||
height: 0;
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes accordion-down {
|
||||
from {
|
||||
height: 0;
|
||||
}
|
||||
to {
|
||||
height: var(--radix-accordion-content-height);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user