body {
    background-color: #008080; /* Classic Windows Teal */
    padding: 20px;
}

.merch-items {
    display: flex;
    flex-direction: column;
    gap: 20px;
    margin-top: 15px;
}

.merch-item {
    display: flex;
    gap: 15px;
    padding: 15px;
    border: 1px solid #888; /* Add a slight border for separation */
    background-color: #fff;
    box-shadow: inset -1px -1px #ffffff, inset 1px 1px #0a0a0a, inset -2px -2px #dfdfdf, inset 2px 2px #808080; /* Inner bevel like a fieldset */
}

.item-image.placeholder {
    width: 150px;
    height: 150px;
    background-color: #c0c0c0; /* Standard grey */
    border: 1px solid #808080;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    color: #555;
    font-size: 0.9em;
    flex-shrink: 0; /* Prevent image placeholder from shrinking */
}

.item-details {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}

.item-details h3 {
    margin-top: 0;
    margin-bottom: 5px;
}

.item-details p {
    margin: 5px 0;
}

.item-details button {
    margin-top: auto; /* Push button to the bottom */
    align-self: flex-start; /* Align button left */
}

/* Adjust field-row-stacked from 98.css slightly if needed, or use custom */
.field-row-stacked {
     /* 98.css already provides some styling, we adjust layout here */
     /* Ensure it behaves well with flex */
     display: flex; /* Override default block if necessary */
     align-items: flex-start; /* Align items top */
}

/* Remove default fieldset border/padding if using field-row-stacked on a fieldset */
.merch-item.field-row-stacked {
    padding: 15px; /* Custom padding */
    border: none; /* Remove default fieldset border if needed */
    margin: 0; /* Remove default fieldset margin */
}

/* Responsive adjustments */
@media (max-width: 600px) {
    .window {
        width: 95vw;
    }
    .merch-item {
        flex-direction: column;
        align-items: center; /* Center items when stacked */
    }
    .item-details button {
       align-self: center; /* Center button when stacked */
       margin-top: 10px;
    }
}

