diff --git a/src/css/base/fonts.css b/src/css/base/fonts.css
new file mode 100644
index 0000000..77f055b
--- /dev/null
+++ b/src/css/base/fonts.css
@@ -0,0 +1,27 @@
+@font-face {
+ font-family: "Quantico";
+ src: url("/fonts/Quantico-Regular.woff2") format("woff2");
+ font-display: swap;
+ font-weight: 400;
+}
+
+@font-face {
+ font-family: "Quantico";
+ src: url("/fonts/Quantico-Bold.woff2") format("woff2");
+ font-display: swap;
+ font-weight: 700;
+}
+
+@font-face {
+ font-family: "Silkscreen";
+ src: url("/fonts/Silkscreen-Regular.woff2") format("woff2");
+ font-display: block;
+ font-weight: 400;
+}
+
+@font-face {
+ font-family: "Silkscreen";
+ src: url("/fonts/Silkscreen-Bold.woff2") format("woff2");
+ font-display: block;
+ font-weight: 700;
+}
diff --git a/src/css/base/global.css b/src/css/base/global.css
index 6a5186f..0fe558a 100644
--- a/src/css/base/global.css
+++ b/src/css/base/global.css
@@ -1,11 +1,11 @@
html {
- background: wheat;
- color: black;
+ background: #402622;
+ color: #fff;
}
body {
- font-family: sans-serif;
- font-size: 1.125rem;
+ font-family: var(--font-family-1);
+ font-size: calc(20 / 16 * 1rem);
font-weight: 400;
font-synthesis: none;
line-height: 1.5;
@@ -53,6 +53,6 @@ attic-app {
}
:focus-visible {
- outline: 2px solid magenta;
- outline-offset: 2px;
+ outline: 4px solid magenta;
+ outline-offset: 4px;
}
diff --git a/src/css/base/properties.css b/src/css/base/properties.css
new file mode 100644
index 0000000..935c844
--- /dev/null
+++ b/src/css/base/properties.css
@@ -0,0 +1,4 @@
+:root {
+ --font-family-1: "Quantico", sans-serif;
+ --font-family-2: "Silkscreen", sans-serif;
+}
diff --git a/src/css/base/typography.css b/src/css/base/typography.css
index cbc08e1..a8aab7b 100644
--- a/src/css/base/typography.css
+++ b/src/css/base/typography.css
@@ -1,13 +1,18 @@
-h1 {
- font-size: 2rem;
+:is(h1, h2, h3) {
+ font-family: var(--font-family-1);
+ font-size: calc(30 / 16 * 1rem);
font-weight: 700;
+ line-height: 1.2;
}
-:is(h2, h3, h4, h5, h6) {
- font-size: 1.5rem;
- font-weight: 700;
+h1 {
+ font-size: calc(40 / 16 * 1rem);
}
p:has(small:read-only) {
- font-size: 1rem;
+ font-size: calc(16 / 16 * 1rem);
+}
+
+a[href] {
+ color: #e6a000;
}
diff --git a/src/css/components/button.css b/src/css/components/button.css
index b831be7..15a29e2 100644
--- a/src/css/components/button.css
+++ b/src/css/components/button.css
@@ -1,7 +1,20 @@
button {
- border: 2px solid currentColor;
- font-weight: 700;
+ /*background: white;*/
+ --font-size: calc(23 / 16 * 1rem);
+ border: 15px solid transparent;
+ border-image: url("/images/button.svg") 15 fill stretch;
+ block-size: calc(var(--font-size) + 30px);
+ font-family: var(--font-family-2);
+ font-size: var(--font-size);
+ font-weight: 400;
inline-size: fit-content;
- line-height: 1.5;
- padding: 5px 10px;
+ line-height: 1;
+ padding: 0 5px;
+ text-box: trim-both ex alphabetic;
+ text-transform: uppercase;
+ text-shadow: 2px 2px #40262244;
+ transition: border-image 200ms;
+ &:hover {
+ border-image-source: url("/images/button-hover.svg");
+ }
}
diff --git a/src/css/components/form.css b/src/css/components/form.css
index 74fe190..8f57997 100644
--- a/src/css/components/form.css
+++ b/src/css/components/form.css
@@ -1,13 +1,21 @@
form {
- background: white;
+ background: #ffeabc;
+ border: 5px solid black;
+ box-shadow: inset 0 0 0 4px #e6a000;
+ border-radius: 10px;
+ border-start-start-radius: 20px;
+ border-end-end-radius: 20px;
+ corner-shape: bevel;
+ color: #000;
display: grid;
gap: 10px;
justify-items: start;
- padding: 20px;
+ padding: 30px;
+ padding-block-start: 25px;
& label {
display: block;
- font-size: 1rem;
+ font-size: calc(20 / 16 * 1rem);
font-weight: 700;
inline-size: fit-content;
line-height: 1.5;
@@ -19,7 +27,7 @@ form {
&[action*="login"] {
grid-template-columns: 1fr auto;
- inline-size: min(100%, 400px);
+ inline-size: min(100%, 600px);
& input {
inline-size: 100%;
@@ -30,4 +38,13 @@ form {
grid-column: 2 / 3;
}
}
+
+ &[action*="purge"] {
+ & button {
+ &:not(:hover) {
+ border-image-source: url("/images/button-danger.svg");
+ color: #dd2244;
+ }
+ }
+ }
}
diff --git a/src/css/components/input.css b/src/css/components/input.css
index caa647a..8c9ef52 100644
--- a/src/css/components/input.css
+++ b/src/css/components/input.css
@@ -1,8 +1,12 @@
-input[type="text"] {
- background: white;
- border: 2px solid currentColor;
+input {
+ /*background: white;*/
+ border: 15px solid transparent;
+ border-image: url("/images/input.svg") 15 fill stretch;
+ block-size: calc((22 / 16 * 1rem) + 30px);
+ font-family: var(--font-family-1);
+ font-size: calc(18 / 16 * 1rem);
font-weight: 400;
inline-size: min(100%, 300px);
- line-height: 1.5;
- padding: 5px 10px;
+ line-height: calc(22 / 16 * 1rem);
+ padding: 0;
}
diff --git a/src/css/main.css b/src/css/main.css
index 841b06c..e4e5eef 100644
--- a/src/css/main.css
+++ b/src/css/main.css
@@ -1,7 +1,9 @@
@layer base, components, utility;
+@import "base/fonts.css" layer(base);
@import "base/reset.css" layer(base);
@import "base/global.css" layer(base);
+@import "base/properties.css" layer(base);
@import "base/typography.css" layer(base);
@import "components/button.css" layer(base);
@@ -21,7 +23,7 @@
grid-template-columns: var(--size) auto;
& img {
- border-radius: calc(1px * infinity);
+ /*border-radius: calc(1px * infinity);*/
block-size: var(--size);
inline-size: var(--size);
grid-column: 1;
diff --git a/src/routes/+page.svelte b/src/routes/+page.svelte
index d0953cf..fcc7cb9 100644
--- a/src/routes/+page.svelte
+++ b/src/routes/+page.svelte
@@ -113,6 +113,10 @@
};
+
Suggestions provided by Bluesky.
+Suggestions provided by Bluesky.
{/if} diff --git a/src/routes/favicon.ico/+server.ts b/src/routes/favicon.ico/+server.ts index 90ecdab..77b101f 100644 --- a/src/routes/favicon.ico/+server.ts +++ b/src/routes/favicon.ico/+server.ts @@ -8,10 +8,7 @@ export const GET: RequestHandler = async (event) => { const response = await event.platform.env.ASSETS.fetch( new URL("/images/favicon.ico", event.platform.env.ORIGIN), ); - // if (dev) { const headers = new Headers(response.headers); headers.set("Content-Type", "image/x-icon"); return new Response(response.body, { headers }); - // } - // return response; }; diff --git a/static/images/button-danger.svg b/static/images/button-danger.svg new file mode 100644 index 0000000..ac2a794 --- /dev/null +++ b/static/images/button-danger.svg @@ -0,0 +1,4 @@ + diff --git a/static/images/button-hover.svg b/static/images/button-hover.svg new file mode 100644 index 0000000..4a235b7 --- /dev/null +++ b/static/images/button-hover.svg @@ -0,0 +1,4 @@ + diff --git a/static/images/button.svg b/static/images/button.svg new file mode 100644 index 0000000..0aef633 --- /dev/null +++ b/static/images/button.svg @@ -0,0 +1,4 @@ + diff --git a/static/images/favicon.ico b/static/images/favicon.ico index ac0ed97a46fb5e21e2ae410622f2f261b721ec86..f78afc15c4fff93476a30feff185cb0794970e0e 100644 GIT binary patch literal 15406 zcmZQzU}Rus5D);-3Je)63=C!r3=9ei5Wa>W1H(KP1_lEI2tPxOf#H}a1A_(w1A_oa z9Roz10S8c0bND}Ku!i%0N%!3Ul3oQ^v9v=9PPfV%1^j34JpP}nb{kGCm_8k+ei_^N z|I9OP!{rsVT>mTRdV%?hny&v9^t}Ho>Uep2Zp58`vQ9{ev7-2vu<)PU52#E~&b3?v5<
zlQRqZ&(X5~Kg*P>|5+zr`On^Q^uIvHETZ*;%urHu{4Z-A^B)#&@`nC+^%IkRKxqq<
z#z1NzcA(`Q0_hi&wv{xT!S2ASe*p3#j$(mmVNf}vz`(%ZFqF!f0SM>865pflK+Cgg
z4&bs~D0%XK{@ev*VM&iX^76EX(|^&3mjBGtZi35rP<=rT7EbIZ%YL!oTClyKx=JLf
z?LWC##y*KW`$Ou$_Onj7NS1y|)3O)=`{hhR{>zz#{+BlnL~)