/*=========================================================
    SENTRIX CYBER 2.0
    CARDS
    File : css/cards.css
=========================================================*/

/*=========================================================
                GRID LAYOUTS
=========================================================*/

.mission-grid,
.achievement-grid,
.family-grid,
.scan-grid,
.recommendation-grid{

    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(280px,1fr));

    gap:25px;

    margin-top:30px;

}

/*=========================================================
                BASE CARD
=========================================================*/

.mission-card,
.achievement-card,
.family-card,
.scan-card,
.recommendation-card{

    position:relative;

    overflow:hidden;

    padding:30px;

    border-radius:24px;

    background:rgba(255,255,255,.05);

    border:1px solid rgba(255,255,255,.08);

    transition:.4s ease;

    backdrop-filter:blur(18px);

}

.mission-card:hover,
.achievement-card:hover,
.family-card:hover,
.scan-card:hover,
.recommendation-card:hover{

    transform:translateY(-10px);

    border-color:rgba(79,124,255,.35);

    box-shadow:

    0 25px 60px rgba(79,124,255,.15);

}

/*=========================================================
                TOP GLOW
=========================================================*/

.mission-card::before,
.achievement-card::before,
.family-card::before,
.scan-card::before,
.recommendation-card::before{

    content:"";

    position:absolute;

    top:0;
    left:0;

    width:100%;
    height:4px;

    background:

    linear-gradient(
        90deg,
        #4F7CFF,
        #8B5CF6,
        #00D4FF
    );

}

/*=========================================================
                BACKGROUND GLOW
=========================================================*/

.mission-card::after,
.achievement-card::after,
.family-card::after,
.scan-card::after,
.recommendation-card::after{

    content:"";

    position:absolute;

    width:250px;
    height:250px;

    border-radius:50%;

    right:-120px;
    bottom:-120px;

    background:

    radial-gradient(circle,
    rgba(79,124,255,.15),
    transparent 70%);

    pointer-events:none;

}

/*=========================================================
                HEADINGS
=========================================================*/

.mission-card h3,
.achievement-card h3,
.family-card h3,
.scan-card h3,
.recommendation-card h3{

    margin-bottom:15px;

    color:#ffffff;

}

.mission-card p,
.achievement-card p,
.family-card p,
.scan-card p,
.recommendation-card p{

    color:#98A6BF;

    line-height:1.7;

}

/*=========================================================
                MISSION CARD
=========================================================*/

.mission-top{

    display:flex;

    justify-content:space-between;

    align-items:center;

    margin-bottom:20px;

}

.mission-top span{

    padding:8px 14px;

    border-radius:50px;

    background:rgba(79,124,255,.15);

    color:#4F7CFF;

    font-size:13px;

    font-weight:700;

}

.mission-progress{

    margin:25px 0;

}

.mission-card button{

    width:100%;

    margin-top:20px;

}

/*=========================================================
                ACHIEVEMENTS
=========================================================*/

.badge{

    width:80px;

    height:80px;

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    font-size:34px;

    margin-bottom:25px;

    background:

    linear-gradient(
        135deg,
        rgba(79,124,255,.18),
        rgba(139,92,246,.20)
    );

}

.achievement-card.unlocked{

    border-color:#2DD4BF;

}

.achievement-card.unlocked .badge{

    background:

    linear-gradient(
        135deg,
        #2DD4BF,
        #4F7CFF
    );

    color:#fff;

}

.achievement-card.unlocked::before{

    background:

    linear-gradient(
        90deg,
        #2DD4BF,
        #4F7CFF
    );

}

/*=========================================================
                FAMILY CARDS
=========================================================*/

.family-card{

    text-align:center;

}

.family-card h1{

    margin:20px 0;

    font-size:3rem;

    color:#4F7CFF;

}

.family-card span{

    display:inline-block;

    margin-top:10px;

    padding:10px 16px;

    border-radius:50px;

    background:rgba(45,212,191,.12);

    color:#2DD4BF;

    font-weight:600;

}

/*=========================================================
                SCAN CARD
=========================================================*/

.scan-card{

    display:flex;

    flex-direction:column;

}

.scan-card button{

    margin-top:auto;

    width:100%;

}
/*=========================================================
                RECOMMENDATION CARDS
=========================================================*/

.recommendation-card{

    min-height:280px;

    display:flex;

    flex-direction:column;

}

.recommendation-card button{

    margin-top:auto;

    width:100%;

}

.recommendation-card h3{

    color:#ffffff;

    margin-bottom:15px;

}

.recommendation-card p{

    margin-bottom:30px;

}

