/* TANK ZONE — OPTIONAL CUSTOMER ACCOUNTS V1 */

.account-link{
    position:relative;
}

.account-status-dot{
    position:absolute;
    inset-inline-end:2px;
    top:2px;
    width:6px;
    height:6px;
    border-radius:50%;
    background:#e31e24;
    box-shadow:0 0 0 2px #080808;
}

.customer-auth-hero,
.customer-account-hero{
    background:#080808;
    color:#fff;
    border-top:1px solid #232323;
    border-bottom:1px solid #232323;
}

.customer-auth-hero__inner,
.customer-account-hero__inner{
    min-height:320px;
    padding-block:76px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:flex-start;
}

.customer-account-hero__inner{
    flex-direction:row;
    justify-content:space-between;
    align-items:flex-end;
    gap:40px;
}

.customer-auth-hero p,
.customer-account-hero p{
    margin:0 0 20px;
    color:#e31e24;
    font-size:12px;
    font-weight:800;
    letter-spacing:.18em;
    text-transform:uppercase;
}

.customer-auth-hero h1,
.customer-account-hero h1{
    max-width:900px;
    margin:0;
    font-size:clamp(48px,8vw,112px);
    line-height:.86;
    letter-spacing:-.055em;
}

.customer-auth-hero span,
.customer-account-hero span{
    display:block;
    max-width:760px;
    margin-top:24px;
    color:#a9a9a9;
    font-size:15px;
    line-height:1.8;
}

.customer-auth-section,
.customer-account-section{
    padding-block:72px 110px;
}

.customer-auth-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:22px;
}

.customer-auth-card,
.customer-account-panel{
    position:relative;
    border:1px solid #dadada;
    background:#fff;
    padding:36px;
}

.customer-auth-card__number,
.customer-account-heading > span{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:38px;
    min-height:28px;
    margin-bottom:28px;
    background:#080808;
    color:#fff;
    font-size:11px;
    font-weight:800;
}

.customer-auth-card h2,
.customer-account-panel h2{
    margin:0;
    font-size:clamp(28px,3vw,44px);
    line-height:1;
    letter-spacing:-.04em;
}

.customer-auth-card > p{
    margin:14px 0 30px;
    color:#777;
    line-height:1.7;
}

.customer-auth-card form,
.customer-account-panel form{
    display:grid;
    gap:18px;
}

.customer-auth-card label,
.customer-account-panel label{
    display:grid;
    gap:8px;
    font-size:13px;
    font-weight:700;
}

.customer-auth-card input,
.customer-account-panel input,
.customer-account-panel select,
.customer-account-panel textarea{
    width:100%;
    min-height:52px;
    border:1px solid #d6d6d6;
    background:#fff;
    padding:13px 15px;
    color:#080808;
    font:inherit;
    border-radius:0;
}

.customer-account-panel textarea{
    min-height:120px;
    resize:vertical;
}

.customer-auth-card input:focus,
.customer-account-panel input:focus,
.customer-account-panel select:focus,
.customer-account-panel textarea:focus{
    outline:2px solid rgba(227,30,36,.18);
    border-color:#e31e24;
}

.customer-account-panel input[readonly]{
    background:#f4f4f2;
    color:#666;
}

.customer-account-panel label small{
    color:#8a8a8a;
    font-size:11px;
    font-weight:500;
    line-height:1.6;
}

.customer-auth-contact{
    display:inline-block;
    margin-top:24px;
    color:#080808;
    font-size:12px;
    font-weight:700;
    text-decoration:none;
}

.customer-auth-contact:hover{
    color:#e31e24;
}

.customer-auth-privacy{
    margin:26px 0 0;
    color:#777;
    font-size:12px;
    text-align:center;
}

.customer-account-logout{
    border:0;
    background:transparent;
    color:#fff;
    padding:14px 0;
    font:inherit;
    font-weight:800;
    cursor:pointer;
}

.customer-account-logout:hover{
    color:#e31e24;
}

.customer-account-metrics{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    margin-bottom:24px;
    border:1px solid #d8d8d8;
}

.customer-account-metrics article{
    min-height:180px;
    padding:28px;
    border-inline-end:1px solid #d8d8d8;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
}

.customer-account-metrics article:last-child{
    border-inline-end:0;
}

.customer-account-metrics small{
    color:#777;
    font-size:12px;
}

.customer-account-metrics strong{
    color:#e31e24;
    font-size:58px;
    line-height:1;
}

.customer-account-metrics span{
    color:#777;
    font-size:12px;
    line-height:1.6;
}

.customer-account-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:24px;
}

.customer-account-panel--wide{
    grid-column:1 / -1;
}

.customer-account-heading{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:20px;
    margin-bottom:30px;
}

.customer-account-heading > span{
    margin:0;
}

.customer-orders-table-wrap{
    overflow-x:auto;
}

.customer-orders-table{
    width:100%;
    border-collapse:collapse;
    min-width:650px;
}

.customer-orders-table th,
.customer-orders-table td{
    padding:18px 12px;
    text-align:start;
    border-bottom:1px solid #e2e2e2;
}

.customer-orders-table th{
    color:#777;
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:.12em;
}

