html,body{height:100%;margin:0;padding:0}.header{display:flex;justify-content:center;padding:10px 0;margin-bottom:20px;width:100%}.logo-container{text-align:center}.logo-container img{height:150px;width:auto}body{font-family:'Avenir Condensed',sans-serif;display:flex;flex-direction:column;min-height:100vh;background-color:#fffefe;padding:20px}.buy-button{display:block;width:50%;padding:15px;background-color:#EAB3F5;color:#fff;border:none;border-radius:5px;font-size:18px;cursor:pointer;margin-top:20px;margin-bottom:20px}.buy-button:hover{background-color:#8B2252}.hcaptcha-container{display:flex;justify-content:center;align-items:center;margin:20px 0}.g-hcaptcha{transform:scale(.9);transform-origin:center}.main-wrapper{display:flex;justify-content:space-between;gap:200px;max-width:1600px;margin:0 auto;padding:0 20px}.left-column,.right-column{width:150%}.bag-preview{width:100%;height:0;padding-bottom:60%;position:relative;overflow:hidden;margin-bottom:5px}.bag-preview svg{position:absolute;top:0;left:0;width:100%;height:100%}.part-selector-container,.color-picker-container{margin-bottom:10px}.product-name{font-size:48px;margin-top:0;text-align:center;clear:both}.product-details{margin-bottom:50px}select,.color-picker,.rolltop-options{width:100%;margin-bottom:60px}.color-picker{display:flex;flex-wrap:wrap;gap:10px}.color-button{width:60px;height:60px;border-radius:50%;border:none;cursor:pointer}.color-button:hover{transform:scale(1.1)}.color-button-container{position:relative;display:inline-block}.color-button:hover::after{content:attr(title);position:absolute;bottom:100%;left:50%;transform:translateX(-50%);background-color:#929191;color:#fff;padding:5px 10px;border-radius:5px;font-size:12px;white-space:nowrap;z-index:1}.color-label{font-size:10px;text-align:center;max-width:50px}.slideshow-container{position:relative;width:100%;max-width:600px;margin:0 auto;box-sizing:border-box}.slideshow-aspect-ratio{position:relative;width:100%;padding-top:80%;overflow:hidden}.mySlides{position:absolute;top:0;left:0;width:100%;height:100%}.mySlides img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}.prev,.next{cursor:pointer;position:absolute;top:50%;width:auto;margin-top:-22px;padding:16px;color:#dc82ee;font-weight:700;font-size:18px;transition:0.6s ease;border-radius:0 3px 3px 0;user-select:none}.next{right:0;border-radius:3px 0 0 3px}.prev:hover,.next:hover{background-color:rgb(235 232 232 / .363)}.fade{animation-name:fade;animation-duration:1.5s}@keyframes fade{from{opacity:.4}to{opacity:1}}h1{font-size:36px}h3{font-size:24px;margin-bottom:0}h4{font-size:24px;line-height:1,5em}p small{margin-top:0;margin-bottom:5px}p{font-size:14px;margin:5px 0}.config-fieldset{border:none;padding:0;margin-bottom:20px}.config-fieldset legend{font-size:20px;font-weight:700;margin-top:15px;margin-bottom:4px;padding:0}.config-fieldset p{margin-top:0;margin-bottom:4px}.config-fieldset label{display:inline-block;margin-bottom:4px;font-weight:500}.config-fieldset select{margin-bottom:4px;padding:6px 10px;font-size:14px}.config-fieldset>div{margin-bottom:8px}select,.color-label{font-size:14px}.product-price{font-size:32px;font-weight:700}.narrow-select{width:100%;height:50px;margin-bottom:12px}textarea #comment{width:100%;padding:10px;margin-bottom:20px;border:1px solid #ccc;border-radius:4px;resize:vertical}.collapsible{background-color:#fff;color:#444;cursor:pointer;padding:18px;width:100%;border:none;text-align:left;outline:none;font-size:15px;position:relative;padding-left:40px;margin:0 0 30px}.collapsible:before{content:'\002B';font-size:20px;position:absolute;left:15px;top:50%;transform:translateY(-50%)}.collapsible.active:before{content:'\2212'}.content{padding:0 18px;max-height:0;overflow:hidden;transition:max-height 0.3s ease-out;background-color:#fff}.content.expanded{max-height:none;overflow:visible}.content .collapsible{padding-left:60px}.content .content{padding-left:40px}.content ul{padding-left:20px;margin:10px 0}.content ul li{font-size:14px;line-height:1.5;margin-bottom:5px}.content p,.content ul,.content ol,.content li{font-size:14px}.content:last-of-type {margin-bottom: 30px;}

.drop-zone {
    border: 2px dashed #cbd5e0;
    border-radius: 12px;
    padding: 40px 20px;
    text-align: center;
    cursor: pointer;
    transition: all 0.3s ease;
    background-color: #f7fafc;
    margin-top: 15px;
}

.drop-zone:hover {
    border-color: #4299e1;
    background-color: #ebf8ff;
}

.drop-zone.drag-over {
    border-color: #3182ce;
    background-color: #bee3f8;
    transform: scale(1.02);
}

.drop-zone-content svg {
    color: #4299e1;
    margin-bottom: 15px;
}

.drop-zone-content h4 {
    margin: 10px 0 5px 0;
    font-size: 18px;
    color: #2d3748;
}

.drop-zone-content p {
    margin: 5px 0;
    color: #718096;
    font-size: 14px;
}

.drop-zone-link {
    color: #4299e1;
    text-decoration: underline;
    cursor: pointer;
    font-weight: 600;
}

.drop-zone-link:hover {
    color: #3182ce;
}

.drop-zone-info {
    font-size: 12px !important;
    color: #a0aec0 !important;
    margin-top: 10px !important;
}

/* Foto-Vorschau */
.photo-preview {
    margin-top: 20px;
    border: 2px solid #e2e8f0;
    border-radius: 12px;
    padding: 15px;
    background-color: #ffffff;
}

.photo-preview-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 15px;
    padding-bottom: 10px;
    border-bottom: 1px solid #e2e8f0;
}

