body {
    font-family: 'Press Start 2P', cursive;
    background: repeating-linear-gradient(
        45deg,
        #5dc27d,
        #5dc27d 10px,
        #87e0a8 10px,
        #87e0a8 20px
    );
    margin: 0;
    padding: 0;
    text-align: center;
    color: #000;
}

.container {
    max-width: 1000px;
    margin: auto;
    padding: 20px;
}

h1 {
    background: #fff;
    padding: 20px;
    border: 6px solid #000;
    box-shadow: 6px 6px 0px #000;
    margin-bottom: 25px;
    text-transform: uppercase;
}

.balance-box {
    background: #a5d672;
    padding: 20px;
    border: 6px solid #000;
    box-shadow: 6px 6px 0px #000;
}

.balance-box p {
    font-size: 14px;
}

.summary {
    display: flex;
    justify-content: space-around;
    margin: 25px 0;
    flex-wrap: wrap;
    gap: 15px;
}

.summary div {
    flex: 1 1 40%;
    padding: 15px;
    border: 5px solid #000;
    box-shadow: 5px 5px 0px #000;
    text-align: center;
}

.income {
    background: #d4f8d4;
    color: #0a7a0a;
}

.expenses {
    background: #f8d4d4;
    color: #a30000;
}

.transactions-section {
    display: flex;
    justify-content: space-between;
    flex-wrap: nowrap;
    gap: 25px;
}

.transactions, .add-transaction {
    flex: 1 1 45%;
    background: #fff;
    padding: 15px;
    border: 5px solid #000;
    box-shadow: 5px 5px 0px #000;
}

.transactions h2,
.add-transaction h2 {
    background: #eee;
    padding: 8px;
    border-bottom: 3px solid #000;
    margin-bottom: 15px;
}

.transactions ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.transactions li {
    display: flex;
    justify-content: space-between;
    margin-bottom: 12px;
    padding: 8px;
    border: 3px solid #000;
    box-shadow: 3px 3px 0px #000;
    font-size: 12px;
}

.income-item {
    background: #d4f8d4;
}

.expense-item {
    background: #f8d4d4;
}

.add-transaction input,
.add-transaction button {
    width: 80%;
    padding: 10px;
    margin: 6px 0;
    border: 3px solid #000;
    font-family: 'Press Start 2P', cursive;
    font-size: 12px;
    box-shadow: 3px 3px 0px #000;
    background: #fff;
}

.add-transaction button {
    width: 85%;
    background: #a5d672;
    cursor: pointer;
}

.add-transaction button:hover {
    background: #8fc15e;
}

.info-text {
    font-size: 10px;
    color: #555;
    margin-top: 20px;
}

/* Pixel "borda dupla" para reforçar estilo retro */
* {
    image-rendering: pixelated;
}

/* Responsividade */
@media (max-width: 768px) {
    .summary {
        align-items: center;
    }
    .transactions-section {
        flex-direction: column;
    }
    .transactions, .add-transaction {
        flex: 1 1 100%;
    }
}
