Design system 1.0
Editor de Vídeo Online · design system

Papel, tinta e movimento

A marca nasce do gesto de recortar, colar e desenhar no papel. A interface é calma e clara (papel e tinta) para que as imagens e animações de quem cria sejam o destaque. O índigo conduz a ação; o coral marca o que é importante.

Feito à mão

Texturas de papel, bordas de adesivo e leve rotação: imperfeição intencional.

Claro e direto

Uma ação principal por tela. Textos curtos, no idioma de quem usa.

O conteúdo brilha

Interface neutra; cor forte só para ação (índigo) e destaque (coral).

Marca e logo

Logo Editor de Vídeo Online em fundo claro
Logo Editor de Vídeo Online em fundo escuro

Uso

  • Fundo claro: assets/brand/logo-light.webp. Fundo escuro: assets/brand/logo-dark.webp. Ícone: assets/brand/favicon.png.
  • Altura mínima de 24 px na tela. Deixe ao redor um respiro igual à altura do “A”.
  • Não mude as cores, não aplique sombra e não coloque sobre fotos sem uma área lisa por trás.

Cores

Papel (fundos)

Tinta (texto)

Índigo (ação) e coral (destaque)

Apoio

Tokens semânticos (use estes nos componentes)

TokenClaroUso
--ak-bgpaper-100Fundo da página
--ak-surface / --ak-surface-2branco / paper-50Cartões, campos, menus
--ak-text / --ak-mutedink-900 / ink-500Texto principal e secundário
--ak-primaryindigo-600Botão principal, links, foco
--ak-accentcoral-600Destaques, sobretítulos, CTA de marketing
--ak-success / --ak-dangerleaf-600 / danger-600Confirmações e erros
--ak-linepaper-300Bordas e divisórias

O tema é escolhido no botão de sol/lua (data-theme-toggle) ou no menu do usuário (Claro, Escuro, Sistema) e fica salvo. EditorVideo.theme grava o tema efetivo em <html data-theme="dark|light">; no escuro, o fundo das páginas vira uma grade fina (--ak-page / --ak-grid). Contraste mínimo AA (4,5:1) para texto.

Tipografia

Família: Avenir Next, com Nunito Sans / Segoe UI / fonte do sistema como alternativa — arredondada e amigável como o logo, sem custo de carregamento.

5xl · 64 · 800Editor de Vídeo Online
4xl · 48 · 800Título de página
3xl · 36 · 800Título de seção
xl · 22 · 800Título de cartão
lg · 18 · 400Texto de apoio e introduções.
md · 15.5 · 400Texto do corpo. Frases curtas, voz ativa, “você”.
sm · 13.5 · 700Rótulos de campos e botões
xs · 12 · 800Sobretítulo

Espaço e forma

Espaçamento (base 4 px)

${'4,8,12,16,20,24,32,40,48,64'}

Raios

sm 6 · md 10 (campos) · lg 14 (cartões) · xl 20 (planos) · pill (botões, chips)

Sombras e o “adesivo”

shadow-sm
shadow-md
shadow-lg
Exemplo de borda adesivo.ak-sticker: borda branca de recorte — assinatura visual da marca

Botões

<button class="ak-btn ak-btn--primary">Criar conta</button>
<a class="ak-btn ak-btn--secondary ak-btn--sm" href="…">Ver planos</a>   <!-- --sm | --lg | --block | .is-loading -->

Uma ação primária por tela. Rótulos com verbo: “Criar conta”, “Salvar perfil”, “Gravar vídeo”.

Formulários

Usaremos para enviar o recibo.
A senha precisa ter pelo menos 8 caracteres.
<div class="ak-field">            <!-- + .has-error mostra .ak-error -->
  <label class="ak-label" for="email">E-mail</label>
  <input class="ak-input" id="email" type="email">
  <span class="ak-error">Digite um e-mail válido.</span>
</div>

Badges, chips e avisos

Plano ProNovoAtivaGrátisBeta Colagem VoxMão desenhando⌘Z
Informação. Use para orientar sem interromper.
Pronto! Seu vídeo foi salvo.
Atenção. Deixe a aba visível durante a gravação.
Erro. E-mail ou senha incorretos.

Avisos, perguntas e Marki

Nada de alert, confirm ou prompt do navegador. Tudo passa por EditorVideo.ui (js/services/editorvideo.js).

EditorVideo.ui.toast('Salvo.')                                   // 'success' | 'info' | 'warn' | 'error'
EditorVideo.ui.toast('Enviado.', {action:{label:'Abrir', fn}})
await EditorVideo.ui.confirm({title, message, ok, danger:true})    // true | false
await EditorVideo.ui.prompt({title, label, value})                 // texto | null

Marki

O mascote de papel. Surpreso ao apagar, pensativo nas perguntas, piscando ao renomear, comemorando no vídeo pronto. Um por tela, no máximo. mascot:'cheer' escolhe a pose; mascot:false tira.

Marki: front
front
Marki: wave
wave
Marki: think
think
Marki: surprised
surprised
Marki: wink
wink
Marki: cheer
cheer
Marki: happy
happy
Marki: turn
turn
Marki: side
side

Cartões, avatar e planos

MSMSMS
Cartão

Agrupa um assunto. Título, subtítulo e conteúdo.

Como usar

<link rel="stylesheet" href="css/brand.css">   <!-- tokens + componentes -->
<link rel="stylesheet" href="css/pages.css">   <!-- layouts das páginas da marca -->
<body class="ak">                              <!-- base tipográfica da marca -->

/* Prefira os tokens semânticos: */
.minha-coisa{ background:var(--ak-surface); color:var(--ak-text); border:1px solid var(--ak-line); border-radius:var(--ak-r-lg); }

Prefixo ak- em tudo (classes e variáveis), para conviver com outros estilos — o editor (app.html) usa o próprio css/app.css e carrega o brand.css só para o menu do usuário.