*{
    margin:0;
    padding:0;
    box-sizing:border-box;
    font-family:Arial, Helvetica, sans-serif;
}

body{
    background:#070b14;
    color:white;
    min-height:100vh;
    padding:40px;
}

h1{
    font-size:48px;
    margin-bottom:30px;
}

.apps-grid{
    display:grid;

    grid-template-columns:
        repeat(auto-fill,minmax(240px,1fr));

    gap:20px;
}

.app-card{
    background:#111827;

    border-radius:22px;

    padding:18px;

    text-decoration:none;

    color:white;

    transition:0.2s;

    display:flex;

    align-items:center;

    gap:18px;

    min-height:110px;
}

.app-card:hover{
    transform:translateY(-4px);

    background:#182235;
}

.app-icon{
    width:60px;
    height:60px;

    object-fit:contain;

    flex-shrink:0;
}

.app-content{
    display:flex;
    flex-direction:column;
    justify-content:center;
}

.app-title{
    font-size:24px;
    font-weight:bold;

    margin-bottom:6px;
}

.navbar{
    display:flex;
    justify-content:space-between;
    align-items:center;

    margin-bottom:40px;
}

.brand{
    font-size:58px;
    font-weight:700;
    color:white;
}

.profile-dropdown{
    position:relative;
    width:fit-content;
}

.profile-button{
    display:inline-flex;
    align-items:center;
    gap:12px;

    background:#111827;

    border:none;

    padding:12px 16px;

    border-radius:14px;

    color:white;

    cursor:pointer;

    height:48px;
}

.username{
    font-size:15px;
    font-weight:600;
}

.avatar{
    width:42px;
    height:42px;

    border-radius:50%;
}

.dropdown-content{
    position:absolute;
    right:0;
    top:100%;

    background:#111827;
    border-radius:14px;
    overflow:hidden;
    min-width:160px;

    display:none;
    z-index:100;
}

.dropdown-content a{
    display:block;

    padding:12px 16px;

    color:white;

    text-decoration:none;
}

.dropdown-content a:hover{
    background:#1f2937;
}

.profile-dropdown:hover .dropdown-content{
    display:block;
}

.admin-user-card {
    background: #111827;
    border-radius: 24px;
    padding: 24px;
}

.login-container {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
}

