
body {
    margin:0;
    background:#121212;
    color:white;
    font-family:Arial;
}

nav {
    background:#1d1d1d;
    padding:16px;
}

nav a {
    color:white;
    text-decoration:none;
    margin-right:16px;
}

main {
    padding:24px;
}

.admin-nav {
    margin-bottom:20px;
}

.admin-nav a {
    background:#2a2a2a;
    padding:10px 14px;
    border-radius:8px;
    text-decoration:none;
    color:white;
    margin-right:10px;
}

form {
    display:flex;
    flex-direction:column;
    gap:12px;
    margin-bottom:20px;
    max-width:700px;
}

input, textarea, button, select {
    padding:12px;
}

table {
    width:100%;
    border-collapse:collapse;
}

th, td {
    border:1px solid #333;
    padding:12px;
}

.header-wrapper {
    display:flex;
    justify-content:space-between;
    align-items:center;
}

.dropdown-btn {
    background:transparent;
    border:none;
    color:white;
    font-size:12px;
    cursor:pointer;
}

.masonry-grid {
    column-count:4;
    column-gap:18px;
}

.masonry-item {
    break-inside:avoid;
    margin-bottom:18px;
    background:#1f1f1f;
    border-radius:14px;
    overflow:hidden;
}

.masonry-item img {
    width:100%;
    display:block;
}

.masonry-item.small img {
    max-height:250px;
    object-fit:cover;
}

.masonry-item.medium img {
    max-height:450px;
    object-fit:cover;
}

.masonry-item.large img {
    max-height:700px;
    object-fit:cover;
}

.controls {
    padding:12px;
}

.message {
    padding:12px;
    margin-bottom:20px;
}

.success {
    background:#204020;
}

.danger {
    background:#702020;
}
.auftrag-layout {
    display: flex;
    gap: 40px;
    align-items: flex-start;
}

.auftrag-form {
    flex: 2;
}

.model-links {
    flex: 1;
    background: #1f1f1f;
    padding: 20px;
    border-radius: 12px;
    position: sticky;
    top: 20px;
}

.model-links h2 {
    margin-top: 0;
}

.model-links a {
    display: block;
    margin-top: 14px;
    color: #7ab8ff;
    text-decoration: none;
    font-weight: bold;
}

.model-links a:hover {
    text-decoration: underline;
}
.hero-info {
    padding: 50px 20px;
}

.hero-info h2 {
    font-size: 36px;
    margin-bottom: 20px;
}

.hero-info p {
    font-size: 18px;
    line-height: 1.6;
    margin-bottom: 20px;
}

.info-boxes {
    display: flex;
    gap: 25px;
    margin-top: 40px;
    flex-wrap: wrap;
}

.info-card {
    flex: 1;
    min-width: 280px;
    background: #1f1f1f;
    padding: 25px;
    border-radius: 14px;
}

.info-card h3 {
    margin-top: 0;
    margin-bottom: 15px;
}
.category-section {
    padding: 40px 20px;
}

.gallery-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 20px;
    margin-top: 20px;
}

.gallery-card {
    background: #1f1f1f;
    border-radius: 14px;
    overflow: hidden;
}

.gallery-card img {
    width: 100%;
    display: block;
}