* {
box-sizing: border-box;
}
body {
margin: 0;
min-height: 100vh;
padding: 35px;
font-family: Arial, sans-serif;
background: #f3f1f1;
color: #222;
}
.container {
width: min(1100px, 100%);
margin: 0 auto;
}
h1 {
margin: 0 0 25px;
text-align: center;
font-size: 34px;
}
/* Верхний блок */
.explanation {
background-color: rgb(190, 193, 193);
padding: 28px;
border-radius: 16px;
box-shadow:
0 8px 25px rgba(0, 0, 0, 0.10);
margin-bottom: 45px;
}
.explanation h2 {
margin: 0 0 10px;
}
.explanation > p {
margin: 0;
line-height: 1.5;
color: #3d3d3d;
}
/* Состояния */
.states {
display: flex;
gap: 15px;
margin-top: 25px;
}
.state {
flex: 1;
padding: 24px;
text-align: center;
border-radius: 12px;
transition:
transform 0.2s ease,
box-shadow 0.2s ease;
}
.state:hover {
transform: translateY(-3px);
box-shadow:
0 8px 18px rgba(0, 0, 0, 0.14);
}
.state h3 {
margin: 0 0 8px;
}
.state p {
margin: 0;
color: rgba(255, 255, 255, 0.8);
}
/* Твои цвета */
.pending {
background-color: #a76b73;
color: white;
}
.fulfilled {
background-color: rgb(136, 60, 66);
color: white;
}
.rejected {
background-color: rgb(129, 86, 86);
color: white;
}
/* Заголовок демо */
.demo-title {
margin: 0 0 15px;
font-size: 23px;
}
/* Консоль */
.console {
height: 250px;
padding: 22px;
overflow-y: auto;
background-color: #252525;
color: white;
border-radius: 14px;
font-family: Consolas, monospace;
font-size: 15px;
line-height: 1.5;
box-shadow:
0 10px 25px rgba(0, 0, 0, 0.18);
}
/* Кнопки */
.demo-area {
display: flex;
gap: 12px;
margin-top: 18px;
}
button {
padding: 12px 24px;
border: none;
outline: none;
border-radius: 9px;
font-size: 15px;
font-weight: 600;
cursor: pointer;
background-color: aliceblue;
transition:
transform 0.15s ease,
background-color 0.25s ease,
box-shadow 0.25s ease;
}
/* Основная кнопка */
#createPromise {
background-color: #a76b73;
color: white;
box-shadow:
0 5px 14px rgba(129, 86, 86, 0.25);
}
#createPromise:hover {
background-color: rgb(187, 102, 102);
transform: translateY(-2px);
box-shadow:
0 8px 18px rgba(129, 86, 86, 0.35);
}
/* Очистить */
#clearConsole {
background-color: aliceblue;
color: #444;
}
#clearConsole:hover {
background-color: rgb(187, 102, 102);
color: white;
transform: translateY(-2px);
box-shadow:
0 6px 15px rgba(129, 86, 86, 0.25);
}
/* Эффект клика */
button:active {
transform: translateY(1px) scale(0.97);
box-shadow:
0 2px 5px rgba(0, 0, 0, 0.15);
}
/* Логи */
.log-entry {
margin: 6px 0;
}
.info {
color: #d9b6b9;
}
.success {
color: #d58b91;
}
.error {
color: #a76b73;
}
/* Адаптация */
@media (max-width: 700px) {
body {
padding: 20px;
}
.states {
flex-direction: column;
}
.demo-area {
flex-direction: column;
}
button {
width: 100%;
}
}