/*
The screen: the cover (OURS, `LoginCover.tsx`) beside the form above 960 px and
above it below. The form's side keeps what it always had: the card centred on
`--bg`, the footer under it.
*/
.screen {
min-height: 100vh;
display: grid;
grid-template-columns: minmax(0, 6fr) minmax(0, 5fr);
background: var(--bg);
}
@media (max-width: 960px) {
.screen { grid-template-columns: minmax(0, 1fr); grid-template-rows: auto 1fr; }
}
.page {
min-width: 0;
display: grid;
place-items: center;
/* `align-content` as well as `place-items`: with two children (the card and
the footer), the rows split the height and each ends up centred in ITS half,
which left 258 px between them. This way the group is centred and the space
is set by the `gap`. */
align-content: center;
gap: var(--s-10);
background: var(--bg);
padding: var(--s-11);
}
.card {
composes: panel from '../ui/Panel.module.css';
width: 420px;
max-width: 100%;
padding: var(--s-11) var(--s-11);
}
/*
The mark is now an `
`, so what the browser gives it for being one has to be
taken back off: an `h1` brings its own size and margins, and without this the
screen grew all at once. The look does not change; the element does, which is
what was missing: it was the only screen in the console with no heading at all.
*/
.brand {
display: flex;
align-items: center;
gap: var(--s-7);
margin: 0 0 var(--s-11);
font-size: inherit;
font-weight: inherit;
}
/* Technitium's logo, not an initial of ours. See `app/Shell.module.css`. */
.mark { width: 28px; height: 28px; flex: none; }
.name { font-weight: 600; letter-spacing: -0.01em; color: var(--ink); font-size: var(--t-5); }
.form { display: flex; flex-direction: column; gap: var(--s-9); }
.sso { margin-top: var(--s-10); padding-top: var(--s-10); border-top: 1px solid var(--line); }
.ssoLink {
display: flex; align-items: center; justify-content: center; gap: var(--s-5);
font-size: var(--t-4); color: var(--mute); text-decoration: none;
border: 1px solid var(--line); border-radius: var(--r-2); padding: var(--s-5);
}
/* "Forgot Password?" is a bare link, not a button with a box: in upstream it
sits loose above the SSO block (index.html:119). */
.link {
display: block; width: 100%; text-align: center;
background: none; border: 0; padding: 0;
font: inherit; font-size: var(--t-4); color: var(--mute); cursor: pointer;
}
.link:hover { color: var(--acc-ink); }
.orLogin { margin: var(--s-8) 0 var(--s-7); text-align: center; font-size: var(--t-3); color: var(--faint); }
/* The footer, under the card and centred: it belongs to the page, not the form. */
.footer { font-size: var(--t-3); line-height: 2; text-align: center; }
/* Stacked under the cover, the card goes to the top instead of the middle: the
cover already took the top of the screen, and centring would push the form
further down on a phone. */
@media (max-width: 960px) {
.page { align-content: start; padding: var(--s-11) var(--s-10); }
}