diff --git a/app/Helpers/form_helper.php b/app/Helpers/form_helper.php
deleted file mode 100644
index 5b732a2e68406dd99ef6dfc3d16a2dfd0dbee21f..0000000000000000000000000000000000000000
--- a/app/Helpers/form_helper.php
+++ /dev/null
@@ -1,81 +0,0 @@
-<?php
-
-declare(strict_types=1);
-
-/**
- * @copyright  2020 Podlibre
- * @license    https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
- * @link       https://castopod.org/
- */
-
-//--------------------------------------------------------------------
-
-if (! function_exists('form_dropdown')) {
-    /**
-     * Drop-down Menu (based on html select tag)
-     *
-     * @param array<string, mixed> $options
-     * @param array<string|int> $selected
-     * @param array<string, mixed> $customExtra
-     */
-    function form_dropdown(
-        string $name = '',
-        array $options = [],
-        array $selected = [],
-        array $customExtra = []
-    ): string {
-        $defaultExtra = [
-            'data-select-text' => lang('Common.forms.multiSelect.selectText'),
-            'data-loading-text' => lang('Common.forms.multiSelect.loadingText'),
-            'data-no-results-text' => lang('Common.forms.multiSelect.noResultsText'),
-            'data-no-choices-text' => lang('Common.forms.multiSelect.noChoicesText'),
-            'data-max-item-text' => lang('Common.forms.multiSelect.maxItemText'),
-        ];
-        $extra = array_merge($defaultExtra, $customExtra);
-        $defaults = [
-            'name' => $name,
-        ];
-
-        // standardize selected as strings, like  the option keys will be.
-        foreach ($selected as $key => $item) {
-            $selected[$key] = $item;
-        }
-
-        $placeholderOption = '';
-        if (isset($extra['placeholder'])) {
-            $placeholderOption = '<option value="" disabled="disabled" hidden="hidden"' . (in_array(
-                '',
-                $selected,
-                true
-            ) ? ' selected="selected"' : '') . '>' . $extra['placeholder'] . '</option>';
-            unset($extra['placeholder']);
-        }
-
-        $extra = stringify_attributes($extra);
-        $multiple = (count($selected) > 1 && stripos($extra, 'multiple') === false) ? ' multiple="multiple"' : '';
-        $form = '<select ' . rtrim(parse_form_attributes($name, $defaults)) . $extra . $multiple . ">\n";
-        $form .= $placeholderOption;
-
-        foreach ($options as $key => $val) {
-            if (is_array($val)) {
-                if ($val === []) {
-                    continue;
-                }
-                $form .= '<optgroup label="' . $key . "\">\n";
-                foreach ($val as $optgroupKey => $optgroupVal) {
-                    $sel = in_array($optgroupKey, $selected, true) ? ' selected="selected"' : '';
-                    $form .= '<option value="' . htmlspecialchars($optgroupKey) . '"' . $sel . '>'
-                            . $optgroupVal . "</option>\n";
-                }
-                $form .= "</optgroup>\n";
-            } else {
-                /** @noRector RecastingRemovalRector */
-                $form .= '<option value="' . htmlspecialchars((string) $key) . '"'
-                        . (in_array($key, $selected, true) ? ' selected="selected"' : '') . '>'
-                        . $val . "</option>\n";
-            }
-        }
-
-        return $form . "</select>\n";
-    }
-}
diff --git a/app/Views/Components/Forms/Checkbox.php b/app/Views/Components/Forms/Checkbox.php
index 440300b78862f9fb140c02fc4b2a25df635ac9fb..b93160cae9aa9e5dfdf086c7d3822347f0580a27 100644
--- a/app/Views/Components/Forms/Checkbox.php
+++ b/app/Views/Components/Forms/Checkbox.php
@@ -23,7 +23,7 @@ class Checkbox extends FormComponent
                 'name' => $this->name,
                 'class' => 'form-checkbox text-pine-500 border-black border-3 focus:ring-2 focus:ring-pine-500 focus:ring-offset-2 focus:ring-offset-pine-100 w-6 h-6',
             ],
-            $this->value,
+            'yes',
             old($this->name) ? old($this->name) === $this->value : $this->isChecked,
         );
 
