feat: enhance discovery, vibe sessions, and library enrichment
Typecheck / typecheck (backend) (push) Has been cancelled
Typecheck / typecheck (workers) (push) Has been cancelled

This commit is contained in:
kami
2026-08-01 14:40:48 +04:00
parent a0c9f42a89
commit 4c48d11e9d
54 changed files with 4136 additions and 521 deletions
+53
View File
@@ -100,6 +100,25 @@ body {
#root {
position: relative;
z-index: 1;
min-height: 100dvh;
}
button,
a,
input[type='range'] {
-webkit-tap-highlight-color: transparent;
}
@media (pointer: coarse) {
input[type='range']::-webkit-slider-thumb {
width: 18px;
height: 18px;
margin-top: -7px;
}
input[type='range']::-moz-range-thumb {
width: 18px;
height: 18px;
}
}
/* ── Focus ring: 2px accent, for keyboard users only ──────────────────────── */
@@ -217,6 +236,40 @@ html { scroll-behavior: smooth; }
}
.group:hover .play-overlay-btn { transform: translateY(0); }
/* Settings library actions use a compact, stateful button rather than an
unstyled native control. */
.admin-btn {
display: inline-flex;
min-height: 36px;
align-items: center;
justify-content: center;
gap: 8px;
border: 1px solid var(--ethos-border-hi);
border-radius: 8px;
padding: 8px 12px;
background: var(--ethos-surface1);
color: var(--ethos-text);
font-size: 13px;
font-weight: 500;
transition: background 150ms ease, border-color 150ms ease, color 150ms ease;
}
.admin-btn:hover:not(:disabled) {
background: var(--ethos-surface2);
border-color: color-mix(in srgb, var(--ethos-accent) 50%, transparent);
}
.admin-btn:disabled { cursor: wait; opacity: 0.65; }
.admin-btn--done { border-color: color-mix(in srgb, var(--ethos-green) 60%, transparent); color: var(--ethos-green); }
.admin-btn--error { border-color: color-mix(in srgb, var(--ethos-red) 60%, transparent); color: var(--ethos-red); }
/* Keep row actions available on touch. On pointer-and-hover devices, reveal
them when the row is hovered or any of its controls receives focus. */
.track-row-actions { opacity: 1; transition: opacity 150ms ease; }
@media (hover: hover) and (pointer: fine) {
.track-row-actions { opacity: 0; }
.group:hover .track-row-actions,
.group:focus-within .track-row-actions { opacity: 1; }
}
/* Transport button */
.transport-btn {
width: 40px;