.unlock-profile-widget {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    color: #333;
    background-color: #ffffff; /* Changed to white for a cleaner card look */
    border: 1px solid #e0e0e0; /* Lighter border */
    border-radius: 12px; /* More rounded corners */
    padding: 25px;
    max-width: 700px; /* Slightly wider for dashboard feel */
    margin: 30px auto;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1); /* Softer, more pronounced shadow */
    display: flex;
    flex-direction: column;
}

.unlock-profile-card-header {
    display: flex;
    align-items: center;
    padding-bottom: 20px;
    margin-bottom: 20px;
    border-bottom: 1px solid #f0f0f0; /* Lighter separator */
}

.unlock-profile-card-avatar {
    width: 100px; /* Larger avatar */
    height: 100px;
    border-radius: 50%;
    margin-right: 25px;
    object-fit: cover;
    border: 4px solid #f0f0f0; /* Border to make avatar pop */
}

.unlock-profile-card-user-info {
    display: flex;
    flex-direction: column;
}

.unlock-profile-card-name {
    font-size: 2em; /* Larger name */
    font-weight: 600;
    color: #1a1a1a;
    margin: 0 0 5px 0;
}

.unlock-profile-card-username {
    font-size: 1.1em;
    color: #666;
    margin: 0;
}

.unlock-profile-dashboard-body {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); /* Responsive grid */
    gap: 20px; /* Spacing between cards/sections */
}

.unlock-profile-dashboard-section {
    background-color: #f9f9f9; /* Light background for sections */
    padding: 20px;
    border-radius: 8px;
    box-shadow: 0 2px 6px rgba(0,0,0,0.05);
}

.unlock-profile-widget * {
    box-sizing: border-box;
}

/* .unlock-profile-header is replaced by .unlock-profile-card-header */

/* .unlock-profile-avatar is replaced by .unlock-profile-card-avatar */

/* .unlock-profile-name is replaced by .unlock-profile-card-name */

/* .unlock-profile-username is replaced by .unlock-profile-card-username */

/* .unlock-profile-section is replaced by .unlock-profile-dashboard-section */
.unlock-profile-section { /* Keep for compatibility if JS still uses it, but prefer dashboard-section */
    margin-bottom: 20px;
}

.unlock-profile-section-title {
    font-size: 1.3em; /* Slightly larger title */
    font-weight: 600;
    color: #005a87; /* Theme color for titles */
    margin-bottom: 15px;
    padding-bottom: 8px;
    border-bottom: 2px solid #0073aa; /* Stronger border */
}

.unlock-profile-field {
    display: flex;
    flex-direction: column; /* Stack label and value for card layout */
    margin-bottom: 15px; /* Increased spacing */
    font-size: 1em;
}

.unlock-profile-label {
    font-weight: 600;
    color: #333;
    margin-bottom: 5px; /* Space between label and value */
    font-size: 0.9em;
    text-transform: uppercase; /* Uppercase labels for a more formal look */
    letter-spacing: 0.5px;
}

.unlock-profile-value {
    color: #555; /* Slightly darker value text */
    word-break: break-word;
    font-size: 1em;
}

.unlock-profile-value ul {
    list-style-type: none;
    padding-left: 0;
    margin-top: 5px;
}

.unlock-profile-value ul li {
    padding: 5px 0;
    border-bottom: 1px dotted #e0e0e0;
}

.unlock-profile-value ul li:last-child {
    border-bottom: none;
}

.unlock-profile-value a {
    color: #0073aa;
    text-decoration: none;
}

.unlock-profile-value a:hover {
    text-decoration: underline;
}

.unlock-profile-no-data {
    color: #777;
    font-style: italic;
}

.unlock-profile-logout-button {
    display: inline-block;
    background-color: #d9534f;
    color: white;
    padding: 10px 15px;
    border: none;
    border-radius: 4px;
    text-decoration: none;
    font-size: 0.9em;
    cursor: pointer;
    transition: background-color 0.2s ease-in-out;
    margin-top: 10px;
}

.unlock-profile-logout-button:hover {
    background-color: #c9302c;
}

/* Responsive Adjustments */
@media (max-width: 768px) {
    .unlock-profile-card-header {
        flex-direction: column;
        align-items: center; /* Center items in header on mobile */
        text-align: center;
    }

    .unlock-profile-card-avatar {
        margin-right: 0; /* Remove right margin when stacked */
        margin-bottom: 20px;
    }

    .unlock-profile-card-name {
        font-size: 1.8em;
    }
    .unlock-profile-dashboard-body {
        grid-template-columns: 1fr; /* Single column on smaller screens */
    }
}

@media (max-width: 480px) {
    .unlock-profile-widget {
        padding: 20px;
        margin: 20px auto;
    }

    .unlock-profile-card-avatar {
        width: 80px;
        height: 80px;
    }

    .unlock-profile-card-name {
        font-size: 1.6em;
    }

    .unlock-profile-card-username {
        font-size: 1em;
    }

    .unlock-profile-section-title {
        font-size: 1.2em;
    }

    .unlock-profile-field {
        font-size: 0.95em;
    }

    .unlock-profile-label {
        font-size: 0.85em;
    }

    .unlock-profile-value {
        font-size: 0.95em;
    }
    .unlock-profile-dashboard-section {
        padding: 15px;
    }
}