* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

/* ── Variables ─────────────────────────────────────── */
:root {
    --color-bg: #0f1122;
    --color-surface: #1a1f3a;
    --color-profile: #4b3fd1;

    --color-work: #e8735a;
    --color-play: #4ec9d4;
    --color-study: #e8507a;
    --color-exercise: #4db87a;
    --color-social: #8b5fd4;
    --color-selfcare: #e8b84b;

    --text-primary: #ffffff;
    --text-muted: rgba(255, 255, 255, 0.45);
    --text-label: rgba(255, 255, 255, 0.6);

    --radius-card: 16px;
    --gap: 16px;

    --font: 'Barlow', sans-serif;
}

/* ── Reset ─────────────────────────────────────────── */
*,
*::before,
*::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

/* ── Base ──────────────────────────────────────────── */
body {
    background: var(--color-bg);
    font-family: var(--font);
    color: var(--text-primary);
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 32px;
}

/* ── Layout ────────────────────────────────────────── */
.dashboard {
    display: flex;
    gap: var(--gap);
    max-width: 900px;
    width: 100%;
}

.dashboard__sidebar {
    flex: 0 0 200px;
}

.dashboard__grid {
    flex: 1;
    display: flex;
    flex-wrap: wrap;
    gap: var(--gap);
}

.dashboard__grid .card--stat {
    flex: 1 1 calc(33.333% - var(--gap));
}

/* ── Card base ─────────────────────────────────────── */
.card {
    background: var(--color-surface);
    border-radius: var(--radius-card);
    overflow: hidden;
    position: relative;
}

/* ── Profile card ──────────────────────────────────── */
.card--profile {
    background: var(--color-profile);
    display: flex;
    flex-direction: column;
    padding: 24px 20px 28px;
    height: 100%;
}

.profile__avatar {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    background: #c9a07a;
    overflow: hidden;
    margin-bottom: auto;
    flex-shrink: 0;
}

.profile__avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.profile__label {
    font-size: 13px;
    font-weight: 300;
    color: rgba(255, 255, 255, 0.7);
    margin-top: 24px;
    margin-bottom: 4px;
}

.profile__name {
    font-size: 32px;
    font-weight: 700;
    line-height: 1.1;
    margin-bottom: 28px;
}

.profile__nav {
    display: flex;
    flex-direction: column;
    gap: 8px;
    list-style: none;
}

.profile__nav-item {
    font-size: 15px;
    font-weight: 300;
    color: var(--text-muted);
    cursor: pointer;
}

.profile__nav-item--active {
    font-weight: 700;
    color: var(--text-primary);
}

/* ── Stat card ─────────────────────────────────────── */
.card--stat {
    display: flex;
    flex-direction: column;
    padding: 20px 20px 22px;
    min-height: 160px;
}

.card__accent {
    position: absolute;
    top: 0;
    right: 0;
    width: 90px;
    height: 80px;
    border-radius: 0 var(--radius-card) 0 60px;
    opacity: 0.9;
}

.card__accent-icon {
    position: absolute;
    top: 10px;
    right: 10px;
    font-size: 28px;
    opacity: 0.55;
}

.card__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: relative;
    z-index: 1;
    margin-bottom: auto;
}

.card__title {
    font-size: 14px;
    font-weight: 700;
    color: var(--text-primary);
}

.card__menu {
    font-size: 18px;
    color: var(--text-muted);
    cursor: pointer;
    letter-spacing: 1px;
}

.card__value {
    font-size: 48px;
    font-weight: 700;
    line-height: 1;
    margin-bottom: 6px;
}

.card__sub {
    font-size: 13px;
    font-weight: 300;
    color: var(--text-muted);
}

/* ── Accent colors per category ────────────────────── */
.card--work .card__accent {
    background: var(--color-work);
}

.card--play .card__accent {
    background: var(--color-play);
}

.card--study .card__accent {
    background: var(--color-study);
}

.card--exercise .card__accent {
    background: var(--color-exercise);
}

.card--social .card__accent {
    background: var(--color-social);
}

.card--selfcare .card__accent {
    background: var(--color-selfcare);
}


/* Estilos cards website Tablet */
@media screen and (max-width: 815px) {
    .dashboard{
        flex-direction: column;
    }
    .card--profile{
        text-align: center;
        align-items: center;
    }
}


/* Estilos cards website Mobile */
@media screen and (max-width: 575px) {
    .dashboard__grid .card--stat{
        flex: unset;
    }
    .card--stat{
        width: 100%;
    }
}


/* Desktop First / enfocado en la versión de escritorio*/
/*.container{
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100vh;
    background-color: #2f80e4;
    color: #eee2df;
    font-family: "Pirata One", system-ui;
}*/

/* Tablet style */
/*@media screen and (max-width:960px) {
    .container{
        background-color: #5b61b2;
        font-family: "Rubik Glitch", system-ui;
    }
}*/

/* Mobile style */
/*@media screen and (max-width:520px) {
    .container{
        background-color: #dec1db;
        color: #6da0e1;
        font-family: "Chicle", serif;
    }
}*/