diff --git a/internal/web/static/panel.css b/internal/web/static/panel.css index f264094..f03ed7c 100644 --- a/internal/web/static/panel.css +++ b/internal/web/static/panel.css @@ -41,6 +41,13 @@ form.inline button { background: none; color: #2563eb; padding: 0; margin: 0; fo form.inline button:hover { text-decoration: underline; background: none; } main { max-width: 48rem; } .card + .card { margin-top: 1.2rem; } +/* Two cards side by side on a wide viewport; below 60rem the columns collapse + and the grid gap keeps the same vertical rhythm as .card + .card. The inner + margin-top is cleared because the gap already spaces the pair. */ +.split { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); gap: 1.2rem; align-items: start; } +.split > .card + .card { margin-top: 0; } +.card + .split, .split + .card { margin-top: 1.2rem; } +@media (max-width: 52rem) { .split { grid-template-columns: minmax(0, 1fr); } } .flash { background: #ecfdf3; border: 1px solid #abefc6; color: #067647; padding: 0.7rem 1rem; border-radius: 8px; margin-bottom: 1.2rem; } @media (prefers-color-scheme: dark) { .flash { background: #0d2818 !important; border-color: #1a5336 !important; color: #75d99b !important; } } table { width: 100%; border-collapse: collapse; } diff --git a/internal/web/templates/domain_detail.html b/internal/web/templates/domain_detail.html index d065888..444de74 100644 --- a/internal/web/templates/domain_detail.html +++ b/internal/web/templates/domain_detail.html @@ -101,6 +101,11 @@ lost, generate a new one.

+{{/* Applications and its create form sit side by side on a wide viewport: the + table is read far more often than the form, and pairing them saves scrolling + past the list to add one. On a narrow viewport the .split grid stacks them + again, list first. */}} +

Applications

Each application is a SASL login/password an app or script @@ -172,10 +177,39 @@ {{else}} -

No applications yet. Create one below.

+

No applications yet. Create the first one with the + Add an application form.

{{end}}
+
+

Add an application

+
+ + + + + + +
+ + +
+ + {{if .Error}}

{{.Error}}

{{end}} + +
+

A strong password is generated and shown once. The login must + be unique across all domains and may contain letters, digits, '.', '-' and '_'.

+
+
+

Sending rate limit (domain)

Optional level-2 limit (spec 7.4): cap how many messages this @@ -211,33 +245,6 @@ {{end}}

-
-

Add an application

-
- - - - - - -
- - -
- - {{if .Error}}

{{.Error}}

{{end}} - -
-

A strong password is generated and shown once. The login must - be unique across all domains and may contain letters, digits, '.', '-' and '_'.

-
-

Export domain

Download this domain to move it to another SelfPost instance: