diff --git a/src/components/ab-bangumi-card.vue b/src/components/ab-bangumi-card.vue
new file mode 100644
index 00000000..14861d3d
--- /dev/null
+++ b/src/components/ab-bangumi-card.vue
@@ -0,0 +1,55 @@
+
+
+
+ $emit('click')">
+
+
![poster]()
+
+
+
+
+
+
{{ name }}
+
Season {{ season }}
+
+
+
diff --git a/src/components/ab-container.vue b/src/components/ab-container.vue
new file mode 100644
index 00000000..78f6797b
--- /dev/null
+++ b/src/components/ab-container.vue
@@ -0,0 +1,31 @@
+
+
+
+
+
diff --git a/src/components/ab-fold-panel.vue b/src/components/ab-fold-panel.vue
new file mode 100644
index 00000000..f814cc5d
--- /dev/null
+++ b/src/components/ab-fold-panel.vue
@@ -0,0 +1,45 @@
+
+
+
+
+
+
+ {{ title }}
+
+
+
+
+
+
+
+
diff --git a/src/components/ab-label.vue b/src/components/ab-label.vue
new file mode 100644
index 00000000..5f77a090
--- /dev/null
+++ b/src/components/ab-label.vue
@@ -0,0 +1,18 @@
+
+
+
+
+
diff --git a/src/components/ab-popup.vue b/src/components/ab-popup.vue
new file mode 100644
index 00000000..af2d1353
--- /dev/null
+++ b/src/components/ab-popup.vue
@@ -0,0 +1,69 @@
+
+
+
+
+
+
+
diff --git a/src/components/ab-status-bar.vue b/src/components/ab-status-bar.vue
index b1e82da0..06d6f1c8 100644
--- a/src/components/ab-status-bar.vue
+++ b/src/components/ab-status-bar.vue
@@ -35,24 +35,26 @@ withDefaults(
overflow-hidden
shadow
>
-