diff --git a/src/css/components/form.css b/src/css/components/form.css
index 7c74746..74fe190 100644
--- a/src/css/components/form.css
+++ b/src/css/components/form.css
@@ -12,4 +12,22 @@ form {
inline-size: fit-content;
line-height: 1.5;
}
+
+ & > * {
+ grid-column: 1 / -1;
+ }
+
+ &[action*="login"] {
+ grid-template-columns: 1fr auto;
+ inline-size: min(100%, 400px);
+
+ & input {
+ inline-size: 100%;
+ grid-column: 1 / 2;
+ }
+
+ & button {
+ grid-column: 2 / 3;
+ }
+ }
}
diff --git a/src/css/main.css b/src/css/main.css
index cacbb5d..841b06c 100644
--- a/src/css/main.css
+++ b/src/css/main.css
@@ -14,15 +14,16 @@
}
.avatar {
+ --size: 50px;
align-items: center;
display: grid;
column-gap: 10px;
- grid-template-columns: 50px auto;
+ grid-template-columns: var(--size) auto;
& img {
border-radius: calc(1px * infinity);
- block-size: 50px;
- inline-size: 50px;
+ block-size: var(--size);
+ inline-size: var(--size);
grid-column: 1;
grid-row: 1 / 5;
}
@@ -39,3 +40,38 @@
}
}
}
+
+#handle {
+ anchor-name: --handle;
+}
+
+#handle-listbox {
+ background: white;
+ border: 2px solid black;
+ display: grid;
+ inline-size: anchor-size(--handle inline);
+ max-block-size: 230px;
+ overflow-x: hidden;
+ overflow-y: auto;
+ position: fixed;
+ position-anchor: --handle;
+ position-area: block-end center;
+ position-visibility: no-overflow;
+
+ & .avatar {
+ --size: 40px;
+ padding: 10px;
+ }
+
+ & [aria-selected="true"] {
+ background: yellow;
+ }
+
+ & li {
+ cursor: pointer;
+
+ &:hover {
+ background: cyan;
+ }
+ }
+}
diff --git a/src/routes/+page.svelte b/src/routes/+page.svelte
index 1eaabf4..ce99b8a 100644
--- a/src/routes/+page.svelte
+++ b/src/routes/+page.svelte
@@ -1,7 +1,110 @@
+
+