diff --git a/app/Views/Components/Forms/Input.php b/app/Views/Components/Forms/Input.php
index 1729e6c3668498ca8210f78aca32672e0b69fdc6..2b1cb5e451b1bfe77a4e7faa3335e583e631399d 100644
--- a/app/Views/Components/Forms/Input.php
+++ b/app/Views/Components/Forms/Input.php
@@ -10,16 +10,7 @@ class Input extends FormComponent
 
     public function render(): string
     {
-        $class = 'px-3 py-2 bg-white rounded-lg border-3 focus:ring-2 focus:ring-pine-500 focus:ring-offset-2 focus:ring-offset-pine-100 ' . $this->class;
-
-        if (session()->has('errors')) {
-            $error = session('errors')[$this->name];
-            if ($error) {
-                $class .= ' border-red';
-            }
-        } else {
-            $class .= ' border-black focus:border-black';
-        }
+        $class = 'px-3 py-2 bg-white border-black rounded-lg focus:border-black border-3 focus:ring-2 focus:ring-pine-500 focus:ring-offset-2 focus:ring-offset-pine-100 ' . $this->class;
 
         $this->attributes['class'] = $class;
 
diff --git a/app/Views/Components/Forms/MultiSelect.php b/app/Views/Components/Forms/MultiSelect.php
index 9ae032aaac7c516ff5e8642ebe78628836170a6a..276f8d4113b1d040d4c9a7432096c16735232a35 100644
--- a/app/Views/Components/Forms/MultiSelect.php
+++ b/app/Views/Components/Forms/MultiSelect.php
@@ -31,6 +31,11 @@ class MultiSelect extends FormComponent
         $defaultAttributes = [
             'data-class' => $this->attributes['class'],
             'multiple' => 'multiple',
+            'data-select-text' => lang('Common.forms.multiSelect.selectText'),
+            'data-loading-text' => lang('Common.forms.multiSelect.loadingText'),
+            'data-no-results-text' => lang('Common.forms.multiSelect.noResultsText'),
+            'data-no-choices-text' => lang('Common.forms.multiSelect.noChoicesText'),
+            'data-max-item-text' => lang('Common.forms.multiSelect.maxItemText'),
         ];
         $extra = array_merge($defaultAttributes, $this->attributes);
 
diff --git a/app/Views/Components/Forms/Select.php b/app/Views/Components/Forms/Select.php
index 3cfd062e2f0de5b00b8e4fb03b12b636eaf61102..ee8ed27731ee0883ef43d57ac3acb2d8c90287d8 100644
--- a/app/Views/Components/Forms/Select.php
+++ b/app/Views/Components/Forms/Select.php
@@ -23,6 +23,11 @@ class Select extends FormComponent
         $defaultAttributes = [
             'class' => 'focus:border-black focus:ring-2 focus:ring-pine-500 focus:ring-offset-2 focus:ring-offset-pine-100 border-3 rounded-lg border-black ' . $this->class,
             'data-class' => $this->class,
+            'data-select-text' => lang('Common.forms.multiSelect.selectText'),
+            'data-loading-text' => lang('Common.forms.multiSelect.loadingText'),
+            'data-no-results-text' => lang('Common.forms.multiSelect.noResultsText'),
+            'data-no-choices-text' => lang('Common.forms.multiSelect.noChoicesText'),
+            'data-max-item-text' => lang('Common.forms.multiSelect.maxItemText'),
         ];
         $extra = array_merge($this->attributes, $defaultAttributes);
 
diff --git a/app/Views/pager/default_full.php b/app/Views/pager/default_full.php
index 55685ef78fac3a284c012a46351c174498736c55..b712a1e5b979a87c56411c3ea04ef902ece3a209 100644
--- a/app/Views/pager/default_full.php
+++ b/app/Views/pager/default_full.php
@@ -30,7 +30,7 @@ $pager->setSurroundCount(2);
         <?php foreach ($pager->links() as $link): ?>
             <li>
                 <?php if ($link['active']): ?>
-                    <span class="block px-4 py-2 font-semibold text-white rounded-full bg-pine-600">
+                    <span class="block px-4 py-2 font-semibold text-white rounded-full bg-pine-500">
                         <?= $link['title'] ?>
                     </span>
                 <?php else: ?>
diff --git a/modules/Admin/Controllers/PodcastImportController.php b/modules/Admin/Controllers/PodcastImportController.php
index 044f25a66af10a04a066aa2f74b5d42de971cb88..f3d7a4ebd7ab0245c8dcd72b5a311d54d877242e 100644
--- a/modules/Admin/Controllers/PodcastImportController.php
+++ b/modules/Admin/Controllers/PodcastImportController.php
@@ -285,17 +285,17 @@ class PodcastImportController extends BaseController
             }
         }
 
-        $numberItems = $feed->channel[0]->item->count();
+        $itemsCount = $feed->channel[0]->item->count();
 
         $lastItem =
             $this->request->getPost('max_episodes') !== '' &&
-            $this->request->getPost('max_episodes') < $numberItems
+            $this->request->getPost('max_episodes') < $itemsCount
             ? (int) $this->request->getPost('max_episodes')
