/* Button */
button:disabled {
    cursor: not-allowed;
    opacity: 0.8;
}

.loginbtn {
    position: relative;
    background: linear-gradient(145deg, #2b6cb0, #1a365d);
    color: var(--secondary);
    border: none;
    border-radius: 20px;
    font-size: 18px;
    font-weight: var(--fw-lg);
    padding: 10px 24px;
    cursor: pointer;
    transition: transform 0.3s ease-in-out;
    overflow: hidden;
    z-index: 1;
}

.loginbtn::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(145deg, #1a365d, #2b6cb0);
    opacity: 0;
    transition: opacity 0.3s ease-in-out;
    z-index: -1;
    border-radius: inherit;
}

.asidebtn {
    background-color: transparent;
    color: var(--text-secondary);
    font-size: 14px;
    padding: 8px 10px;
    border: 2px solid transparent;
    width: 95%;
    font-weight: var(--fw-md);
    border-radius: 5px;
    display: grid;
    grid-template-columns: 85% 15%;
    justify-content: space-between;
    align-items: center;
    transition: var(--transition);
}

.listbtn {
    background-color: var(--secondary);
    color: var(--text-primary);
    font-weight: var(--fw-md);
    border: 2px solid var(--main);
    border-radius: 20px;
    font-size: 14px;
    padding: 4px 25px;
}

.formbtn {
    background-color: var(--secondary);
    color: var(--text-primary);
    font-weight: var(--fw-md);
    border: 2px solid var(--main);
    border-radius: 5px;
    font-size: 14px;
    padding: 4px 25px;
}

.backbtn {
    background: transparent;
    color: var(--main);
    font-weight: var(--fw-md);
    border: none;
    border-radius: none;
    font-size: 14px;
    padding: 4px;
    transition: var(--transition);
}

.iconbtn {
    background: transparent;
    color: var(--text-primary);
    font-weight: var(--fw-md);
    border: none;
    font-size: 14px;
    cursor: pointer;
    transition: var(--transition);
}

.resetbtn {
    background: var(--secondary);
    color: var(--text-primary);
    font-weight: var(--fw-md);
    border: 2px solid var(--gray);
    border-radius: 5px;
    font-size: 14px;
    padding: 4px 25px;
}

.formbtn-sm {
    background-color: var(--secondary);
    color: var(--text-primary);
    font-weight: var(--fw-md);
    border: 2px solid var(--main);
    border-radius: 5px;
    font-size: 12px;
    padding: 3px 15px;
}

.resetbtn-sm {
    background: var(--secondary);
    color: var(--text-primary);
    font-weight: var(--fw-md);
    border: 2px solid var(--gray);
    border-radius: 5px;
    font-size: 12px;
    padding: 3px 15px;
}

.tabsbtn {
    background: transparent;
    color: var(--main);
    font-weight: var(--fw-md);
    border: none !important;
    border-bottom: 2px solid transparent !important;
    font-size: 14px;
    transition: var(--transition);
}

.removebtn {
    background: var(--red);
    color: var(--secondary);
    border: 2px solid var(--red);
    border-radius: 50%;
    width: 20px;
    height: 20px;
    font-size: 12px;
    text-align: center;
    cursor: pointer;
    transition: var(--transition);
}

/* Box Shadow / Transition */
.listbtn,
.formbtn,
.resetbtn,
.resetbtn,
.formbtn-sm,
.resetbtn-sm {
    transition: var(--transition);
    box-shadow: var(--box-shadow);
}

/* Button Hover */
.loginbtn:hover {
    transform: translateY(-2px);
}

.loginbtn:hover::before {
    opacity: 1;
}

.asidebtn-active,
.asidebtn:hover {
    background-color: var(--bg);
    color: var(--text-primary);
    border: 2px solid var(--main);
}

.formbtn-sm:hover,
.listbtn:hover,
.listbtn.active,
.formbtn:hover {
    background-color: var(--main);
    color: var(--secondary);
}

.backbtn:hover {
    color: var(--text-secondary);
}

.iconbtn:hover {
    color: var(--main);
}

.resetbtn-sm:hover,
.resetbtn:hover {
    background-color: var(--primary);
    color: var(--secondary);
}

.tabsbtn.active,
.tabsbtn:hover {
    color: var(--text-primary);
    border-bottom: 2px solid var(--main) !important;
    font-weight: var(--fw-md) !important;
}

.removebtn:hover {
    background: var(--secondary);
    color: var(--red);
}