.customer-order-status{
    display:inline-flex;
    padding:7px 10px;
    background:#f2f2f0;
    font-size:11px;
    font-weight:800;
}

.customer-account-empty{
    padding:34px;
    border:1px dashed #cfcfcf;
    color:#777;
    text-align:center;
}

.customer-address-list{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
    margin-bottom:28px;
}

.customer-address-card{
    border:1px solid #dedede;
    padding:22px;
    display:flex;
    justify-content:space-between;
    gap:20px;
}

.customer-address-title{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:12px;
}

.customer-address-title span{
    background:#e31e24;
    color:#fff;
    padding:4px 7px;
    font-size:10px;
    font-weight:800;
}

.customer-address-card p{
    margin:5px 0;
    color:#777;
    font-size:13px;
    line-height:1.6;
}

.customer-address-actions{
    display:flex;
    align-items:flex-start;
    gap:8px;
    flex-wrap:wrap;
}

.customer-address-actions form{
    display:block;
}

.customer-address-actions button{
    border:1px solid #cfcfcf;
    background:#fff;
    padding:9px 11px;
    color:#080808;
    font-size:11px;
    font-weight:800;
    cursor:pointer;
}

.customer-address-actions button:hover{
    border-color:#080808;
}

.customer-address-actions button.danger{
    color:#e31e24;
}

.customer-address-form{
    grid-template-columns:repeat(2,minmax(0,1fr));
}

.customer-address-form .full-field{
    grid-column:1 / -1;
}

.customer-default-check{
    display:flex!important;
    grid-template-columns:auto 1fr!important;
    align-items:center;
}

.customer-default-check input{
    width:18px;
    min-height:18px;
    margin:0;
}

@media(max-width:900px){
    .customer-auth-grid,
    .customer-account-grid,
    .customer-account-metrics,
    .customer-address-list{
        grid-template-columns:1fr;
    }

    .customer-account-panel--wide{
        grid-column:auto;
    }

    .customer-account-metrics article{
        border-inline-end:0;
        border-bottom:1px solid #d8d8d8;
    }

    .customer-account-metrics article:last-child{
        border-bottom:0;
    }

    .customer-account-hero__inner{
        flex-direction:column;
        align-items:flex-start;
    }

    .customer-address-form{
        grid-template-columns:1fr;
    }

    .customer-address-form .full-field{
        grid-column:auto;
    }
}

@media(max-width:640px){
    .customer-auth-hero__inner,
    .customer-account-hero__inner{
        min-height:270px;
        padding-block:54px;
    }

    .customer-auth-card,
    .customer-account-panel{
        padding:24px 18px;
    }

    .customer-auth-section,
    .customer-account-section{
        padding-block:44px 72px;
    }

    .customer-address-card{
        flex-direction:column;
    }
}

.customer-temporary-password-warning{
    background:#fff1f1;
    border-top:1px solid #f0caca;
    border-bottom:1px solid #f0caca;
    color:#7d2025;
}

.customer-temporary-password-warning .shell{
    min-height:64px;
    padding-top:14px;
    padding-bottom:14px;
    display:flex;
    align-items:center;
    gap:12px;
    flex-wrap:wrap;
}

.customer-temporary-password-warning strong{
    color:#bd1b23;
}

.customer-temporary-password-warning span{
    flex:1;
    min-width:240px;
}

.customer-temporary-password-warning a{
    color:#bd1b23;
    font-weight:800;
    text-decoration:underline;
}

/* TANK ZONE — ACCOUNT STOCK ALERTS SAFE V3 */

.customer-stock-alerts__intro{
    margin:-5px 0 20px;
    color:#777;
    line-height:1.7;
}

.customer-stock-alert-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
}

.customer-stock-alert-grid article{
    min-height:205px;
    padding:20px;
    border:1px solid #d8d8d4;
    background:#fff;
    display:flex;
    flex-direction:column;
}

.customer-stock-alert-grid article.is-available{
    border-color:#e12027;
    box-shadow:inset 4px 0 0 #e12027;
}

.customer-stock-alert-card__top{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
}

.customer-stock-alert-card__top span{
    padding:5px 8px;
    background:#efefeb;
    color:#555;
    font-size:.62rem;
    font-weight:800;
}

.customer-stock-alert-grid article.is-available
.customer-stock-alert-card__top span{
    background:#e12027;
    color:#fff;
}

.customer-stock-alert-card__top small{
    color:#999;
}

.customer-stock-alert-grid h3{
    margin:22px 0 7px;
    font-size:1.15rem;
}

.customer-stock-alert-grid p{
    margin:0;
    color:#777;
}

.customer-stock-alert-card__actions{
    margin-top:auto;
    padding-top:20px;
    display:flex;
    align-items:center;
    gap:10px;
    flex-wrap:wrap;
}

.customer-stock-alert-card__actions form{
    margin:0;
}

.customer-stock-alert-remove{
    border:0;
    background:transparent;
    color:#9a2328;
    padding:8px;
    cursor:pointer;
    font:inherit;
    font-weight:750;
}

@media(max-width:720px){
    .customer-stock-alert-grid{
        grid-template-columns:1fr;
    }
}
