register-invite-requests-front/css/style.css
2026-07-25 17:08:19 +03:30

233 lines
3.7 KiB
CSS

@font-face {
font-family: "IRANSans";
src: url("../assets/fonts/iransans/IRANSans_Light.ttf") format("truetype");
font-weight: 300;
font-display: swap;
}
@font-face {
font-family: "IRANSans";
src: url("../assets/fonts/iransans/IRANSans.ttf") format("truetype");
font-weight: 400;
font-display: swap;
}
@font-face {
font-family: "IRANSans";
src: url("../assets/fonts/iransans/IRANSans_Medium.ttf") format("truetype");
font-weight: 500;
font-display: swap;
}
@font-face {
font-family: "IRANSans";
src: url("../assets/fonts/iransans/IRANSans_Bold.ttf") format("truetype");
font-weight: 700;
font-display: swap;
}
@font-face {
font-family: "IRANSans";
src: url("../assets/fonts/iransans/IRANSans_Black.ttf") format("truetype");
font-weight: 900;
font-display: swap;
}
:root {
--orange: #f2701e;
--orange-dark: #e2650f;
--navy: #223D5D;
--text-primary: #17181a;
--text-secondary: #4d4d4d;
--text-muted: #9aa0a6;
--border-color: #e5e3e0;
--input-bg: #fafafa;
--skin: #f2c6a0;
--hair: #3b2a22;
}
* {
box-sizing: border-box;
}
html, body {
margin: 0;
padding: 0;
}
body {
font-family: "IRANSans", Tahoma, sans-serif;
background: #ececec;
color: var(--text-primary);
display: flex;
justify-content: center;
min-height: 100vh;
}
.screen {
width: 100%;
max-width: 430px;
min-height: 100vh;
background: #ffffff;
display: flex;
flex-direction: column;
}
@media (min-width: 431px) {
body {
align-items: flex-start;
padding: 32px 0;
}
.screen {
min-height: 860px;
border-radius: 28px;
box-shadow: 0 24px 60px rgba(0, 0, 0, 0.15);
overflow: hidden;
}
}
/* Logo */
.logo {
text-align: center;
padding-top: 28px;
}
.logo img {
width: 128px;
height: 128px;
}
/* Illustration */
.illustration {
display: flex;
justify-content: center;
padding: 8px 24px 0;
margin-top: 46px;
margin-bottom: 118px;
}
.illustration img {
width: 100%;
max-width: 300px;
height: auto;
}
/* Content */
.content {
padding: 12px 26px 0;
}
.title {
font-size: 18px;
font-weight: 500;
color: var(--text-primary);
margin: 0 0 10px;
text-align: right;
}
.subtitle {
font-size: 14.5px;
font-weight: 400;
color: var(--text-secondary);
margin: 0 0 16px;
text-align: right;
}
.description {
font-size: 13.5px;
line-height: 2;
color: var(--text-muted);
margin: 0 0 22px;
text-align: right;
}
.description strong {
color: var(--text-primary);
font-weight: 700;
}
.input-group {
margin-bottom: 10px;
}
.phone-input {
width: 100%;
padding: 15px 18px;
border-radius: 14px;
border: 1px solid var(--border-color);
background: var(--input-bg);
font-family: inherit;
font-size: 14.5px;
color: var(--text-primary);
text-align: right;
direction: ltr;
}
.phone-input::placeholder {
color: #bdbdbd;
font-family: inherit;
}
.phone-input:focus {
outline: none;
border-color: var(--orange);
background: #ffffff;
}
.hint {
font-size: 11.5px;
line-height: 1.9;
color: var(--text-muted);
margin: 0;
text-align: right;
}
.form-message {
font-size: 12.5px;
line-height: 1.8;
margin: 10px 0 0;
text-align: right;
min-height: 1em;
}
.form-message.error {
color: #d64545;
}
.form-message.success {
color: #2f9e5b;
}
.phone-input.invalid {
border-color: #d64545;
}
/* Footer / CTA */
.footer {
margin-top: auto;
padding: 24px 26px 32px;
}
.cta-btn {
width: 100%;
padding: 16px;
border: none;
border-radius: 14px;
background: var(--navy);
color: #ffffff;
font-family: inherit;
font-size: 16px;
font-weight: 500;
cursor: pointer;
transition: opacity 0.15s ease;
}
.cta-btn:active {
opacity: 0.85;
}
.cta-btn:disabled {
opacity: 0.6;
cursor: not-allowed;
}