diff --git a/src/components/InteractiveEditor/PinInput.vue b/src/components/InteractiveEditor/PinInput.vue
index d298fda9..1db2bb21 100644
--- a/src/components/InteractiveEditor/PinInput.vue
+++ b/src/components/InteractiveEditor/PinInput.vue
@@ -68,60 +68,7 @@ export default {
diff --git a/src/components/LinkItems/Section.vue b/src/components/LinkItems/Section.vue
index 4ef783e7..d4951da8 100644
--- a/src/components/LinkItems/Section.vue
+++ b/src/components/LinkItems/Section.vue
@@ -20,10 +20,6 @@
@unlock_attempt="saveUnlockPins"
/>
-
{{ $t('home.no-items-section') }}
@@ -82,6 +78,12 @@
@navigateToSection="navigateToSection"
/>
+
+
+
@import '@/styles/media-queries.scss';
@import '@/styles/style-helpers.scss';
+@import '@/styles/pin-input.scss';
.no-items {
width: 100px;
diff --git a/src/styles/pin-input.scss b/src/styles/pin-input.scss
new file mode 100644
index 00000000..be3a697a
--- /dev/null
+++ b/src/styles/pin-input.scss
@@ -0,0 +1,65 @@
+.btn-icon {
+ margin-right: .4rem;
+ font-size: .95em;
+ line-height: 0;
+ opacity: .9;
+}
+
+.pin-gate {
+ padding: .9rem;
+ border-radius: var(--curve-factor);
+ border: 1px solid var(--border);
+ background: var(--item-background);
+ box-shadow: var(--item-shadow);
+ color: var(--primary);
+}
+
+.pin-head {
+ display: flex;
+ align-items: center;
+ gap: .5rem;
+ margin-bottom: .6rem;
+ font-weight: 600;
+}
+
+.pin-form {
+ margin-bottom: .6rem;
+}
+.pin-actions {
+ display: flex;
+ align-items: center;
+ justify-content: right;
+ gap: .5rem;
+ flex-wrap: wrap;
+}
+
+.pin-btn {
+ padding: .5rem .9rem;
+ border-radius: .6rem;
+ border: 1px solid var(--border);
+ background: var(--button-bg);
+ color: var(--primary);
+ cursor: pointer;
+ transition: transform .06s ease;
+
+ &:active { transform: translateY(1px); }
+}
+
+.pin-reset {
+ background: transparent;
+ border: none;
+ padding: .3rem .2rem;
+ color: var(--primary);
+ opacity: .8;
+ text-decoration: underline;
+ cursor: pointer;
+
+ &:hover { opacity: 1; }
+}
+
+.pin-unlocked-bar{
+ display: flex;
+ align-items: center;
+ width: 100%;
+ justify-content: flex-end;
+}
\ No newline at end of file