/**
 * IS Shades Configurator – Cart & Checkout only
 * Loaded only on cart and checkout pages.
 */

.issc-cart-configuration,
.issc-order-configuration {
    margin-top: 0.5em;
    font-size: 0.9em;
}

.issc-configuration-details {
    margin: 0;
}

.issc-configuration-details--compact .issc-configuration-list > dd:first-child,
.issc-configuration-details--compact .issc-configuration-list > dt:first-child {
    margin-top: 0;
}

.issc-configuration-details--compact .issc-configuration-list dt.issc-configuration-step-name {
    margin: 0.25em 0 0.1em;
    font-size: 0.95em;
}

.issc-configuration-details--compact .issc-configuration-list dd.issc-configuration-step-section {
    margin: 0 0 0.35em;
}

.issc-configuration-details--compact .issc-step-details dd.issc-field-row,
.issc-configuration-details--compact .issc-field-row--compact {
    margin: 0.15em 0;
    font-size: 0.9em;
    line-height: 1.35;
}

.issc-configuration-list {
    display: block;
    margin: 0;
    padding: 0;
    list-style: none;
}

.issc-configuration-list dt.issc-configuration-step-name {
    font-weight: bold;
    margin: 0.5em 0 0.25em;
    color: inherit;
    font-size: 1em;
    text-align: left;
}

.issc-configuration-list dt.issc-configuration-step-name:first-child {
    margin-top: 0;
}

.issc-configuration-list dd.issc-configuration-step-section {
    margin: 0 0 0.75em;
    padding: 0;
    text-align: left;
}

.issc-step-details {
    margin: 0;
    padding: 0;
    list-style: none;
}

.issc-step-details dd.issc-field-row {
    margin: 0.2em 0 0.4em;
    padding: 0;
    font-size: 0.95em;
}

.issc-step-details .issc-field-label {
    font-weight: 600;
    color: inherit;
}

.issc-step-details .issc-field-value {
    color: #555;
}

.issc-order-configuration-entries {
    margin-top: 0.5rem;
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.issc-order-configuration-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.5rem 1rem;
    align-items: baseline;
    font-size: 0.9em;
}

.issc-order-configuration-label {
    color: #444;
}

.issc-order-configuration-value {
    font-weight: 600;
    color: #444;
}

.issc-cart-edit-row {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    align-items: center;
}

.issc-cart-edit-cell {
    flex: 0 0 auto;
}

.issc-cart-edit-cell-empty {
    min-width: 24px;
}

.issc-cart-edit-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    border-radius: 4px;
    color: #444;
    background: rgba(255, 255, 255, 0.6);
    transition: color 0.2s, background 0.2s;
}

.issc-cart-edit-link:hover {
    color: #222;
    background: rgba(0, 0, 0, 0.06);
}

.issc-cart-edit-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.issc-cart-edit-icon svg {
    width: 16px;
    height: 16px;
}

.issc-cart-entries-table-wrapper {
    margin-top: 0.5rem;
}

.issc-cart-entries-grid {
    display: flex;
    flex-direction: column;
    gap: 0;
}

.issc-cart-entry-row {
    display: grid;
    grid-template-columns: 1fr 1fr auto 24px;
    gap: 0.5rem 1rem;
    align-items: center;
    min-height: 32px;
    padding: 4px 0;
    font-size: 12px;
}

.issc-cart-entry-row:nth-child(odd) .issc-cart-entry-label,
.issc-cart-entry-row:nth-child(odd) .issc-cart-entry-value,
.issc-cart-entry-row:nth-child(odd) .issc-cart-entry-price,
.issc-cart-entry-row:nth-child(odd) .issc-cart-entry-edit {
    background: rgba(255, 255, 255, 0.6);
}

.issc-cart-entry-label {
    padding: 4px 8px 4px 8px;
    color: #444;
}

.issc-cart-entry-value {
    padding: 4px 16px 4px 8px;
    font-weight: 600;
    color: #444;
}

.issc-cart-entry-price {
    padding: 4px 16px 4px 8px;
    font-weight: 600;
    text-align: right;
    color: #444;
}

.issc-cart-entry-edit {
    display: flex;
    justify-content: flex-end;
    padding: 4px 16px 4px 8px;
}

.issc-order-downloads {
    font-size: 0.9em;
}

.issc-order-download-link {
    color: #2271b1;
    text-decoration: underline;
}

.issc-order-download-link:hover {
    color: #135e96;
}
