/* STORE90 Accounts V2 — scoped */
.auth-page,
.profile-page,
.orders-page{
    background:var(--s90-bg,#f6f8fb);
}

/* Login + OTP */
.auth-page{
    min-height:72vh;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:34px 16px;
}
.auth-page .auth-container{
    width:min(440px,100%);
    margin:auto;
}
.auth-page .auth-card{
    overflow:hidden;
    background:#fff;
    border:1px solid var(--s90-line,#e7ebf1);
    border-radius:20px;
    box-shadow:var(--s90-shadow,0 10px 30px rgba(24,42,72,.07));
}
.auth-page .auth-card .card-body{padding:30px}
.auth-page .auth-header{text-align:center;margin-bottom:23px}
.auth-page .auth-header .brand-icon,
.auth-page .auth-header .icon-wrapper{
    display:grid;
    place-items:center;
    margin:0 auto 11px;
    background:#eef5ff;
    color:var(--s90-primary,#0d63f3);
    border:1px solid #dbe8ff;
}
.auth-page .auth-header .brand-icon{
    width:54px;height:54px;border-radius:15px;font-size:20px;font-weight:950;
}
.auth-page .auth-header .icon-wrapper{
    width:62px;height:62px;border-radius:17px;font-size:24px;
}
.auth-page .auth-header h2{
    margin:0;
    color:var(--s90-ink,#132238);
    font-size:23px;
    font-weight:950;
}
.auth-page .auth-header h2 span{color:var(--s90-primary,#0d63f3)}
.auth-page .auth-header .sub-text{
    margin:6px 0 0;
    color:var(--s90-muted,#6f7c8e);
    font-size:12px;
    line-height:1.7;
}
.auth-page .auth-header .tagline{
    margin-top:6px;
    color:#9aa5b2;
    font-size:8px;
    letter-spacing:2px;
}
.auth-page .auth-header .phone-number{
    display:inline-block;
    color:var(--s90-ink,#132238);
    font-weight:900;
    direction:ltr;
}
.auth-page .auth-form .form-label{
    margin-bottom:6px;
    color:#4a586b;
    font-size:12px;
    font-weight:850;
}
.auth-page .auth-form .form-control{
    min-height:48px;
    padding:11px 13px;
    background:#fafbfd;
    border:1px solid #dfe5ec;
    border-radius:11px;
    box-shadow:none;
}
.auth-page .auth-form input[name="phone_number"]{
    direction:ltr;
    text-align:left;
}
.auth-page .auth-form input[name="otp_code"]{
    min-height:54px;
    text-align:center;
    letter-spacing:6px;
    font-size:20px;
    font-weight:900;
    direction:ltr;
}
.auth-page .auth-form .form-control:focus{
    background:#fff;
    border-color:#9ec0fb;
    box-shadow:0 0 0 3px rgba(13,99,243,.07);
}
.auth-page .auth-form .form-text{
    margin-top:5px;
    color:var(--s90-muted,#6f7c8e);
    font-size:10px;
}
.auth-page .auth-form .btn-submit,
.auth-page .auth-form .btn-verify{
    width:100%;
    min-height:48px;
    border:0;
    border-radius:11px;
    background:var(--s90-primary,#0d63f3);
    color:#fff;
    font-size:14px;
    font-weight:950;
}
.auth-page .auth-form .btn-submit:hover,
.auth-page .auth-form .btn-verify:hover{
    background:var(--s90-primary-dark,#094fc4);
}
.auth-page .auth-actions{
    text-align:center;
    margin-top:15px;
    color:var(--s90-muted,#6f7c8e);
    font-size:11px;
}
.auth-page .auth-actions .resend-link{
    color:var(--s90-primary,#0d63f3);
    font-weight:850;
    text-decoration:none;
}
.auth-page .auth-actions .attempts{font-size:10px}
.auth-page .auth-footer{
    margin-top:17px;
    padding-top:15px;
    text-align:center;
    border-top:1px solid var(--s90-line,#e7ebf1);
}
.auth-page .auth-footer p{
    margin:0;
    color:var(--s90-muted,#6f7c8e);
    font-size:10px;
    line-height:1.7;
}
.auth-page .auth-footer a{
    color:var(--s90-primary,#0d63f3);
    font-weight:800;
    text-decoration:none;
}
.auth-page + .security-badge,
.auth-page .security-badge{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:6px;
    margin-top:12px;
    color:var(--s90-muted,#6f7c8e);
    font-size:10px;
}

/* Profile */
.profile-page{
    padding:22px 0 40px;
    min-height:72vh;
}
.profile-page .container{max-width:1380px}
.profile-page .profile-sidebar .card,
.profile-page .profile-content .card{
    overflow:hidden;
    background:#fff;
    border:1px solid var(--s90-line,#e7ebf1);
    border-radius:18px;
    box-shadow:var(--s90-shadow,0 10px 30px rgba(24,42,72,.07));
}
.profile-page .profile-sidebar .card-body{
    padding:24px 18px;
    text-align:center;
}
.profile-page .avatar-wrapper{
    width:92px;height:92px;margin:0 auto 10px;
}
.profile-page .avatar-wrapper img,
.profile-page .avatar-placeholder{
    width:92px;height:92px;border-radius:24px;border:3px solid #eef1f4;
}
.profile-page .avatar-wrapper img{object-fit:cover}
.profile-page .avatar-placeholder{
    display:grid;
    place-items:center;
    background:linear-gradient(135deg,#0b55c9,#0d63f3);
    color:#fff;
    font-size:34px;
    font-weight:950;
}
.profile-page .profile-name{
    margin:0;
    color:var(--s90-ink,#132238);
    font-size:17px;
    font-weight:950;
}
.profile-page .profile-phone{
    display:inline-block;
    margin-top:3px;
    color:var(--s90-muted,#6f7c8e);
    font-size:11px;
    direction:ltr;
}
.profile-page .profile-badge{
    display:inline-flex!important;
    align-items:center;
    gap:5px;
    margin-top:8px!important;
    padding:5px 9px!important;
    border-radius:999px!important;
    font-size:10px!important;
    font-weight:850!important;
}
.profile-page .profile-badge.verified{background:#eefaf4!important;color:#15854b!important}
.profile-page .profile-badge.unverified{background:#fff8e9!important;color:#b87800!important}
.profile-page .profile-sidebar .list-group{padding:7px}
.profile-page .profile-sidebar .list-group-item{
    display:flex;
    align-items:center;
    gap:8px;
    margin:2px 0;
    padding:10px 11px;
    border:0!important;
    border-radius:10px!important;
    color:#667386;
    background:transparent;
    font-size:12px;
    font-weight:800;
}
.profile-page .profile-sidebar .list-group-item i{
    width:20px;
    margin:0!important;
    text-align:center;
    color:#8d98a7;
}
.profile-page .profile-sidebar .list-group-item:hover{
    background:#f3f7fd;
    color:var(--s90-primary,#0d63f3);
}
.profile-page .profile-sidebar .list-group-item.active{
    background:#eef5ff!important;
    color:var(--s90-primary,#0d63f3)!important;
}
.profile-page .profile-content .card-header{
    display:flex;
    align-items:center;
    gap:8px;
    padding:15px 18px;
    background:linear-gradient(135deg,#0b55c9,#0d63f3);
    color:#fff;
    border:0;
    font-size:15px;
    font-weight:900;
}
.profile-page .profile-content .card-header i{color:#fff;margin:0}
.profile-page .profile-content .card-body{padding:20px}
.profile-page .profile-content .section-title{
    margin:0 0 13px;
    padding:0 0 8px;
    color:var(--s90-ink,#132238);
    font-size:12px;
    font-weight:900;
    border-bottom:1px solid var(--s90-line,#e7ebf1);
}
.profile-page .profile-content .form-label{
    margin-bottom:5px;
    color:#4e5b6d;
    font-size:11px;
    font-weight:850;
}
.profile-page .profile-content .form-control,
.profile-page .profile-content select,
.profile-page .profile-content input[type=file]{
    min-height:43px;
    padding:9px 11px;
    background:#fafbfd;
    border:1px solid #dfe5ec;
    border-radius:10px;
    box-shadow:none;
}
.profile-page .profile-content .form-control:focus,
.profile-page .profile-content select:focus{
    background:#fff;
    border-color:#9ec0fb;
    box-shadow:0 0 0 3px rgba(13,99,243,.07);
}
.profile-page .profile-content .form-check{
    min-height:42px;
    display:flex;
    align-items:center;
    gap:9px;
    margin-bottom:7px!important;
    padding:9px 11px!important;
    background:#fafbfd;
    border:1px solid var(--s90-line,#e7ebf1);
    border-radius:10px;
}
.profile-page .profile-content .form-check-input{
    width:17px;height:17px;margin:0!important;accent-color:var(--s90-primary,#0d63f3);
}
.profile-page .profile-content .form-check-label{
    margin:0;
    color:#566375;
    font-size:11px;
    font-weight:800;
}
.profile-page .profile-content .btn-save{
    min-height:44px;
    padding:9px 22px;
    border:0;
    border-radius:10px;
    background:var(--s90-primary,#0d63f3);
    color:#fff;
    font-size:12px;
    font-weight:950;
}
.profile-page .profile-content .btn-save:hover{background:var(--s90-primary-dark,#094fc4)}

/* Orders */
.orders-page{
    min-height:70vh;
    padding:22px 0 40px;
}
.orders-page .orders-shell{
    width:min(1200px,calc(100% - 24px));
    margin:auto;
}
.orders-page .orders-head{
    display:flex;
    align-items:center;
    gap:11px;
    margin-bottom:14px;
}
.orders-page .orders-head-icon{
    width:44px;height:44px;
    display:grid;place-items:center;
    border-radius:13px;
    background:#eef5ff;
    color:var(--s90-primary,#0d63f3);
    font-size:18px;
}
.orders-page .orders-head h2{
    margin:0;
    color:var(--s90-ink,#132238);
    font-size:24px;
    font-weight:950;
}
.orders-page .orders-head p{
    margin:3px 0 0;
    color:var(--s90-muted,#6f7c8e);
    font-size:11px;
}
.orders-page .orders-card{
    overflow:hidden;
    background:#fff;
    border:1px solid var(--s90-line,#e7ebf1);
    border-radius:18px;
    box-shadow:var(--s90-shadow,0 10px 30px rgba(24,42,72,.07));
}
.orders-page .orders-table{margin:0}
.orders-page .orders-table thead th{
    padding:12px;
    background:#f8fafc;
    color:var(--s90-muted,#6f7c8e);
    border-bottom:1px solid var(--s90-line,#e7ebf1);
    font-size:11px;
    font-weight:850;
}
.orders-page .orders-table tbody td{
    padding:14px 12px;
    vertical-align:middle;
    border-color:#edf1f4;
    color:#425066;
    font-size:12px;
}
.orders-page .order-number{
    color:var(--s90-ink,#132238);
    font-weight:950;
}
.orders-page .order-total{
    color:var(--s90-primary,#0d63f3);
    font-weight:950;
}
.orders-page .order-status{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:92px;
    padding:5px 9px;
    border-radius:999px;
    font-size:10px;
    font-weight:850;
}
.orders-page .status-pending,
.orders-page .payment-pending{background:#fff7df;color:#9a6a00}
.orders-page .status-processing{background:#eaf5ff;color:var(--s90-primary,#0d63f3)}
.orders-page .status-completed,
.orders-page .payment-paid{background:#eefaf4;color:#15945a}
.orders-page .status-refunded,
.orders-page .payment-refunded{background:#f3edff;color:#7a4cc2}
.orders-page .status-cancelled,
.orders-page .status-failed,
.orders-page .payment-failed{background:#fff0f1;color:#c43c49}
.orders-page .payment-partially_refunded{background:#fff3e6;color:#c56b00}
.orders-page .order-action{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:5px;
    padding:6px 10px;
    border-radius:8px;
    background:#eef5ff;
    color:var(--s90-primary,#0d63f3);
    border:1px solid #d9e7ff;
    text-decoration:none;
    font-size:10px;
    font-weight:850;
}
.orders-page .order-action:hover{
    background:#e4efff;
    color:var(--s90-primary-dark,#094fc4);
}
.orders-page .orders-empty{
    padding:50px 20px;
    text-align:center;
    background:#fff;
    border:1px solid var(--s90-line,#e7ebf1);
    border-radius:18px;
}
.orders-page .orders-empty i{
    width:62px;height:62px;
    display:grid;place-items:center;
    margin:0 auto 12px;
    border-radius:17px;
    background:#eef5ff;
    color:var(--s90-primary,#0d63f3);
    font-size:24px;
}
.orders-page .orders-empty h4{
    color:var(--s90-ink,#132238);
    font-size:18px;
    font-weight:950;
}
.orders-page .orders-empty p{
    color:var(--s90-muted,#6f7c8e);
    font-size:11px;
}

@media(max-width:991px){
    .profile-page .profile-sidebar{margin-bottom:15px}
}
@media(max-width:767.98px){
    .orders-page .orders-table thead{display:none}
    .orders-page .orders-table,
    .orders-page .orders-table tbody,
    .orders-page .orders-table tr,
    .orders-page .orders-table td{display:block;width:100%}
    .orders-page .orders-table tbody tr{
        padding:10px 12px;
        border-bottom:1px solid var(--s90-line,#e7ebf1);
    }
    .orders-page .orders-table tbody td{
        display:flex;
        align-items:center;
        justify-content:space-between;
        gap:12px;
        padding:7px 0;
        border:0;
        text-align:left!important;
    }
    .orders-page .orders-table tbody td::before{
        content:attr(data-label);
        color:var(--s90-muted,#6f7c8e);
        font-size:10px;
        font-weight:850;
    }
}
@media(max-width:576px){
    .auth-page{padding:22px 10px}
    .auth-page .auth-card .card-body{padding:24px 18px}
    .profile-page{padding-top:14px}
    .profile-page .container{padding-inline:10px}
    .profile-page .profile-content .card-body{padding:15px 12px}
    .profile-page .profile-content .btn-save{width:100%}
}

/* Phase 27 — compact mobile orders cards */
@media(max-width:767.98px){
 .orders-page .orders-card.table-responsive{overflow:visible;background:transparent;border:0;box-shadow:none}
 .orders-page .orders-table tbody{display:grid;gap:10px}
 .orders-page .orders-table tbody tr{margin:0;padding:8px 12px;background:#fff;border:1px solid var(--s90-line,#e7ebf1);border-radius:14px;box-shadow:0 5px 16px rgba(24,42,72,.035)}
 .orders-page .orders-table tbody td{min-height:34px;padding:6px 0}
 .orders-page .orders-table tbody td+td{border-top:1px dashed #e7ebf1}
 .orders-page .orders-table tbody td::before{flex:0 0 82px;text-align:right}
 .orders-page .orders-table tbody td>*:not(.order-action){max-width:calc(100% - 94px)}
 .orders-page .orders-table .order-action{margin-inline-start:auto}
}