.login-card {
    background: #111827;
    padding: 36px;
    border-radius: 24px;
    width: 360px;
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.login-card h1 {
    text-align: center;
    font-size: 42px;
    margin-bottom: 10px;
}

.login-card input {
    background: #1f2937;
    border: none;
    border-radius: 14px;
    padding: 14px 16px;
    color: white;
    font-size: 15px;
    outline: none;
}

.login-card input:focus {
    box-shadow: 0 0 0 2px #5865F2;
}

.login-card button {
    background: #5865F2;
    color: white;
    border: none;
    border-radius: 14px;
    padding: 14px 16px;
    font-size: 16px;
    font-weight: 700;
    cursor: pointer;
}

.login-card button:hover {
    background: #4752c4;
}

.back-button{
    display:inline-flex;
    align-items:center;
    gap:8px;

    margin-bottom:20px;

    color:white;
    text-decoration:none;

    background:#111827;

    padding:12px 18px;

    border-radius:14px;

    font-weight:600;

    transition:0.2s;
}

.back-button:hover{
    background:#1f2937;
}

.hero-card{
    position:relative;

    padding:0 !important;

    overflow:hidden;

    height:110px;

    display:block;
}

.hero-image{
    position:absolute;

    inset:0;

    width:100%;
    height:100%;

    object-fit:contain;

    display:block;
}

.admin-container {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.create-user-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
    margin: 20px 0;
}

.create-user-grid input {
    background: #1f2937;
    border: none;
    border-radius: 14px;
    padding: 14px 16px;
    color: white;
    font-size: 15px;
    outline: none;
}

.create-user-grid input:focus {
    box-shadow: 0 0 0 2px #5865F2;
}

.admin-user-card form {
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.permission-card summary {
    cursor: pointer;
    font-size: 24px;
    font-weight: 700;
}

.admin-title {
    font-size: 32px;
    margin: 10px 0 20px 0;
}

.permissions-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
    gap: 24px;
}

.permission-card {
    max-width: 420px;
}

.settings-button {
    background: #5865F2;
    color: white;
    border: none;
    border-radius: 14px;
    padding: 14px 22px;
    font-size: 15px;
    font-weight: 700;
    cursor: pointer;
    width: fit-content;
}

.settings-button:hover {
    background: #4752c4;
}

.permission-user-list{
    display:flex;
    flex-direction:column;
    gap:12px;
    margin:20px 0;
}

.permission-user-item{
    background:#1f2937;
    border-radius:14px;
    padding:14px 16px;

    display:flex;
    align-items:center;
    justify-content:space-between;

    cursor:pointer;
}

.permission-user-info{
    font-weight:600;
}

.permission-user-item input{
    width:18px;
    height:18px;
}

.user-management-list{
    display:flex;
    flex-direction:column;
    gap:14px;
    margin-top:20px;
}

.user-management-item{
    background:#1f2937;

    border-radius:14px;

    padding:16px;

    display:flex;
    justify-content:space-between;
    align-items:center;
}

.user-management-actions{
    display:flex;
    gap:12px;
}

.admin-badge{
    background:#5865F2;

    padding:4px 10px;

    border-radius:999px;

    font-size:12px;

    margin-left:10px;
}

.delete-button{
    background:#dc2626;

    color:white;

    border:none;

    border-radius:14px;

    padding:14px 18px;

    font-weight:700;

    cursor:pointer;
}

.user-settings-grid{
    display:grid;
    grid-template-columns: 520px 520px;
    gap:24px;
    align-items:start;
    margin-bottom:40px;
}

.create-user-card,
.user-management-card{
    height:320px;
    width:100%;
}

.user-management-list{
    max-height:220px;
    overflow-y:auto;
    padding-right:6px;
}

.user-management-list::-webkit-scrollbar{
    width:8px;
}

.user-management-list::-webkit-scrollbar-track{
    background:#111827;
    border-radius:999px;
}

.user-management-list::-webkit-scrollbar-thumb{
    background:#374151;
    border-radius:999px;
}

.user-management-list::-webkit-scrollbar-thumb:hover{
    background:#4b5563;
}

.admin-user-card{
    display:flex;
    flex-direction:column;
}

.user-management-card{
    overflow:hidden;
}

.reset-password-input{
    background:#111827;

    border:none;

    border-radius:14px;

    padding:12px 14px;

    color:white;

    outline:none;

    width:180px;
}

.user-management-item{
    flex-direction:column;
    align-items:stretch;
    gap:14px;
}

.user-management-top{
    display:flex;
    justify-content:space-between;
    align-items:center;
}

.reset-password-form{
    display:flex;
    flex-direction:row !important;
    gap:12px;
}

.reset-password-input{
    flex:1;
}

.profile-area{
    display:flex;
    align-items:center;
    gap:14px;
}

.connect-discord-button{
    background:#5865F2;
    color:white;
    text-decoration:none;
    border-radius:14px;
    padding:12px 16px;
    font-weight:700;
}

.connect-discord-button:hover{
    background:#4752c4;
}

.profile-dropdown{
    position:relative;
    width:fit-content;
    padding-bottom:8px;
}

.settings-grid{
    display:grid;
    grid-template-columns: 420px 420px;
    gap:24px;
    align-items:start;
}

.settings-page-card{
    min-height:260px;
}

.settings-form input{
    background:#1f2937;
    border:none;
    border-radius:14px;
    padding:14px 16px;
    color:white;
    font-size:15px;
    outline:none;
}

.settings-form input:focus{
    box-shadow:0 0 0 2px #5865F2;
}

.settings-page-card .connect-discord-button{
    width:fit-content;
}