/* =========================================
   DASHBOARD HOME
========================================= */

.dashboard-hero {

    display: grid;

    grid-template-columns: 1.2fr 0.9fr;

    gap: 34px;

    margin-bottom: 40px;
}

/* =========================================
   HERO
========================================= */

.dashboard-hero-left {

    background:
        rgba(8,20,43,0.84);

    border:
        1px solid rgba(255,255,255,0.05);

    border-radius: 32px;

    padding: 42px;

    box-shadow:
        0 20px 40px rgba(0,0,0,0.25);
}

.hero-safe-badge,
.hero-alert-badge {

    display: inline-flex;

    align-items: center;

    padding: 10px 18px;

    border-radius: 999px;

    font-size: 13px;

    font-weight: 800;

    letter-spacing: 0.08em;

    margin-bottom: 22px;
}

.hero-safe-badge {

    background:
        rgba(34,197,94,0.14);

    color: #4ade80;
}

.hero-alert-badge {

    background:
        rgba(239,68,68,0.14);

    color: #f87171;
}

.dashboard-hero-left h1 {

    margin: 0 0 18px;

    font-size: 52px;

    line-height: 1.05;

    font-weight: 800;
}

.dashboard-hero-left p {

    color: #9fb0d9;

    line-height: 1.8;

    font-size: 18px;
}

/* =========================================
   ACTIONS
========================================= */

.dashboard-hero-actions {

    display: grid;

    gap: 22px;
}

.hero-action-card {

    display: flex;

    align-items: center;

    gap: 20px;

    padding: 28px;

    border-radius: 28px;

    background:
        rgba(8,20,43,0.84);

    border:
        1px solid rgba(255,255,255,0.05);

    transition: 0.25s;
}

.hero-action-card:hover {

    transform: translateY(-3px);

    box-shadow:
        0 18px 36px rgba(0,0,0,0.24);
}

.hero-action-icon {

    width: 72px;
    height: 72px;

    border-radius: 22px;

    display: flex;

    align-items: center;
    justify-content: center;

    background:
        rgba(59,130,246,0.14);

    font-size: 30px;
}

.hero-action-card h3 {

    margin: 0 0 6px;

    font-size: 22px;
}

.hero-action-card p {

    margin: 0;

    color: #9fb0d9;
}

/* =========================================
   STATS
========================================= */

.stats-strip {

    display: grid;

    grid-template-columns:
        repeat(4,1fr);

    gap: 22px;

    margin-bottom: 40px;
}

.mini-stat-card {

    background:
        rgba(8,20,43,0.84);

    border:
        1px solid rgba(255,255,255,0.05);

    border-radius: 28px;

    padding: 28px;
}

.mini-stat-label {

    color: #94a3b8;

    margin-bottom: 12px;

    font-size: 14px;

    text-transform: uppercase;

    letter-spacing: 0.08em;
}

.mini-stat-number {

    font-size: 42px;

    font-weight: 800;
}

/* =========================================
   INFO GRID
========================================= */

.dashboard-info-grid {

    display: grid;

    grid-template-columns: 1fr 1fr;

    gap: 28px;

    margin-bottom: 40px;
}

.dashboard-info-card {

    background:
        rgba(8,20,43,0.84);

    border:
        1px solid rgba(255,255,255,0.05);

    border-radius: 30px;

    padding: 34px;
}

.dashboard-info-card h2 {

    margin: 0 0 16px;

    font-size: 34px;

    line-height: 1.2;
}

.dashboard-info-card p {

    color: #9fb0d9;

    line-height: 1.8;

    margin-bottom: 24px;
}

.info-card-badge {

    display: inline-flex;

    align-items: center;

    padding: 10px 18px;

    border-radius: 999px;

    font-size: 12px;

    font-weight: 800;

    letter-spacing: 0.08em;

    margin-bottom: 22px;
}

.info-card-badge.premium {

    background:
        rgba(59,130,246,0.14);

    color: #60a5fa;
}

.info-card-badge.basic {

    background:
        rgba(148,163,184,0.12);

    color: #cbd5e1;
}

.info-card-badge.live {

    background:
        rgba(34,197,94,0.12);

    color: #4ade80;
}

/* =========================================
   BUTTONS
========================================= */

.soft-btn {

    display: inline-flex;

    align-items: center;
    justify-content: center;

    padding: 14px 22px;

    border-radius: 18px;

    background:
        rgba(59,130,246,0.14);

    color: #60a5fa;

    font-weight: 700;
}

.soft-btn.secondary {

    background:
        rgba(255,255,255,0.06);

    color: white;
}

.info-actions {

    display: flex;

    gap: 14px;

    flex-wrap: wrap;
}

/* =========================================
   SECTION TITLE
========================================= */

.section-title {

    margin: 0 0 26px;

    font-size: 42px;

    font-weight: 800;
}

/* =========================================
   PET CARD
========================================= */

.pet-card {

    background:
        rgba(8,20,43,0.84);

    border:
        1px solid rgba(255,255,255,0.05);

    border-radius: 32px;

    overflow: hidden;

    margin-bottom: 34px;
}

.dashboard-pet-photo-wrap {

    width: 100%;

    height: 260px;

    background: #091224;

    overflow: hidden;
}

.dashboard-pet-photo {

    width: 100%;
    height: 100%;

    object-fit: contain;

    object-position: center;
}

.pet-info {

    padding: 30px;
}

.pet-info h3 {

    margin: 16px 0 12px;

    font-size: 42px;
}

.pet-actions {

    display: flex;

    flex-wrap: wrap;

    gap: 14px;

    padding: 0 30px 30px;
}

.badge {

    display: inline-flex;

    align-items: center;

    padding: 10px 18px;

    border-radius: 999px;

    font-size: 12px;

    font-weight: 800;

    letter-spacing: 0.08em;
}

.badge.safe {

    background:
        rgba(34,197,94,0.14);

    color: #4ade80;
}

.badge.lost {

    background:
        rgba(239,68,68,0.14);

    color: #f87171;
}

/* =========================================
   MOBILE
========================================= */

@media (max-width: 1100px) {

    .dashboard-hero {

        grid-template-columns: 1fr;
    }

    .dashboard-info-grid {

        grid-template-columns: 1fr;
    }

    .stats-strip {

        grid-template-columns:
            repeat(2,1fr);
    }
}

@media (max-width: 700px) {

    .dashboard-hero-left {

        padding: 30px;
    }

    .dashboard-hero-left h1 {

        font-size: 38px;
    }

    .stats-strip {

        grid-template-columns: 1fr;
    }

    .section-title {

        font-size: 32px;
    }

    .pet-info h3 {

        font-size: 34px;
    }

    .pet-actions {

        flex-direction: column;
    }

    .pet-actions .btn {

        width: 100%;
    }
}