.photo-preview-name {
    font-weight: 600;
    color: #2d3748;
    font-size: 14px;
    flex: 1;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    margin-right: 10px;
}

.photo-preview-remove {
    background: #fed7d7;
    border: none;
    border-radius: 6px;
    padding: 6px;
    cursor: pointer;
    transition: all 0.2s ease;
    display: flex;
    align-items: center;
    justify-content: center;
}

.photo-preview-remove:hover {
    background: #fc8181;
}

.photo-preview-remove svg {
    color: #c53030;
}

.photo-preview-remove:hover svg {
    color: #ffffff;
}

.photo-preview-image {
    width: auto;
    max-width: 250px;  /* Feste maximale Breite */
    max-height: 200px;
    object-fit: contain;
    border-radius: 8px;
    background-color: #f7fafc;
    padding: 10px;
    display: block;
    margin: 0 auto;
}

.photo-preview-info {
    margin-top: 10px;
    text-align: center;
    font-size: 13px;
    color: #718096;
}

.photo-preview-size {
    background-color: #edf2f7;
    padding: 4px 12px;
    border-radius: 12px;
    display: inline-block;
}

/* Responsive */
@media (max-width: 768px) {
    .drop-zone {
        padding: 30px 15px;
    }
    
    .drop-zone-content h4 {
        font-size: 16px;
    }
    
    .photo-preview-image {
        max-height: 200px;
    }
}

@media (min-width:768px) and (max-width:1024px){.svg-container{transition:all 0.3s ease-in-out}.sticky-svg{position:fixed;top:0;left:0;width:100%;background-color:#fffefe;z-index:1000;padding:10px;box-shadow:0 2px 5px rgb(0 0 0 / .1)}.main-wrapper{transition:padding-top 0.3s ease-in-out}.left-column{position:relative;margin-bottom:-80px}#svg-container{width:100%;height:400px}.right-column{margin-top:-50px}.main-wrapper{flex-direction:column}.left-column,.right-column{width:100%}h1{font-size:32px}h3{font-size:22px}p{font-size:13px;margin:5px 0}select,.color-label{font-size:13px}.color-button{width:40px;height:40px}.product-name{font-size:36px}.product-price{font-size:28px}.slideshow-container{margin-bottom:15px}.buy-button{display:block;margin-left:auto;margin-right:auto;margin-top:50px}}@media (max-width:768px){.svg-container{transition:all 0.3s ease-in-out}.sticky-svg{position:fixed;top:0;left:0;width:100%;background-color:#fffefe;z-index:1000;padding:10px;box-shadow:0 2px 5px rgb(0 0 0 / .1)}.main-wrapper{transition:padding-top 0.3s ease-in-out;flex-direction:column;gap:80px}.left-column{position:relative;margin-bottom:-80px}#svg-container{width:100%;height:200px}.right-column{margin-top:-50px}body{padding:10px}.header{padding:5px 0;margin-bottom:10px}.logo-container img{height:60px}.product-name{font-size:28px}.product-price{font-size:18px}h3{font-size:14px}.main-wrapper{flex-direction:column}.left-column,.right-column{width:100%}.color-button{width:30px;height:30px}.color-label{font-size:8px}.buy-button{width:100%}.color-picker{width:100%}.narrow-select{width:100%}}@media screen and (max-width:360px){.g-hcaptcha{transform:scale(.8)}}


/* Info-Icon Styling */
.info-icon {
    display: inline-block;
    width: 20px;
    height: 20px;
    line-height: 20px;
    text-align: center;
    background-color: #4299e1;
    color: white;
    border-radius: 50%;
    font-size: 14px;
    font-weight: bold;
    cursor: pointer;
    margin-left: 5px;
    transition: all 0.3s ease;
    vertical-align: middle;
}

.info-icon:hover {
    background-color: #3182ce;
    transform: scale(1.1);
}

/* Modal Styling */
.info-modal {
    display: none;
    position: fixed;
    z-index: 10000;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgba(0, 0, 0, 0.7);
    align-items: center;
    justify-content: center;
}

.info-modal-content {
    background-color: #fefefe;
    margin: auto;
    padding: 30px;
    border: 1px solid #888;
    border-radius: 12px;
    max-width: 800px;
    width: 90%;
    max-height: 90vh;
    overflow-y: auto;
    position: relative;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
}

.info-modal-close {
    color: #aaa;
    float: right;
    font-size: 32px;
    font-weight: bold;
    line-height: 1;
    cursor: pointer;
    transition: color 0.3s ease;
}

.info-modal-close:hover,
.info-modal-close:focus {
    color: #000;
}

.info-modal-images-container {
    display: flex;
    flex-direction: column;
    gap: 20px;
    margin-top: 20px;
}

.info-modal-image-wrapper {
    text-align: center;
}

.info-modal-image-wrapper img {
    max-width: 100%;
    height: auto;
    border-radius: 8px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}

.info-modal-image-caption {
    margin-top: 10px;
    font-size: 16px;
    color: #555;
    font-weight: 500;
}

/* Responsive */
@media (max-width: 768px) {
    .info-modal-content {
        padding: 20px;
        width: 95%;
    }
    
    .info-modal-close {
        font-size: 28px;
    }
    
    .info-modal-image-caption {
        font-size: 14px;
    }
}