/* Composer — markdown toolbar + preview + drafts around a textarea */

.composer {
    display: flex;
    flex-direction: column;
    border: 1px solid var(--color-border);
    border-radius: var(--radius);
    background-color: var(--color-surface);
    overflow: hidden;
}

.composer__bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--space-sm);
    padding: var(--space-xs) var(--space-sm);
    border-bottom: 1px solid var(--color-border);
    background-color: var(--color-bg-alt);
    flex-wrap: wrap;
}

.composer__tabs {
    display: flex;
    gap: var(--space-xs);
}

.composer__tab {
    padding: var(--space-xs) var(--space-sm);
    border: none;
    background: none;
    color: var(--color-text-muted);
    font-size: var(--font-size-xs);
    font-weight: 600;
    cursor: pointer;
    border-radius: var(--radius);
    transition: color var(--transition), background-color var(--transition);
}

.composer__tab:hover {
    color: var(--color-text);
}

.composer__tab--active {
    color: var(--color-accent);
    background-color: var(--color-accent-subtle);
}

.composer__tools {
    display: flex;
    gap: 2px;
}

.composer__tool {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    padding: 0;
    border: none;
    background: none;
    color: var(--color-text-muted);
    cursor: pointer;
    border-radius: var(--radius);
    transition: color var(--transition), background-color var(--transition);
}

.composer__tool:hover {
    color: var(--color-accent);
    background-color: var(--color-accent-subtle);
}

.composer__tool-icon {
    width: 15px;
    height: 15px;
}

.composer .composer__input {
    border: none;
    border-radius: 0;
    background-color: transparent;
    resize: vertical;
}

.composer .composer__input:focus {
    box-shadow: none;
    outline: none;
}

.composer__preview {
    min-height: 90px;
    padding: var(--space-sm) var(--space-md);
    font-size: var(--font-size-sm);
    line-height: 1.6;
}

.composer__preview-empty {
    color: var(--color-text-muted);
    font-style: italic;
}

.composer__foot {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--space-sm);
    padding: var(--space-xs) var(--space-sm);
    border-top: 1px solid var(--color-border);
    flex-wrap: wrap;
}

.composer__hint {
    color: var(--color-text-muted);
    font-size: var(--font-size-xs);
    font-family: ui-monospace, Menlo, monospace;
    opacity: 0.8;
}

.composer__draft-note {
    color: var(--color-accent);
    font-size: var(--font-size-xs);
}

.composer__draft-discard {
    padding: 0;
    border: none;
    background: none;
    color: var(--color-text-muted);
    font-size: var(--font-size-xs);
    text-decoration: underline;
    cursor: pointer;
}

.composer__draft-discard:hover {
    color: var(--color-danger);
}

@media (max-width: 480px) {
    .composer__hint {
        display: none;
    }
}
