.promo {
    display: flex;
    align-items: stretch;
    height: 48px;
}
.promo input {
    height: 100%;
    margin: 0;
    padding: 0 12px;
    border-right: 0;
    line-height: 1;
}
.promo button {
    height: 100%;
    margin: 0;
    padding: 0 16px;
    line-height: 1;
    font-weight: 700;
}

/* Authentification : box centrée, formulaire à gauche, visuel à droite. */
.auth-page {
    width: 90%;
    max-width: 1725px;
    height: calc(100vh - 235px);
    min-height: 620px;
    max-height: 820px;
    margin: 55px auto 85px;
    overflow: hidden;
    grid-template-columns: 1fr 1fr;
    border-radius: 18px;
    background: #fff;
    box-shadow:
        0 6px 0 #ec9f40,
        0 12px 0 #e25d2f,
        0 18px 0 #df4943,
        0 24px 0 #ad2332,
        0 30px 0 #31b1c3,
        0 45px 70px rgba(17, 17, 19, .16);
}
.auth-form {
    order: 2;
    align-self: center;
    width: 100%;
    max-width: 620px;
    margin: 0 auto;
    padding: 60px;
}
.auth-visual {
    order: 1;
    display: block;
    min-height: 100%;
}
.auth-visual > img {
    object-position: center 18%;
}
.auth-visual > div {
    display: none;
}
.auth-form .auth-logo {
    display: none;
    margin-bottom: 26px;
}
.forgot-success { margin-top:24px;padding:20px;border-radius:10px;background:#e7f7f1;color:#256a50;text-align:center }.forgot-success i { font-size:2rem }.forgot-success h3 { margin:8px 0 4px }.forgot-success p { margin:0;font-size:.78rem;line-height:1.5 }
.dashboard-title { align-items:center;gap:20px }
.dashboard-title select {
    width:155px;
    height:44px;
    margin:0;
    padding:0 40px 0 14px;
    border:1px solid #d7d5dc;
    border-radius:9px;
    background-color:#fff;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23111113' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
    background-repeat:no-repeat;
    background-position:right 13px center;
    color:#111113;
    font-size:.78rem;
    font-weight:700;
    line-height:1;
    appearance:none;
    -webkit-appearance:none;
    outline:0;
    cursor:pointer;
}
.dashboard-title select:hover,
.dashboard-title select:focus {
    border-color:#6867CE;
    box-shadow:0 0 0 3px rgba(104,103,206,.12);
}
@media(max-width:575px){.dashboard-title{align-items:flex-start;flex-direction:column}.dashboard-title select{width:100%}}
.order-card[hidden] { display:none!important }
@media(max-width:575px){
    .order-card>div {
        grid-template-columns:100px minmax(0,1fr);
        align-items:center;
        gap:14px;
        padding:18px;
    }
    .order-card img {
        width:100px;
        height:112px;
        padding:6px;
        object-fit:contain;
    }
    .order-card>div p {
        min-width:0;
        margin:0;
        gap:4px;
    }
    .order-card>div p b {
        font-size:.9rem;
        line-height:1.3;
    }
    .order-card>div p small {
        font-size:.68rem;
    }
    .order-card>div>a {
        grid-column:2;
        justify-self:start;
        margin-top:-24px;
        font-size:.72rem;
    }
    .order-card header .status {
        width:max-content;
        max-width:100%;
        justify-self:start;
    }
}
.continue-shopping{color:#6867CE;font-size:.76rem;font-weight:800}.favorites-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.favorite-card{overflow:hidden;border:1px solid #dedce2;border-radius:12px;background:#fff}.favorite-image{position:relative;height:330px}.favorite-image--cyan{background:#31b1c3}.favorite-image--purple{background:#8d8cd3}.favorite-image--red{background:#df4943}.favorite-image>img{width:100%;height:100%;object-fit:contain;transform:scale(1.12);transition:transform .3s ease}.favorite-card:hover .favorite-image>img{transform:scale(1.2)}.favorite-image>button{position:absolute;top:12px;right:12px;width:38px;height:38px;border:0;border-radius:50%;background:#fff;color:#111113}.favorite-card>div:last-child{padding:17px}.favorite-card span,.favorite-card p{margin:0;color:#777580;font-size:.68rem}.favorite-card h3{margin:4px 0;font-size:1rem}.favorite-card>div:last-child>div{display:flex;align-items:center;justify-content:space-between;margin-top:15px}.favorite-card [data-favorite-cart]{padding:8px 11px;border:0;border-radius:7px;background:#111113;color:#fff;font-size:.7rem;font-weight:800}.favorites-empty{padding:70px 20px;text-align:center}.favorites-empty>i{color:#6867CE;font-size:3rem}.favorites-empty a{display:inline-block;margin-top:12px;padding:12px 16px;border-radius:8px;background:#111113;color:#fff;font-weight:800}@media(max-width:1100px){.favorites-grid{grid-template-columns:1fr 1fr}}@media(max-width:575px){.favorites-grid{grid-template-columns:1fr}.favorite-image{height:390px}}
.auth-form .auth-logo img {
    display: block;
    width: 240px;
    max-width: 100%;
}
.auth-form h2 {
    margin-top: 8px;
}

@media (max-width: 1000px) {
    .auth-page {
        grid-template-columns: 1fr;
        height: auto;
        min-height: 0;
        max-height: none;
    }
    .auth-form {
        max-width: 650px;
        padding: 55px 40px;
    }
    .auth-visual {
        display: none;
    }
}

@media (max-width: 575px) {
    .auth-page {
        width: calc(100% - 24px);
        margin: 45px auto 75px;
        padding: 0;
        border-radius: 14px;
    }
    .auth-form {
        width: 100%;
        padding: 38px 22px;
    }
    .auth-form .auth-logo img {
        width: 190px;
    }
}
