diff --git a/web/assets/css/main.css b/web/assets/css/main.css
index bd38180..3cdba21 100644
--- a/web/assets/css/main.css
+++ b/web/assets/css/main.css
@@ -11,6 +11,7 @@
--secondary-color: #9f2b68;
--text-color: #f5f5f5;
--text-indent: 1.6rem;
+ color-scheme: light dark;
--overlay-background-color: #f5f5f574;
scrollbar-color: var(--primary-color) var(--background-color); }
@@ -77,28 +78,25 @@ header {
flex-wrap: wrap;
justify-content: space-between; }
-header svg { width: 360px; }
-
header svg text { fill: var(--text-color); }
header svg text:first-child {
- font-size: 2rem;
+ font-size: 3.55rem;
font-variant-caps: small-caps;
font-weight: bold; }
-header svg text:last-child { font-size: .88rem; }
+header svg text:last-child { font-size: 1.5rem; }
-@media screen and (-webkit-min-device-pixel-ratio:0) {
- header svg text:first-child { font-size: 2.082rem; } }
+@supports (-moz-appearance:none) {
+ header svg text:last-child { transform: scale(.993, 1); } }
-@-moz-document url-prefix() {
- header svg text:first-child { font-size: 2rem; } }
+header nav {
+ display: flex;
+ flex-direction: column;
+ font-variant: small-caps;
+ justify-content: space-evenly; }
-nav { margin-top: .5rem; }
-
-nav a { font-variant: small-caps; }
-
-nav h1 {
+header nav h1 {
color: var(--secondary-color);
margin: 0; }
@@ -126,6 +124,8 @@ tr:focus-within {
tr:hover a,
tr:focus-within a { color: white; }
+tr a { color: var(--text-color); }
+
th { text-align: left; }
th:nth-child(2),
@@ -205,26 +205,19 @@ thead tr th.clickable.sort-down::after { content: '↓'; }
background-color: var(--background-color);
color: var(--primary-color); }
-#error {
- font-size: 3.5rem;
- line-height: 5rem;
- text-align: center;
- margin: 6rem 0; }
-
-#error h1 { font-size: 8rem; }
-
footer {
font-size: .8rem;
text-align: center;
padding: 1rem 0; }
+
@media screen and (max-width: 640px) {
- header { display: block; }
+ header {
+ align-items: center;
+ flex-direction: column; }
- header svg {
- margin: 0 auto;
- width: 100%; }
+ header svg { width: 100%; }
- nav {
+ header nav {
width: 100%;
text-align: center; } }
\ No newline at end of file
diff --git a/web/index.templ b/web/index.templ
new file mode 100644
index 0000000..1712682
--- /dev/null
+++ b/web/index.templ
@@ -0,0 +1,97 @@
+package web
+
+import "github.com/invopop/ctxi18n/i18n"
+import "net/http"
+import "dwelling-files/pkg/files"
+import "dwelling-files/pkg/utils"
+import "strconv"
+
+
+templ Index(currentPath, progVer string, stat *files.DirStat, entries *[]files.DirEntry, r *http.Request) {
+
+
+
+
+
+
+
+
+
+ Arav's dwelling / { i18n.T(ctx, "title") }
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ { i18n.T(ctx, "table.name") } |
+ { i18n.T(ctx, "table.date") } |
+ { i18n.T(ctx, "table.size") } |
+
+
+ ../ |
+
+
+
+ for i, entry := range *entries {
+
+ { entry.Name } |
+ { utils.ToClientTimezone(entry.Datetime, r).Format(files.FileDateFormat) } |
+ { entry.Size } |
+
+ }
+
+
+
+
+ @templ.Raw(currentPath)
+
+
+
+
+
+
+
+
+}
\ No newline at end of file