OmniVoice-Studio / frontend /src /components /AudioTrimmer.css
Lê Phi Nam
Deploy to HF Space
94004a2
Raw
History Blame Contribute Delete
2.54 kB
/* AudioTrimmer — canvas-specific styles, uses Dialog/Button from ui/. */
.audio-trimmer {
display: flex;
flex-direction: column;
gap: var(--space-5);
outline: none;
}
.audio-trimmer__meta {
display: flex;
gap: var(--space-6);
align-items: center;
font-size: var(--text-base);
color: var(--color-fg-muted);
}
.audio-trimmer__hint {
margin-left: auto;
color: var(--color-fg-subtle);
font-size: var(--text-2xs);
}
.audio-trimmer__error {
color: var(--color-danger);
font-size: var(--text-md);
}
.audio-trimmer__toolbar {
display: flex;
gap: var(--space-2);
align-items: center;
}
.audio-trimmer__view-info {
margin-left: auto;
font-size: var(--text-sm);
color: var(--color-fg-subtle);
font-variant-numeric: tabular-nums;
}
.audio-trimmer__ruler {
width: 100%;
height: 18px;
background: #141414;
border-radius: var(--radius-md);
border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}
.audio-trimmer__wave {
width: 100%;
height: 160px;
background: #0f1112;
border-radius: var(--radius-lg);
border: 1px solid rgba(255, 255, 255, 0.05);
cursor: crosshair;
touch-action: none;
}
.audio-trimmer__fields {
display: grid;
grid-template-columns: 1fr 1fr 1fr auto;
gap: var(--space-4);
align-items: center;
}
.trim-field {
display: flex;
align-items: center;
gap: var(--space-2);
background: #0f1112;
border: 1px solid var(--color-border);
border-radius: var(--radius-md);
padding: 2px 6px;
}
.trim-field--readonly { cursor: default; }
.trim-field__label {
font-size: var(--text-xs);
color: var(--color-fg-subtle);
text-transform: uppercase;
letter-spacing: 0.05em;
font-weight: var(--weight-semibold);
}
.trim-field__input {
background: transparent;
border: none;
outline: none;
color: var(--color-fg);
font-size: var(--text-md);
padding: 4px 6px;
width: 100%;
min-width: 60px;
font-family: var(--font-mono);
}
.trim-field__value {
padding: 4px 6px;
color: #b8bb26;
font-family: var(--font-mono);
font-size: var(--text-md);
flex: 1;
}
.trim-field__value.is-err { color: var(--color-danger); }
.trim-field__unit { font-size: var(--text-xs); color: var(--color-fg-subtle); }
.audio-trimmer__actions {
display: flex;
gap: var(--space-4);
align-items: center;
flex-wrap: wrap;
}
.audio-trimmer__kbd-hint {
font-size: var(--text-base);
color: var(--color-fg-subtle);
}
.audio-trimmer__actions-right {
margin-left: auto;
display: flex;
gap: var(--space-4);
}
.audio-trimmer__audio { display: none; }