/* Strickset Wizard Accordion */
.c-knitting-wizard {
    display: block;
    width: 100%;
    margin-top: 20px;
}

.c-knitting-wizard__grid {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-base);
    width: 100%;
}

@media (min-width: 992px) {
    .c-knitting-wizard__grid {
        display: grid;
        grid-template-columns: 1fr 1fr;
        align-items: start;
        gap: 20px;
        width: 100%;
    }
}

.c-knitting-wizard__main {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-s);
}

.c-wizard-section {
    border: 1px solid var(--color-border);
    border-radius: var(--radius-medium);
    overflow: hidden;
    transition: all 0.3s ease;
    color: inherit;
}

.c-wizard-section.is-active {
    border-color: var(--color-border);
    box-shadow: var(--shadow-light);
}

.c-wizard-section__header {
    display: flex;
    align-items: center;
    padding: 3px 5px;
    cursor: pointer;
    gap: var(--spacing-s);
}

.c-wizard-section.is-active .c-wizard-section__header {
    border-bottom: 1px solid var(--color-border);
}

.c-wizard-section__status {
    flex-shrink: 0;
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.c-wizard-section__title {
    margin: 0;
    font-size: 1.1rem;
    flex-grow: 1;
    color: inherit;
}

.c-wizard-section__summary {
    font-size: 0.9rem;
    color: currentColor;
    opacity: 0.7;
}

.c-wizard-section__content {
    padding: 6px;
}

/* Auswahl-Karten (Grössen) - Alt, falls noch gebraucht, sonst weglassen */
.c-selection-card {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: var(--spacing-base);
    border: 2px solid var(--color-border);
    border-radius: var(--radius-small);
    cursor: pointer;
    font-weight: bold;
    transition: all 0.2s;
}

.c-selection-card:hover {
    border-color: var(--color-secondary);
}

.c-selection-card.is-active {
    border-color: var(--color-primary);
    background-color: var(--color-bg-alt);
    color: var(--color-primary);
}

/* Grössenauswahl Radio Buttons */
.c-wizard-radio-group {
    display: flex;
    flex-wrap: wrap;
    gap: var(--spacing-m);
}

.c-wizard-radio-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 44px;
    height: 44px;
    padding: 0 var(--spacing-s);
    border: none;
    border-radius: var(--radius-small);
    cursor: pointer;
    font-weight: 500;
    transition: all 0.2s ease;
    /*background-color: var(--color-bg);*/
}

.c-wizard-radio-button:hover {
    background-color: var(--color-bg-alt);
}

.c-wizard-radio-button.is-active {
    background-color: var(--color-primary);
    color: white;
}

/* Grössenauswahl Select (Deprecated but kept for now) */
.c-wizard-size-select {
    appearance: none;
    width: 100%;
    padding: var(--spacing-s) var(--spacing-base);
    font-size: 1.2rem;
    font-weight: 500;
    line-height: 1.5;
    color: inherit;
    background-color: var(--color-bg-alt);
    border: 2px solid var(--color-border);
    border-radius: var(--radius-small);
    cursor: pointer;
    transition: border-color 0.2s, box-shadow 0.2s;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right var(--spacing-s) center;
    background-size: 20px;
}

.c-wizard-size-select:focus {
    outline: none;
    border-color: var(--color-primary);
    /*box-shadow: 0 0 0 3px rgba(var(--color-), 0.1);*/
}

.c-wizard-size-select:hover {
    border-color: var(--color-border-light);
}

/* Platzhalter in der Zusammenfassung */
.c-wizard-summary-placeholder {
    width: 64px;
    height: 74px;
    border: 1px dashed var(--color-border);
    border-radius: var(--radius-small);
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 5px;
    line-height: 1.2;
    font-size: 0.75rem;
    color: var(--color-text-white);
    /*background-color: rgba(var(--color-bg-), 0.5);*/
}

/* Anleitungs-Card */
.c-instruction-card {
    border: 1px solid var(--color-border-light);
    border-radius: var(--radius-small);
    padding: var(--spacing-s);
}

/* Swatch Selector Integration */
.c-wizard-swatch-container {
    margin-top: var(--spacing-s);
}

.c-product-widget__swatch-grid.has-scroll {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(60px, 1fr));
    gap: 8px;
    max-height: 250px; /* Ca. 3 Reihen bei ca. 80px Höhe pro Swatch (inkl. Gap) */
    overflow-y: auto;
    padding: 4px;
}

.c-product-widget__swatch-item {
    position: relative;
    border: 2px solid transparent;
    border-radius: var(--radius-small);
    /*background-color: var(--color-bg-);*/
    padding: 2px;
    cursor: pointer;
    transition: all 0.2s ease;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
}

.c-product-widget__swatch-item:hover {
    border-color: var(--color-border);
}

.c-product-widget__swatch-item.is-active {
    border-color: #fd0000; /* Success Green */
    background-color: rgba(40, 167, 69, 0.1); /* Light Green Background */
}

.c-product-widget__swatch-item.is-unavailable {
    opacity: 0.4;
    cursor: not-allowed;
    filter: grayscale(1);
}

/* Footer & Zusammenfassung */
.c-wizard-footer {
    position: sticky;
    top: var(--spacing-base);
    z-index: 10;
}

.c-wizard-summary-item {
    display: flex;
    align-items: center;
    gap: 15px; /* 15px margin between image and text */
    margin-bottom: var(--spacing-s);
}

.c-wizard-summary-image {
    flex-shrink: 0;
}

.c-wizard-summary-content {
    flex-grow: 1;
}

.c-wizard-summary-price {
    text-align: right;
    white-space: nowrap;
    font-weight: bold;
}

@media (max-width: 991px) {
    .c-wizard-footer {
        position: relative;
        top: 0;
        margin-top: var(--spacing-xl);
    }
}

.c-needle-option {
    border: 1px solid var(--color-border-light);
    border-radius: var(--radius-small);
    transition: background-color 0.2s;
}

.c-needle-option:hover {
    background-color: var(--color-bg-alt);
}

/* Warenkorb Strickset Gruppierung */
.c-cart-set-container {
    border: 1px solid var(--color-border);
    border-radius: var(--radius-medium);
    padding: var(--spacing-base);
    background-color: var(--color-bg-alt);
    margin-bottom: var(--spacing-base);
}

.c-cart-set-container .c-cart-item-row td:first-child,
.c-cart-set-container .c-cart-item-mobile {
    padding-left: var(--spacing-xl);
}

@media (max-width: 991px) {
    .c-cart-set-container {
        padding: var(--spacing-s);
    }
}
