145 lines
2.8 KiB
CSS
Executable File
145 lines
2.8 KiB
CSS
Executable File
.app-loading-overlay {
|
|
position: fixed;
|
|
inset: 0;
|
|
z-index: 9999;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
padding: 24px;
|
|
background:
|
|
radial-gradient(circle at top, rgba(59, 130, 246, 0.24), transparent 30%),
|
|
linear-gradient(135deg, rgba(2, 6, 23, 0.96), rgba(15, 23, 42, 0.98));
|
|
animation: app-loading-overlay-fade 0.45s ease-out 1.45s forwards;
|
|
}
|
|
|
|
.app-loading-panel {
|
|
width: min(100%, 560px);
|
|
padding: 28px;
|
|
border: 1px solid rgba(96, 165, 250, 0.22);
|
|
border-radius: 28px;
|
|
background:
|
|
linear-gradient(180deg, rgba(15, 23, 42, 0.92), rgba(2, 6, 23, 0.96)),
|
|
rgba(15, 23, 42, 0.92);
|
|
box-shadow:
|
|
0 24px 80px rgba(15, 23, 42, 0.55),
|
|
inset 0 1px 0 rgba(255, 255, 255, 0.08);
|
|
backdrop-filter: blur(16px);
|
|
}
|
|
|
|
.app-loading-panel__eyebrow {
|
|
display: inline-flex;
|
|
margin-bottom: 10px;
|
|
color: rgba(147, 197, 253, 0.92);
|
|
font-size: 12px;
|
|
font-weight: 700;
|
|
letter-spacing: 0.24em;
|
|
}
|
|
|
|
.app-loading-panel__title {
|
|
display: block;
|
|
margin-bottom: 18px;
|
|
color: #f8fafc;
|
|
font-size: clamp(26px, 5vw, 40px);
|
|
letter-spacing: 0.08em;
|
|
}
|
|
|
|
.app-loading-panel__status {
|
|
display: inline-flex;
|
|
align-items: center;
|
|
gap: 10px;
|
|
margin-bottom: 22px;
|
|
color: rgba(191, 219, 254, 0.88);
|
|
font-size: 14px;
|
|
text-transform: uppercase;
|
|
letter-spacing: 0.08em;
|
|
}
|
|
|
|
.app-loading-panel__pulse {
|
|
width: 10px;
|
|
height: 10px;
|
|
border-radius: 999px;
|
|
background: #38bdf8;
|
|
box-shadow: 0 0 0 rgba(56, 189, 248, 0.5);
|
|
animation: app-loading-pulse 1.2s ease-out infinite;
|
|
}
|
|
|
|
.app-loading-log {
|
|
display: grid;
|
|
gap: 10px;
|
|
}
|
|
|
|
.app-loading-log__line {
|
|
display: grid;
|
|
grid-template-columns: 64px minmax(0, 1fr);
|
|
gap: 14px;
|
|
padding: 12px 14px;
|
|
border: 1px solid rgba(96, 165, 250, 0.14);
|
|
border-radius: 16px;
|
|
background: rgba(15, 23, 42, 0.58);
|
|
color: #dbeafe;
|
|
opacity: 0;
|
|
transform: translateY(8px);
|
|
animation: app-loading-log-in 0.55s ease-out forwards;
|
|
}
|
|
|
|
.app-loading-log__time {
|
|
color: rgba(125, 211, 252, 0.72);
|
|
font-size: 13px;
|
|
font-variant-numeric: tabular-nums;
|
|
}
|
|
|
|
.app-loading-log__text {
|
|
min-width: 0;
|
|
font-size: 14px;
|
|
letter-spacing: 0.03em;
|
|
}
|
|
|
|
@keyframes app-loading-log-in {
|
|
from {
|
|
opacity: 0;
|
|
transform: translateY(8px);
|
|
}
|
|
|
|
to {
|
|
opacity: 1;
|
|
transform: translateY(0);
|
|
}
|
|
}
|
|
|
|
@keyframes app-loading-pulse {
|
|
0% {
|
|
box-shadow: 0 0 0 0 rgba(56, 189, 248, 0.46);
|
|
}
|
|
|
|
70% {
|
|
box-shadow: 0 0 0 12px rgba(56, 189, 248, 0);
|
|
}
|
|
|
|
100% {
|
|
box-shadow: 0 0 0 0 rgba(56, 189, 248, 0);
|
|
}
|
|
}
|
|
|
|
@keyframes app-loading-overlay-fade {
|
|
from {
|
|
opacity: 1;
|
|
}
|
|
|
|
to {
|
|
opacity: 0;
|
|
visibility: hidden;
|
|
}
|
|
}
|
|
|
|
@media (max-width: 640px) {
|
|
.app-loading-panel {
|
|
padding: 22px 18px;
|
|
border-radius: 24px;
|
|
}
|
|
|
|
.app-loading-log__line {
|
|
grid-template-columns: 1fr;
|
|
gap: 6px;
|
|
}
|
|
}
|