OmniVoice-Studio / frontend /src /pages /CloneDesignTab.css
LΓͺ Phi Nam
Deploy to HF Space
94004a2
Raw
History Blame Contribute Delete
3.89 kB
/* CloneDesignTab β€” page-specific styles on top of design-system primitives. */
.clone-profile-delete {
position: absolute;
top: 2px;
right: 2px;
background: none;
border: none;
color: var(--color-danger);
cursor: pointer;
padding: 0;
opacity: 0.7;
transition: opacity var(--dur-fast) var(--ease-out);
}
.clone-profile-delete:hover { opacity: 1; }
.clone-profile-banner {
padding: var(--space-4);
background: rgba(142, 192, 124, 0.08);
border: 1px solid rgba(142, 192, 124, 0.2);
border-radius: var(--radius-lg);
font-size: var(--text-md);
margin-bottom: var(--space-4);
display: flex;
align-items: center;
gap: var(--space-4);
}
.clone-profile-banner__label { color: var(--color-success); flex: 1; }
.clone-save-profile { margin-top: var(--space-4); }
.clone-save-profile__row {
display: flex;
gap: var(--space-3);
align-items: center;
}
.clone-save-profile__row > :first-child { flex: 1; }
/* ── Record / Cleaning / Recording mic button ────────────────── */
.mic-btn {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
gap: var(--space-2);
padding: 8px 16px;
min-width: 70px;
border-radius: var(--radius-xl);
font-size: var(--text-xs);
font-weight: var(--weight-semibold);
cursor: pointer;
transition: all var(--dur-base) var(--ease-out);
}
.mic-btn--idle {
background: rgba(255, 255, 255, 0.03);
border: 1px solid rgba(255, 255, 255, 0.10);
color: var(--color-fg-muted);
}
.mic-btn--idle:hover {
border-color: var(--color-danger);
color: var(--color-danger);
}
.mic-btn--recording {
background: rgba(251, 73, 52, 0.15);
border: 2px solid var(--color-danger);
color: var(--color-danger);
animation: pulse 1s ease-in-out infinite;
}
.mic-btn--cleaning {
background: rgba(184, 187, 38, 0.10);
border: 1px solid rgba(184, 187, 38, 0.20);
color: #b8bb26;
cursor: default;
}
.mic-btn .spinner { animation: spin 1s linear infinite; }
/* ── Page layout ─────────────────────────────────────────────── */
.clone-split-grid {
flex: 1;
display: grid;
grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
gap: 6px;
min-height: 0;
}
.clone-panel--overflow-visible { overflow: visible; }
/* Label-row alignment variants for this page */
.label-row--center { align-items: center; }
.label-row--spread { justify-content: space-between; }
.label-row--flush { margin-bottom: 0; }
.label-row--sm { font-size: 0.7rem; margin-bottom: 4px; }
.label-row__kicker { margin-right: 6px; }
/* Text input + textarea tweaks */
.clone-text-area {
flex: 1;
resize: none;
min-height: 60px;
margin-bottom: 6px;
}
.clone-auto-extract-btn { border-color: #b8bb26; color: #b8bb26; }
.clone-duration-input { font-size: 0.8rem; }
/* Saved-profile dropdown spacing */
.clone-profile-block { margin-bottom: 10px; }
.clone-profile-card { position: relative; }
/* File-drop + record-button row */
.clone-drop-row {
display: flex;
gap: 8px;
align-items: stretch;
}
.clone-drop-zone { padding: 6px; flex: 1; }
.clone-drop-filename { color: var(--color-fg); }
/* Grid-2 margin */
.grid-2--indent { margin-top: 6px; }
/* Slider column */
.clone-sliders-col {
display: flex;
flex-direction: column;
gap: 10px;
}
.clone-slider-kicker {
margin-left: 6px;
font-size: 0.58rem;
color: var(--chrome-fg-dim);
font-weight: 500;
}
/* Production-overrides column */
.clone-prod-col {
display: flex;
flex-direction: column;
gap: 6px;
}
.clone-prod-check {
font-size: 0.75rem;
display: flex;
align-items: center;
gap: 6px;
cursor: pointer;
}
.clone-icon-inline { vertical-align: middle; margin-right: 4px; }
/* Footer buttons */
.clone-footer-cta { margin-top: 6px; }