2026-06-04 11:34:48 +02:00

175 lines
4.1 KiB
CSS

/* lobby.css */
/* ════════════════════════════════════════
LOBBY LAYOUT
════════════════════════════════════════ */
.lobby {
min-height: calc(100vh - var(--hh));
display: grid;
place-items: center;
padding: 60px 0;
}
.lobby__inner {
display: grid;
grid-template-columns: 1fr minmax(300px, 480px);
gap: 64px;
align-items: center;
width: 100%;
}
/* ════════════════════════════════════════
PROMO (LEFT COLUMN)
════════════════════════════════════════ */
/* Eyebrow badge — mirrors index.css for standalone page loading */
.eyebrow {
display: inline-flex;
align-items: center;
gap: 8px;
padding: 6px 14px 6px 10px;
border-radius: 999px;
border: 1px solid var(--leaf-dim);
background: rgba(65, 184, 105, 0.08);
color: #289149;
font-size: 0.78rem;
font-weight: 600;
letter-spacing: 0.05em;
text-transform: uppercase;
margin-bottom: 22px;
}
.eyebrow__dot {
width: 7px;
height: 7px;
border-radius: 50%;
background: var(--leaf);
animation: pulse 2s ease-in-out infinite;
}
@keyframes pulse {
0%, 100% { transform: scale(1); opacity: 1; }
50% { transform: scale(1.45); opacity: 0.7; }
}
/* Lobby name badge */
.lobby__name-badge {
display: inline-flex;
align-items: center;
gap: 8px;
padding: 10px 18px;
border-radius: var(--r-lg);
background: var(--glass);
border: 1px solid rgba(255, 255, 255, 0.9);
box-shadow: var(--shadow-sm);
backdrop-filter: blur(10px);
margin-bottom: 20px;
}
.lobby__name-icon { font-size: 1.1rem; }
#lobby-name-display {
font-family: "Syne", sans-serif;
font-weight: 700;
font-size: 1rem;
color: var(--ink);
letter-spacing: -0.01em;
}
/* Title */
.lobby__title {
font-family: "Syne", sans-serif;
font-weight: 800;
font-size: clamp(2.8rem, 5.5vw, 5rem);
line-height: 0.94;
letter-spacing: -0.04em;
margin-bottom: 20px;
}
.lobby__title em {
font-style: normal;
background: linear-gradient(135deg, var(--sea), var(--leaf));
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
}
/* Description */
.lobby__desc {
font-size: 1.02rem;
line-height: 1.72;
color: var(--ink-soft);
max-width: 420px;
margin-bottom: 32px;
}
/* Info badges */
.lobby__badges {
display: flex;
flex-wrap: wrap;
gap: 10px;
}
.badge {
display: inline-flex;
align-items: center;
gap: 6px;
padding: 8px 14px;
border-radius: 999px;
background: var(--glass);
border: 1px solid rgba(255, 255, 255, 0.9);
box-shadow: var(--shadow-sm);
font-size: 0.82rem;
font-weight: 600;
color: var(--ink-soft);
backdrop-filter: blur(8px);
}
.badge__icon { font-size: 1rem; }
/* ════════════════════════════════════════
FORM CARD (RIGHT COLUMN)
════════════════════════════════════════ */
.lobby__card {
background: var(--white);
border: 1px solid var(--line);
border-radius: var(--r-xl);
padding: 44px;
box-shadow: var(--shadow);
}
.lobby__card-title {
font-family: "Syne", sans-serif;
font-weight: 800;
font-size: 1.5rem;
letter-spacing: -0.02em;
margin-bottom: 8px;
}
.lobby__card-sub {
font-size: 0.9rem;
color: var(--ink-muted);
margin-bottom: 30px;
}
/* Form and field styles live in main.css */
/* ════════════════════════════════════════
RESPONSIVE
════════════════════════════════════════ */
@media (max-width: 900px) {
.lobby__inner { grid-template-columns: 1fr; gap: 40px; }
}
@media (max-width: 680px) {
.lobby { padding: 44px 0; }
.lobby__card { padding: 28px 22px; }
}
@media (max-width: 360px) {
.lobby__card { padding: 22px 16px; }
.lobby__title { font-size: 2.4rem; }
}