.cart-summary {
    overflow: hidden;
    border: 1px solid rgba(15, 23, 42, .08);
    border-radius: 24px;
    background:
        linear-gradient(145deg, rgba(255,255,255,.96), rgba(255,255,255,.84)),
        var(--c-surface);
    box-shadow: 0 24px 70px rgba(15, 23, 42, .09);
}

.cart-summary__head {
    display: flex;
    align-items: center;
    gap: var(--sp-3);
    padding: var(--sp-4);
    border-bottom: 1px solid rgba(15, 23, 42, .07);
}

.cart-summary__icon {
    display: grid;
    place-items: center;
    width: 40px;
    height: 40px;
    border-radius: 15px;
    background: rgba(var(--c-primary-rgb), .1);
    color: var(--c-primary);
}

.cart-summary__head strong {
    display: block;
    color: var(--c-text);
    font-size: var(--text-lg);
}

.cart-summary__head small {
    display: block;
    margin-top: 2px;
    color: var(--c-text-muted);
    font-size: var(--text-xs);
}

.cart-summary__stats {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1px;
    padding: var(--sp-3) var(--sp-4);
    background: rgba(15, 23, 42, .035);
}

.cart-summary__stats div {
    display: grid;
    gap: 3px;
    min-width: 0;
    padding: var(--sp-2);
    border-radius: 14px;
    background: rgba(255, 255, 255, .72);
    text-align: center;
}

.cart-summary__stats span {
    overflow: hidden;
    color: var(--c-text-muted);
    font-size: 11px;
    font-weight: var(--fw-semi);
    text-overflow: ellipsis;
    white-space: nowrap;
}

.cart-summary__stats strong {
    color: var(--c-text);
    font-size: var(--text-lg);
    font-weight: var(--fw-bold);
}

.cart-summary__rows {
    display: flex;
    flex-direction: column;
    gap: var(--sp-2);
    padding: var(--sp-4);
}

.cart-summary__row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--sp-3);
    color: var(--c-text-muted);
    font-size: var(--text-sm);
}

.cart-summary__row strong {
    color: var(--c-text);
    font-weight: var(--fw-bold);
    white-space: nowrap;
}

.cart-summary__row--total {
    margin-top: var(--sp-2);
    padding-top: var(--sp-3);
    border-top: 1px solid rgba(15, 23, 42, .1);
    color: var(--c-text);
    font-size: var(--text-base);
}

.cart-summary__row--total strong {
    color: var(--c-primary);
    font-size: var(--text-xl);
}

.cart-summary__warning {
    display: flex;
    gap: var(--sp-2);
    margin: 0 var(--sp-4) var(--sp-3);
    padding: var(--sp-3);
    border: 1px solid rgba(185, 96, 0, .18);
    border-radius: 16px;
    background: rgba(185, 96, 0, .08);
    color: #8a4b09;
}

.cart-summary__warning svg {
    flex: 0 0 auto;
    margin-top: 2px;
}

.cart-summary__warning p {
    margin: 0;
    font-size: var(--text-xs);
    line-height: 1.35;
}

.cart-summary__actions {
    display: flex;
    flex-direction: column;
    gap: var(--sp-5);
    padding: 0 var(--sp-4) var(--sp-4);
}

.cart-summary__login {
    margin: 0;
    color: var(--c-text-muted);
    font-size: var(--text-xs);
    text-align: center;
}

.cart-summary__continue,
.cart-summary__clear {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 42px;
    border-radius: 14px;
    font-size: var(--text-sm);
    font-weight: var(--fw-semi);
    white-space: nowrap;
    text-decoration: none;
    transition: background .18s ease, color .18s ease, border-color .18s ease, transform .18s ease;
}

.cart-summary__secondary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--sp-4);
    margin-top: var(--sp-4);
    padding-top: var(--sp-5);
    border-top: 1px solid rgba(15, 23, 42, .07);
}

.cart-summary__continue {
    flex: 1 1 auto;
    padding: .62rem .95rem;
    border: 1px solid rgba(var(--c-primary-rgb), .14);
    background:
        linear-gradient(135deg, rgba(var(--c-primary-rgb), .075), rgba(var(--c-accent-rgb), .045)),
        rgba(255, 255, 255, .72);
    color: var(--c-primary);
}

.cart-summary__continue:hover {
    border-color: rgba(var(--c-primary-rgb), .28);
    background:
        linear-gradient(135deg, rgba(var(--c-primary-rgb), .12), rgba(var(--c-accent-rgb), .07)),
        rgba(255, 255, 255, .88);
    color: var(--c-primary);
    text-decoration: none;
    transform: translateY(-1px);
}

.cart-summary__clear {
    flex: 0 0 auto;
    min-width: max-content;
    padding: .62rem .95rem;
    border: 1px solid rgba(180, 35, 24, .14);
    background: rgba(180, 35, 24, .045);
    color: #9f2a20;
    cursor: pointer;
}

.cart-summary__clear:hover {
    border-color: rgba(180, 35, 24, .24);
    background: rgba(180, 35, 24, .085);
    color: #8f2118;
    transform: translateY(-1px);
}

.cart-summary__continue svg,
.cart-summary__clear svg {
    flex: 0 0 auto;
}
