.s4t-planner {
    max-width: 920px;
    margin: 30px auto;
    padding: 25px;
    border: 1px solid #c9bbc0;
    border-radius: 16px;
    background: white;
}

.s4t-planner fieldset {
    margin: 22px 0;
    padding: 20px;
    border: 1px solid #a699a0;
    border-radius: 10px;
}

.s4t-planner legend {
    font-weight: 750;
    padding: 0 8px;
}

.s4t-planner select,
.s4t-planner input[type="number"] {
    display: block;
    width: 100%;
    max-width: 440px;
    margin-bottom: 12px;
}

.s4t-options {
    display: grid;
    grid-template-columns:
        repeat(auto-fit, minmax(220px, 1fr));
    gap: 12px;
}

.s4t-options label {
    margin: 0;
    padding: 12px;
    border: 1px solid #ddd;
    border-radius: 8px;
}

.s4t-options input {
    margin-right: 10px;
}

#s4t-results {
    margin-top: 28px;
}

.s4t-result-card {
    background: #fff6ed;
    padding: 20px;
    margin: 15px 0;
    border: 1px solid #dfc1ae;
    border-radius: 10px;
}

#s4t-export {
    margin-top: 16px;
}