-            : $numberItems;
+            : $itemsCount;
 
         $slugs = [];
         for ($itemNumber = 1; $itemNumber <= $lastItem; ++$itemNumber) {
-            $item = $feed->channel[0]->item[$numberItems - $itemNumber];
+            $item = $feed->channel[0]->item[$itemsCount - $itemNumber];
 
             $nsItunes = $item->children('http://www.itunes.com/dtds/podcast-1.0.dtd');
             $nsPodcast = $item->children(
diff --git a/themes/cp_admin/_message_block.php b/themes/cp_admin/_message_block.php
index 3794ba39aca8ad566c3caf40ffc07293da1fafca..ffe70e09c72c39084be4025eaef16a7f08526ae1 100644
--- a/themes/cp_admin/_message_block.php
+++ b/themes/cp_admin/_message_block.php
@@ -1,15 +1,15 @@
 <?php declare(strict_types=1);
 
 if (session()->has('message')): ?>
-    <Alert variant="success"><?= session('message') ?></Alert>
+    <Alert variant="success" class="mb-4"><?= session('message') ?></Alert>
 <?php endif; ?>
 
 <?php if (session()->has('error')): ?>
-    <Alert variant="danger"><?= session('error') ?></Alert>
+    <Alert variant="danger" class="mb-4"><?= session('error') ?></Alert>
 <?php endif; ?>
 
 <?php if (session()->has('errors')): ?>
-    <Alert variant="danger">
+    <Alert variant="danger" class="mb-4">
         <ul>
             <?php foreach (session('errors') as $error): ?>
                 <li><?= $error ?></li>
diff --git a/themes/cp_admin/episode/list.php b/themes/cp_admin/episode/list.php
index 7693633821b04bb9f63fd6cc1b5802b06f522dbc..ea736f12662032c4ba16d1ad27e54f0e0a1b6d63 100644
--- a/themes/cp_admin/episode/list.php
+++ b/themes/cp_admin/episode/list.php
@@ -88,7 +88,7 @@
                             $podcast->id,
                             $episode->id,
                         ) . '">' . lang(
-                            'Episode.embeddable_player.add',
+                            'Episode.embeddable_player.title',
                         ) . '</a>' .
                         '<a class="px-4 py-1 hover:bg-gray-100" href="' . route_to(
                             'episode-persons-manage',
diff --git a/themes/cp_admin/episode/persons.php b/themes/cp_admin/episode/persons.php
index a903f0ce1f505335d353c676be32f3ba2e1707ad..b274da5cc80505005a408e4b20aad15ac037ebc1 100644
--- a/themes/cp_admin/episode/persons.php
+++ b/themes/cp_admin/episode/persons.php
@@ -50,7 +50,7 @@
         [
             'header' => lang('Common.actions'),
             'cell' => function ($person): string {
-                return '<Button uri="' . route_to('episode-person-remove', $person->podcast_id, $person->episode_id, $person->id) . '" variant="danger" size="small">' . lang('Person.episode_form.remove') . '</Button>';
+                return '<Button uri="' . route_to('episode-person-remove', $person->podcast_id, $person->episode_id, $person->id) . '" variant="danger" size="small" iconLeft="delete-bin">' . lang('Person.episode_form.remove') . '</Button>';
             },
         ],
     ],
@@ -58,7 +58,7 @@
     'max-w-xl'
 ) ?>
 
-<form action="<?= route_to('episode-persons-manage', $episode->id) ?>" method="POST" class="mt-6">
+<form action="<?= route_to('episode-persons-manage', $podcast->id, $episode->id) ?>" method="POST" class="mt-6">
 <?= csrf_field() ?>
 
 <Forms.Section
diff --git a/themes/cp_admin/podcast/latest_episodes.php b/themes/cp_admin/podcast/latest_episodes.php
index 540f993740a74d0d6943ef22dd0b45a803356e18..3a0cb19c46ecbbc3b350219e2ae2baea13623fce 100644
--- a/themes/cp_admin/podcast/latest_episodes.php
+++ b/themes/cp_admin/podcast/latest_episodes.php
@@ -68,7 +68,7 @@
     $podcast->id,
     $episode->id,
 ) ?>"><?= lang(
-    'Episode.embeddable_player.add',
+    'Episode.embeddable_player.title',
 ) ?></a>
                             <a class="px-4 py-1 hover:bg-gray-100" href="<?= route_to(
     'episode-persons-manage',
diff --git a/themes/cp_auth/_message_block.php b/themes/cp_auth/_message_block.php
index 3794ba39aca8ad566c3caf40ffc07293da1fafca..ffe70e09c72c39084be4025eaef16a7f08526ae1 100644
--- a/themes/cp_auth/_message_block.php
+++ b/themes/cp_auth/_message_block.php
@@ -1,15 +1,15 @@
 <?php declare(strict_types=1);
 
 if (session()->has('message')): ?>
-    <Alert variant="success"><?= session('message') ?></Alert>
+    <Alert variant="success" class="mb-4"><?= session('message') ?></Alert>
 <?php endif; ?>
 
 <?php if (session()->has('error')): ?>
-    <Alert variant="danger"><?= session('error') ?></Alert>
+    <Alert variant="danger" class="mb-4"><?= session('error') ?></Alert>
 <?php endif; ?>
 
 <?php if (session()->has('errors')): ?>
-    <Alert variant="danger">
+    <Alert variant="danger" class="mb-4">
         <ul>
             <?php foreach (session('errors') as $error): ?>
                 <li><?= $error ?></li>