body {
    margin: 0;
    font-family: "Segoe UI", sans-serif;
    color: #1c1917;
    background: #fafaf9;
}

.site-header, main, .stack {
    display: flex;
    gap: 16px;
}

.site-header {
    justify-content: space-between;
    align-items: center;
    padding: 16px 24px;
    background: #ffffff;
    border-bottom: 1px solid #e7e5e4;
}

.site-header nav, .views {
    display: flex;
    gap: 12px;
    align-items: center;
}

main {
    flex-direction: column;
    padding: 24px;
    max-width: 960px;
}

.stack {
    flex-direction: column;
    max-width: 420px;
    margin-bottom: 24px;
}

label {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

input, select, textarea, button {
    font: inherit;
}

button, .views a, .site-header a {
    color: #1d4ed8;
}

.errors {
    background: #fef2f2;
    padding: 12px;
}

.bookings, .week, .month, .day {
    display: flex;
    gap: 12px;
}

.week, .month, .day {
    flex-wrap: wrap;
    align-items: stretch;
}

.overlap {
    display: flex;
    gap: 8px;
}

.booking, .service {
    background: #ffffff;
    border: 1px solid #e7e5e4;
    padding: 12px;
    flex: 1;
}

.service.featured {
    border-color: #1d4ed8;
}

.booking form, .site-header form {
    margin: 0;
}
:root .business-logo { max-width: 220px; max-height: 100px; object-fit: contain; }