/*=========================================================
                STATUS LABELS
=========================================================*/

.card-status{

    display:inline-flex;

    align-items:center;

    gap:8px;

    padding:8px 14px;

    border-radius:30px;

    font-size:12px;

    font-weight:700;

    margin-bottom:20px;

}

.card-status.safe{

    background:rgba(45,212,191,.15);

    color:#2DD4BF;

}

.card-status.warning{

    background:rgba(251,191,36,.15);

    color:#FBBF24;

}

.card-status.danger{

    background:rgba(255,77,103,.15);

    color:#FF4D67;

}

.card-status.info{

    background:rgba(79,124,255,.15);

    color:#4F7CFF;

}

/*=========================================================
                CARD ICON
=========================================================*/

.card-icon{

    width:70px;

    height:70px;

    border-radius:18px;

    display:flex;

    justify-content:center;

    align-items:center;

    margin-bottom:25px;

    font-size:30px;

    background:

    linear-gradient(
        135deg,
        rgba(79,124,255,.18),
        rgba(139,92,246,.18)
    );

}

/*=========================================================
                CARD FOOTER
=========================================================*/

.card-footer{

    display:flex;

    justify-content:space-between;

    align-items:center;

    margin-top:30px;

    padding-top:20px;

    border-top:1px solid rgba(255,255,255,.08);

}

.card-footer span{

    color:#9AA9C4;

    font-size:14px;

}

.card-footer strong{

    color:#ffffff;

}

/*=========================================================
                SHINE EFFECT
=========================================================*/

.mission-card,
.achievement-card,
.family-card,
.scan-card,
.recommendation-card{

    position:relative;

}

.mission-card .shine,
.achievement-card .shine,
.family-card .shine,
.scan-card .shine,
.recommendation-card .shine{

    position:absolute;

    inset:0;

    overflow:hidden;

    pointer-events:none;

}

.mission-card .shine::before,
.achievement-card .shine::before,
.family-card .shine::before,
.scan-card .shine::before,
.recommendation-card .shine::before{

    content:"";

    position:absolute;

    top:-100%;

    left:-150%;

    width:60%;

    height:300%;

    transform:rotate(25deg);

    background:

    linear-gradient(

        transparent,

        rgba(255,255,255,.12),

        transparent

    );

    transition:1s;

}

.mission-card:hover .shine::before,
.achievement-card:hover .shine::before,
.family-card:hover .shine::before,
.scan-card:hover .shine::before,
.recommendation-card:hover .shine::before{

    left:180%;

}

/*=========================================================
                FLOATING BADGE
=========================================================*/

.float-badge{

    position:absolute;

    top:20px;

    right:20px;

    width:42px;

    height:42px;

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    background:rgba(255,255,255,.08);

    color:#ffffff;

    backdrop-filter:blur(10px);

}

/*=========================================================
                LOADING PLACEHOLDER
=========================================================*/

.card-loading{

    position:relative;

    overflow:hidden;

}

.card-loading::after{

    content:"";

    position:absolute;

    inset:0;

    transform:translateX(-100%);

    background:

    linear-gradient(

        90deg,

        transparent,

        rgba(255,255,255,.08),

        transparent

    );

    animation:loadingCard 1.8s infinite;

}

@keyframes loadingCard{

    100%{

        transform:translateX(100%);

    }

}

/*=========================================================
                RESPONSIVE
=========================================================*/

@media(max-width:1200px){

.mission-grid,
.achievement-grid,
.family-grid,
.scan-grid,
.recommendation-grid{

grid-template-columns:repeat(2,1fr);

}

}

@media(max-width:768px){

.mission-grid,
.achievement-grid,
.family-grid,
.scan-grid,
.recommendation-grid{

grid-template-columns:1fr;

}

.mission-card,
.achievement-card,
.family-card,
.scan-card,
.recommendation-card{

padding:24px;

}

.family-card h1{

font-size:2.5rem;

}

.card-footer{

flex-direction:column;

align-items:flex-start;

gap:10px;

}

}

@media(max-width:480px){

.badge{

width:65px;

height:65px;

font-size:28px;

}

.card-icon{

width:60px;

height:60px;

font-size:26px;

}

}

/*=========================================================
                LARGE DISPLAYS
=========================================================*/

@media(min-width:1800px){

.mission-card,
.achievement-card,
.family-card,
.scan-card,
.recommendation-card{

padding:40px;

}

.badge{

width:90px;

height:90px;

font-size:38px;

}

}

/*=========================================================
                END OF FILE
=========================================================*/