Padronização da interface e atualização do sync entre clientes

This commit is contained in:
JotaChina committed 2025-11-27 22:02:02 -03:00
1 parent 3f714c88de
commit 7d9d2b0f63
10 files changed
+796 -377

No files matched your search

+104 -3
View File
@@ -142,7 +142,39 @@ body.sidebar-hidden .sample-browser { width: 0; min-width: 0; border-right: none
color: var(--text-light); width: 25px; height: 40px; cursor: pointer;
border-radius: 0 4px 4px 0; display: flex; align-items: center; justify-content: center;
}
/* Botão Padrão Unificado */
.control-btn {
height: 32px;
min-width: 32px; /* Garante que botões quadrados fiquem quadrados */
padding: 0 10px; /* Padding lateral para botões com texto */
border: 1px solid transparent;
border-radius: 4px;
background-color: #464646; /* Cor base mais neutra */
color: var(--text-light);
font-size: 14px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
transition: all 0.2s ease;
}
.control-btn:hover {
background-color: #5a5a5a;
transform: translateY(-1px);
}
.control-btn:active {
transform: translateY(0);
}
/* Botão Ativo (Toggle) */
.control-btn.active {
background-color: var(--accent-green);
color: #fff;
border-color: var(--accent-green);
box-shadow: 0 0 8px rgba(46, 204, 113, 0.4);
}
/* =============================================== */
/* ÁREA DE CONTEÚDO E FERRAMENTAS
/* =============================================== */
@@ -161,8 +193,35 @@ body.sidebar-hidden .sample-browser { width: 0; min-width: 0; border-right: none
.info-display { background-color: #1a1c1e; padding: 5px 8px; border-radius: 3px; text-align: center; }
.info-display .label { color: var(--text-dark); font-size: .6rem; text-transform: uppercase; }
.value-input { background: 0 0; border: 0; outline: 0; color: var(--accent-green); font-weight: 700; font-size: 1.4rem; font-family: Courier New, Courier, monospace; text-align: center; padding: 0; width: 55px; }
.compasso-input { width: 25px; }
.compasso-separator { color: var(--accent-green); font-weight: 700; font-size: 1.4rem; font-family: Courier New, Courier, monospace; margin: 0 2px; }
/* --- CORREÇÃO DO COMPASSO --- */
/* Força o container principal a alinhar tudo em uma linha só */
.interactive-input-container {
display: flex;
align-items: center;
justify-content: center;
}
/* Força cada grupo (botão - input - botão) a ficar em linha */
.compasso-group {
display: flex;
align-items: center;
}
/* Ajuste opcional para a barra separadora ficar bonita */
.compasso-separator {
margin: 0 5px;
color: var(--accent-green); /* Garante que fique verde como na imagem */
font-weight: bold;
font-size: 1.2rem;
}
/* Garante que os inputs do compasso não fiquem largos demais */
.compasso-input {
width: 25px !important; /* Força a largura pequena */
text-align: center;
padding: 0;
}
.value-input::-webkit-outer-spin-button, .value-input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.value-input[type=number] { -moz-appearance: textfield; }
.adjust-btn { background: 0 0; border: 0; color: var(--text-dark); font-size: 1rem; font-weight: 700; cursor: pointer; padding: 0 5px; transition: color .2s; line-height: 1; }
@@ -191,7 +250,40 @@ body.sidebar-hidden .sample-browser { width: 0; min-width: 0; border-right: none
border-radius: 8px; box-shadow: 0 5px 15px rgba(0, 0, 0, .3); overflow: hidden;
display: flex; flex-direction: column;
}
.editor-header { background-color: var(--bg-toolbar); padding: 4px 10px; font-size: .8rem; display: flex; justify-content: space-between; align-items: center; border-bottom: 1px solid var(--border-color); flex-shrink: 0; }
/* Container do Header do Editor */
.editor-header {
display: flex;
justify-content: space-between; /* Espalha grupos para esquerda e direita */
align-items: center;
height: 50px; /* Altura fixa para ambos */
background-color: var(--panel-bg);
border-bottom: 1px solid var(--border-color);
padding: 0 15px;
box-sizing: border-box;
}
/* Inputs dentro da toolbar (Selects, Numbers) */
.editor-header select,
.editor-header input[type="number"] {
height: 32px;
background-color: #222;
border: 1px solid var(--border-color);
color: var(--text-light);
border-radius: 4px;
padding: 0 8px;
}
/* Grupos de ferramentas (ex: Transporte, Zoom, Edição) */
.toolbar-group {
display: flex;
align-items: center;
gap: 8px; /* Espaço uniforme entre botões */
}
/* Divisor Vertical Visual (opcional, para separar grupos) */
.toolbar-divider {
width: 1px;
height: 24px;
background-color: var(--border-color);
margin: 0 8px;
}
.editor-toolbar { background-color: var(--bg-toolbar); padding: 5px 10px; border-bottom: 2px solid var(--border-color); flex-shrink: 0; display: flex; align-items: center; gap: 15px; }
#track-container { overflow-y: auto; overflow-x: hidden; flex-grow: 1; }
@@ -224,6 +316,15 @@ body.sidebar-hidden .sample-browser { width: 0; min-width: 0; border-right: none
border-radius: 8px; box-shadow: 0 5px 15px rgba(0, 0, 0, .3); overflow: hidden;
display: flex; flex-direction: column; --track-info-width: 255px;
}
/* CORREÇÃO CSS: Adicionado para garantir layout correto */
.audio-tracks-wrapper {
flex: 1;
display: flex;
flex-direction: column;
position: relative;
overflow: hidden;
}
#audio-track-container { flex-grow: 1; overflow: auto; }
.audio-track-lane { display: flex; flex-direction: row; align-items: stretch; background-color: var(--bg-editor); border-bottom: 1px solid var(--bg-toolbar); min-height: 90px; box-sizing: border-box; }
.audio-track-lane.drag-over { background-color: #40454d; }