Refine 'drill-luxe' Keycloak theme with responsive design and style adjustments

- Updated CSS styles for improved responsiveness and visual consistency across the login interface.
- Introduced clamp functions for padding and gap properties to enhance adaptability on various screen sizes.
- Adjusted dimensions and spacing for various elements to improve layout integrity and user experience.
- Added media queries for better handling of smaller screen heights, ensuring a more user-friendly interface.
This commit is contained in:
Первов Артем
2026-04-08 12:30:51 +03:00
parent 8c8ff80383
commit 9333eb327c

View File

@@ -22,6 +22,7 @@
body.drill-login {
margin: 0;
min-height: 100vh;
min-height: 100dvh;
font-family:
"Georgia",
"Inter Variable",
@@ -42,11 +43,12 @@ body.drill-login {
.drill-login__shell {
min-height: 100vh;
min-height: 100dvh;
display: grid;
grid-template-columns: minmax(0, 1.2fr) minmax(390px, 520px);
gap: 30px;
gap: clamp(18px, 2vw, 30px);
align-items: stretch;
padding: 30px;
padding: clamp(16px, 2.4vh, 30px) clamp(16px, 2vw, 30px);
}
.drill-login__brand,
@@ -64,11 +66,11 @@ body.drill-login {
}
.drill-login__brand {
padding: 50px;
padding: clamp(28px, 3.8vh, 50px);
display: flex;
flex-direction: column;
justify-content: space-between;
gap: 32px;
gap: clamp(18px, 2.2vh, 32px);
}
.drill-login__brand::before,
@@ -86,8 +88,8 @@ body.drill-login {
content: "";
position: absolute;
inset: auto -10% -16% auto;
width: 380px;
height: 380px;
width: 320px;
height: 320px;
border-radius: 50%;
background:
radial-gradient(circle, rgba(185, 106, 51, 0.18) 0%, rgba(185, 106, 51, 0.04) 42%, transparent 70%);
@@ -143,22 +145,22 @@ body.drill-login {
display: flex;
align-items: center;
justify-content: space-between;
gap: 18px;
gap: 14px;
}
.drill-login__brand-mark {
width: 78px;
height: 78px;
width: 70px;
height: 70px;
display: inline-flex;
align-items: center;
justify-content: center;
border-radius: 26px;
border-radius: 24px;
background:
linear-gradient(145deg, rgba(185, 106, 51, 0.24), rgba(239, 214, 180, 0.1)),
rgba(255, 255, 255, 0.02);
border: 1px solid rgba(210, 161, 112, 0.3);
color: var(--drill-accent-quaternary);
font-size: 2rem;
font-size: 1.8rem;
font-weight: 700;
letter-spacing: 0.1em;
box-shadow:
@@ -183,7 +185,7 @@ body.drill-login {
right: 14px;
top: 16px;
width: 8px;
height: 46px;
height: 40px;
border-radius: 999px;
background: linear-gradient(180deg, rgba(255, 241, 223, 0.88), rgba(210, 161, 112, 0.25));
box-shadow: 0 0 18px rgba(239, 214, 180, 0.24);
@@ -200,13 +202,13 @@ body.drill-login {
display: inline-flex;
align-items: center;
justify-content: center;
min-height: 44px;
padding: 11px 18px;
min-height: 40px;
padding: 9px 16px;
border-radius: 999px;
border: 1px solid rgba(210, 161, 112, 0.18);
background: linear-gradient(180deg, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0.025));
color: var(--drill-accent-tertiary);
font-size: 0.76rem;
font-size: 0.72rem;
letter-spacing: 0.18em;
text-transform: uppercase;
white-space: nowrap;
@@ -225,7 +227,7 @@ body.drill-login {
text-transform: uppercase;
letter-spacing: 0.28em;
font-size: 0.74rem;
margin-bottom: 20px;
margin-bottom: 14px;
}
.drill-login__brand h1,
@@ -239,8 +241,8 @@ body.drill-login {
.drill-login__brand h1 {
max-width: 760px;
font-family: Georgia, "Times New Roman", serif;
font-size: clamp(3.1rem, 6vw, 6rem);
line-height: 0.95;
font-size: clamp(2.5rem, 4.8vw, 5.1rem);
line-height: 0.92;
text-wrap: balance;
}
@@ -248,24 +250,24 @@ body.drill-login {
.drill-login__panel p,
.drill-login__feature-grid p {
color: var(--drill-text-secondary);
line-height: 1.72;
line-height: 1.55;
font-family:
"Inter Variable",
"Inter",
"Segoe UI",
sans-serif;
font-size: 1.02rem;
font-size: 0.95rem;
}
.drill-login__metrics {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 18px;
gap: 14px;
}
.drill-login__metrics div {
position: relative;
padding: 20px 22px;
padding: 16px 18px;
border-radius: 26px;
background:
linear-gradient(180deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.02)),
@@ -299,10 +301,10 @@ body.drill-login {
.drill-login__metrics strong {
display: block;
margin: 8px 0 10px;
margin: 6px 0 8px;
color: var(--drill-accent-tertiary);
font-family: Georgia, "Times New Roman", serif;
font-size: 1.2rem;
font-size: 1.08rem;
font-weight: 600;
letter-spacing: 0.03em;
}
@@ -310,24 +312,24 @@ body.drill-login {
.drill-login__metrics span {
display: block;
color: var(--drill-text-secondary);
line-height: 1.55;
line-height: 1.42;
font-family:
"Inter Variable",
"Inter",
"Segoe UI",
sans-serif;
font-size: 0.95rem;
font-size: 0.88rem;
}
.drill-login__feature-grid {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 18px;
gap: 14px;
}
.drill-login__feature-grid article {
position: relative;
padding: 22px;
padding: 18px;
border-radius: 26px;
background: linear-gradient(180deg, rgba(255, 255, 255, 0.028), rgba(255, 255, 255, 0.015));
border: 1px solid rgba(210, 161, 112, 0.12);
@@ -357,22 +359,22 @@ body.drill-login {
display: inline-block;
color: var(--drill-accent-secondary);
font-size: 0.8rem;
margin-bottom: 10px;
margin-bottom: 8px;
}
.drill-login__feature-grid strong {
display: block;
margin-bottom: 10px;
margin-bottom: 8px;
font-family:
"Inter Variable",
"Inter",
"Segoe UI",
sans-serif;
font-size: 1rem;
font-size: 0.94rem;
}
.drill-login__panel {
padding: 38px 36px;
padding: clamp(24px, 3.2vh, 38px) clamp(24px, 2vw, 36px);
display: flex;
flex-direction: column;
justify-content: center;
@@ -384,8 +386,8 @@ body.drill-login {
.drill-login__panel-glow {
inset: -20% auto auto -30%;
width: 240px;
height: 240px;
width: 200px;
height: 200px;
border-radius: 50%;
background: radial-gradient(circle, rgba(239, 214, 180, 0.12), transparent 68%);
filter: blur(10px);
@@ -393,19 +395,19 @@ body.drill-login {
}
.drill-login__panel-head {
margin-bottom: 28px;
margin-bottom: 22px;
}
.drill-login__panel h2 {
font-family: Georgia, "Times New Roman", serif;
font-size: clamp(2.15rem, 4vw, 3.2rem);
margin-bottom: 14px;
font-size: clamp(1.9rem, 3.2vw, 2.8rem);
margin-bottom: 10px;
line-height: 0.98;
}
.drill-login__alert {
margin-bottom: 18px;
padding: 15px 16px;
margin-bottom: 14px;
padding: 13px 14px;
border-radius: 20px;
border: 1px solid rgba(255, 255, 255, 0.08);
background: rgba(255, 255, 255, 0.04);
@@ -431,13 +433,13 @@ body.drill-login {
.drill-login__form {
display: flex;
flex-direction: column;
gap: 18px;
gap: 14px;
}
.drill-login__field {
display: flex;
flex-direction: column;
gap: 8px;
gap: 6px;
}
.drill-login__field-row {
@@ -477,9 +479,9 @@ body.drill-login {
linear-gradient(180deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.025)),
rgba(255, 255, 255, 0.02);
color: var(--drill-text-primary);
padding: 17px 18px;
padding: 14px 16px;
font:
500 0.98rem/1.3 "Inter Variable",
500 0.95rem/1.25 "Inter Variable",
"Inter",
"Segoe UI",
sans-serif;
@@ -508,10 +510,10 @@ body.drill-login {
}
.drill-login__submit {
margin-top: 8px;
margin-top: 4px;
border: none;
border-radius: 22px;
padding: 17px 20px;
padding: 15px 18px;
font:
700 0.96rem/1.2 "Inter Variable",
"Inter",
@@ -545,7 +547,7 @@ body.drill-login {
}
.drill-login__footer {
margin-top: 22px;
margin-top: 16px;
display: flex;
justify-content: space-between;
gap: 12px;
@@ -559,6 +561,110 @@ body.drill-login {
sans-serif;
}
@media (max-height: 900px) {
.drill-login__shell {
gap: 16px;
padding: 16px;
}
.drill-login__brand,
.drill-login__panel {
border-radius: 28px;
}
.drill-login__brand {
padding: 24px;
gap: 14px;
}
.drill-login__brand-orbit--one {
width: 180px;
height: 180px;
top: -72px;
}
.drill-login__brand-orbit--two {
width: 320px;
height: 320px;
bottom: -180px;
left: -96px;
}
.drill-login__brand h1 {
font-size: clamp(2rem, 3.8vw, 3.8rem);
}
.drill-login__brand p,
.drill-login__panel p,
.drill-login__feature-grid p {
font-size: 0.88rem;
line-height: 1.45;
}
.drill-login__metrics div,
.drill-login__feature-grid article {
padding: 14px;
}
.drill-login__metrics strong {
font-size: 1rem;
}
.drill-login__metrics span {
font-size: 0.82rem;
}
.drill-login__feature-grid strong {
font-size: 0.9rem;
}
.drill-login__panel {
padding: 22px;
}
.drill-login__panel h2 {
font-size: clamp(1.7rem, 2.8vw, 2.3rem);
}
.drill-login__field input {
padding: 13px 15px;
}
.drill-login__submit {
padding: 14px 16px;
}
}
@media (max-height: 760px) {
.drill-login__brand-copy p {
display: none;
}
.drill-login__feature-grid article p {
display: none;
}
.drill-login__metrics,
.drill-login__feature-grid {
gap: 10px;
}
.drill-login__metrics div,
.drill-login__feature-grid article {
padding: 12px;
border-radius: 20px;
}
.drill-login__eyebrow {
margin-bottom: 10px;
}
.drill-login__footer {
margin-top: 12px;
font-size: 0.76rem;
}
}
.drill-login__footer a {
color: var(--drill-accent-secondary);
text-decoration: none;