body {
    font-family: Arial, sans-serif;
    background-image: url(background.jpg);
    background-size: 250px;
    margin: 0;
    padding: 0;
}

ol {
    list-style: none;
    padding: 0px;
}

ol li {
    background: lightblue;
    border-radius: 10px;
    padding: 24px;
    margin: 10px 0px;
    font-size: 18px;
    font-style: italic;
    color: darkred;
    position: relative;
}

li span {
    position: absolute;
    background: white;
    padding: 10px 20px;
    top: -29px;
    left: -22px;
    border-radius: 64px;
    font-size: 32px;
    font-weight: bold;
    border: 1px solid;
    filter: opacity(0.5);
}

.wizard {
    max-width: 450px;
    margin: 0 auto;
    background: #ffffff75;
    padding: 20px;
    border-radius: 8px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}

.step {
    display: none;
    padding-bottom: 48px;
}

.step.active {
    display: block;
}

h1 {
    margin-top: 0px;
}

h2 {
    font-size: 1.5em;
    margin-top: -5px;
    margin-bottom: 20px;
    text-align: center;
    background: #ffffffbd;
    padding: 16px;
}

h5 {
    font-size: 1em;
    margin-top: -48px;
    margin-bottom: 20px;
    text-align: center;
    background: #ffffffbd;
    padding: 16px;
    font-style: italic;
    color: darkslategray;
}

.options label {
    display: block;
    margin: 10px 0;
    cursor: pointer;
    position: relative;
    border-radius: 32px;
    overflow: hidden;
}

input[type="text"] {
    background: #ffffffcc;
    position: absolute;
    bottom: 20px;
    left: 0px;
    right: 0px;
    border: none;
    text-align: center;
    padding: 10px;
}

label span {
    position: absolute;
    top: 0px;
    left: 0px;
    bottom: 0px;
    padding: 16% 0px;
    background: linear-gradient(270deg, black, #000000ab);
    font-size: 20px;
    font-weight: bold;
    text-align: center;
    color: #f8f8ff94;
    width: 50%;
}

#step1 label span {
    position: absolute;
    top: 0px;
    left: 0px;
    right: 0px;
    bottom: auto;
    padding: 10px;
    background: #0000007a;
    font-size: 20px;
    font-weight: bold;
    text-align: center;
    color: ghostwhite;
    width: 100%;
}

input[type="radio"], input[type="checkbox"] {
    display: none;
}

input[type="radio"] + img, input[type="checkbox"] + img {
    width: 55%;
    border-radius: 8px;
    border: 1px solid #ccc;
    margin-bottom: 10px;
    transition: transform 0.3s ease;
    height: 148px;
    float: right;
    filter: drop-shadow(2px 4px 6px black);
}

#step1 input[type="radio"] + img, #step1 input[type="checkbox"] + img {
    width: 100%;
    border-radius: 8px;
    border: 1px solid #ccc;
    margin-bottom: 10px;
    transition: transform 0.3s ease;
    height: 280px;
    float:none;
}

input[type="checkbox"] {
    display: none;
}

button {
    padding: 12px 25px;
    font-size: 16px;
    border: none;
    border-radius: 8px;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

button.prev-btn {
    float: left;
    background: #c3c3c3;
}

button.next-btn {
    float: right;
    background: #068495;
    color: whitesmoke;
}

button:hover {
    background-color: #4cafa5;
}

#step4 {
    padding: 20px;
    background-color: #f4f4f4;
    border-radius: 8px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    margin-bottom: 20px;
}

#step4 label {
    font-size: 16px;
    margin-bottom: 10px;
    display: block;
}

#step4 input[type="number"] {
    padding: 8px;
    font-size: 14px;
    border-radius: 4px;
    border: 1px solid #ddd;
    width: 100%;
}

#step5 {
    padding: 20px;
    background-color: #f9f9f9;
    border-radius: 8px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}

#step5 label {
    display: block;
    margin-bottom: 10px;
}

#step5 input {
    padding: 10px;
    font-size: 14px;
    border-radius: 4px;
    border: 1px solid #ddd;
    width: 100%;
    margin-bottom: 10px;
}

/* Step 0 specific styling */
#step0 {
    background-color: #f7f8fc; /* Soft background color */
    border: 2px solid #e3e4e8; /* Light border */
    padding: 30px;
    text-align: center;
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.1);
    max-width: 600px;
    margin: 0 auto;
    border-radius: 12px;
}

#step0 h2 {
    font-size: 28px;
    color: #333;
    font-weight: 600;
    margin-bottom: 20px;
}

#step0 p {
    font-size: 18px;
    color: #666;
    margin-bottom: 30px;
}

#step0 .next-btn {
    padding: 12px 25px;
    font-size: 16px;
    color: whitesmoke;
    border: none;
    border-radius: 8px;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

#step0 .next-btn:hover {
    background-color: #a9d7dd;
}

label.selected {
    box-shadow: 0px 0px 1px 6px #ff00b3;
}

label input[type="checkbox"]:checked {
    background-color: #e0e0e0;
    border: 2px solid #007bff;
    font-weight: bold;
}

label input[type="radio"]:checked {
    background-color: #e0e0e0;
    border: 2px solid #007bff;
    font-weight: bold;
}

button.submit {
    float: right;
    background: deepskyblue;
}

h3 {
    background: #000000a1;
    display: block;
    padding: 10px;
    color: whitesmoke;
    font-size: 14px;
    border-radius: 10px;
    font-style: italic;
}

input#num_people {
    width: 50px!important;
}

input#delivery_date {
    padding: 10px;
    border-radius: 10px;
    border: 1px solid lightgray;
    width: 93%;
}

input#styling_image {
    border: 1px solid lightgray;
    padding: 10px;
    width: 94%;
    background: white;
}

input#email {
    padding: 10px;
    width: 93%;
    border-radius: 10px;
    border: 1px solid lightgray;
}

input#comments {
    position: relative;
    padding: 10px;
    width: 93%;
    border-radius: 10px;
    border: 1px solid lightgray;
}

hr {
    margin: 20px auto;
    color: lightgray;
    border-top: 1px solid;
}

div#weight {
    display: inline-block;
    background: lightblue;
    padding: 7px;
    font-style: italic;
    color: #00000094;
    float: right;
}

#fakealert{
    display: none;
    position: fixed;
    top: 40%;
    background: rgba(0, 0, 0, 0.808);
    padding: 20px;
    left:5%;
    z-index: 10;
    color: antiquewhite;
    border-radius: 10px;
    box-shadow: 0px 0px 132px 10px black;
    width: 80%;
    text-align: center;
    line-height: 48px;
}
